Skip to content

Commit d1657d7

Browse files
nvuillamitayoxmegalinter-boteyalatox
authored
Setup Release Management (#28)
* Initial commit * Run unit tests in CI * Change workflow file name * Run lint and build in CI * Rename workflow file to build * Load configuration from ENV variables using dotenv * Add a note about .env file in the readme * Fix production build not loading configuration properly * Update README.md Update .env variable info * Fix jest and cypress types collision * Fix typo in readme * Dockerfile + docker-compose + Github Actions (#8) * Dockerfile init * Multistage * dev version * Copy node_modules * Working docker-compose v0 * github job perms * Docker-compose for different purposes * Deploy Beta --------- Co-authored-by: Nicolas Vuillamy <[email protected]> * Display megalinter errors to the user * Remove unused code * Move form loader to the button * Add file upload loader * Fix file upload form transition * Fix highlight in light mode * Adding language detection for snippet code * Add back to homepage button * Add file uploader unit tests * Breakdown language-detection * Simplify use of language detection * Move reolve icon * Rename name map file * Move resolveId and test * Unit test language detection * toBeUndefined(); * Small UI fixes * Export issues to CSV * Online documentation for GitHub Pages (#17) * Doc v0 * Change npm i to npm ci * v0.1 * More doc :) * links to ML & OX * fix doc --------- Co-authored-by: Nicolas Vuillamy <[email protected]> Co-authored-by: itayox <[email protected]> * MegaLinter setup (#18) * MegaLinter setup * Fixes * Disable pre-commit handled linters * Use Cupcake flavor * config * Fixes * cspell + semver upgrade * Config * Upgrade ML to 7.2.1 * lycheeignore * disable kics & csslint + config trivy * checkov + jscpd * Disable temporary some linters --------- Co-authored-by: Nicolas Vuillamy <[email protected]> * Fix jscpd config (#19) Co-authored-by: Nicolas Vuillamy <[email protected]> * HTTP server breakdown * Fix typescript error * Docs + CNAME * Previous version display * Add retry mechanism * Update debugging information * Enable re-scanning * Remove text transform * Migrate turbo-repo * Fix switching between reports * Fix button not clickable * Reset report store on init * Replace Megalinter with MegaLinter label (#24) * Replace Megalinter with MegaLinter label * Inline disable devskim false positive --------- Co-authored-by: Nicolas Vuillamy <[email protected]> * Fix footer text * Move api routes under /api and serve index.html for all GET requests * http unit tests * Add the test file * Add static folder path to unit test * Release management * Move parseSBOM * Fix unit test * Increase resource value text limit to 600px * Images versions + README * cspell * Aply ML fixes * Quick Start * SBOM for python * SBOM for python * SBOM for python #2 * Update contributing examples with iconPngUrl * Use megalinter api beta * [MegaLinter] Apply linters fixes --------- Co-authored-by: Itay <[email protected]> Co-authored-by: itayox <[email protected]> Co-authored-by: Nicolas Vuillamy <[email protected]> Co-authored-by: eyalatox <[email protected]> Co-authored-by: Eyal Paz <[email protected]> Co-authored-by: nvuillam <[email protected]>
1 parent f0826a0 commit d1657d7

File tree

190 files changed

+23811
-2
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

190 files changed

+23811
-2
lines changed

.dockerignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
.github
2+
docs
3+
redis
4+
server-files

.env

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# MEGALINTER
2+
MEGALINTER_ANALYSIS_URL=http://127.0.0.1:8000/analysis
3+
MEGALINTER_UPLOAD_URL=http://127.0.0.1:8000/upload-file
4+
MEGALINTER_REDIS_URL=redis://127.0.0.1:6379
5+
MEGALINTER_REDIS_CHANNEL=megalinter:pubsub:<request-id>
6+
7+
# BACKEND
8+
CODETOTAL_HTTP_PORT=8081
9+
CODETOTAL_HTTP_HOST=127.0.0.1
10+
CODETOTAL_WS_PORT=8080
11+
CODETOTAL_WS_HOST=127.0.0.1
12+
DEBUG_MODULES=actions,megalinter,stores,transport
13+
14+
# FRONTEND
15+
CODETOTAL_UPLOAD_FILE_LIMIT_BYTES=10000000
16+

.eslintrc.cjs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
module.exports = {
2+
env: { browser: true, es2020: true },
3+
extends: [
4+
'eslint:recommended',
5+
'plugin:@typescript-eslint/recommended',
6+
'plugin:react-hooks/recommended',
7+
],
8+
parser: '@typescript-eslint/parser',
9+
parserOptions: { ecmaVersion: 'latest', sourceType: 'module' },
10+
plugins: ['react-refresh'],
11+
rules: {
12+
'react-refresh/only-export-components': 'warn',
13+
},
14+
}

.github/linters/.checkov.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# You can see all available properties here: https://github.com/bridgecrewio/checkov#configuration-using-a-config-file
2+
quiet: true
3+
skip-check:
4+
- CKV_DOCKER_2
5+
- CKV_DOCKER_3
6+
- CKV2_GHA_1

.github/linters/.cspell.json

Lines changed: 246 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,246 @@
1+
{
2+
"ignorePaths": [
3+
"**/node_modules/**",
4+
"**/vscode-extension/**",
5+
"**/.git/**",
6+
"**/.pnpm-lock.json",
7+
".vscode",
8+
"megalinter",
9+
"package-lock.json",
10+
"report"
11+
],
12+
"language": "en",
13+
"noConfigSearch": true,
14+
"version": "0.2",
15+
"words": [
16+
"ABAP",
17+
"ABNF",
18+
"Bisoni",
19+
"Brainfuck",
20+
"Buildx",
21+
"CODETOTAL",
22+
"Cpcdos",
23+
"Crmsh",
24+
"Cypher",
25+
"DEVSKIM",
26+
"DJLINT",
27+
"DUSTILOCK",
28+
"Dafny",
29+
"EBNF",
30+
"Eyal",
31+
"Flix",
32+
"GITLEAKS",
33+
"GSQL",
34+
"Golo",
35+
"HTMLHINT",
36+
"Haml",
37+
"Haxe",
38+
"IRPF",
39+
"Itay",
40+
"Jolie",
41+
"KICS",
42+
"LDIF",
43+
"Laravel",
44+
"MLIR",
45+
"Mathematica",
46+
"Mojolicious",
47+
"Moonscript",
48+
"Motoko",
49+
"NSIS",
50+
"Oxygene",
51+
"Proto",
52+
"ROOTPATH",
53+
"Rebol",
54+
"Roboconf",
55+
"SARIF",
56+
"SEMGREP",
57+
"SHELLCHECK",
58+
"SHFMT",
59+
"SYFT",
60+
"Sarif",
61+
"Satoshi",
62+
"Scilab",
63+
"Smali",
64+
"Stata",
65+
"TRIVY",
66+
"TRUFFLEHOG",
67+
"Toit",
68+
"Trivy",
69+
"VHDL",
70+
"Vala",
71+
"Verilog",
72+
"Vuillamy",
73+
"Zephir",
74+
"abap",
75+
"abnf",
76+
"accesslog",
77+
"actionscript",
78+
"adoc",
79+
"afpmcmb",
80+
"angelscript",
81+
"apacheconf",
82+
"applescript",
83+
"armasm",
84+
"aspectj",
85+
"autofix",
86+
"autohotkey",
87+
"autoit",
88+
"avrasm",
89+
"axapta",
90+
"bbcode",
91+
"bgcolor",
92+
"brainfuck",
93+
"buildx",
94+
"bvyv",
95+
"capnp",
96+
"capnproto",
97+
"cbdd",
98+
"cffi",
99+
"chpl",
100+
"cmdline",
101+
"codetotal",
102+
"colorama",
103+
"countup",
104+
"craftcms",
105+
"crmsh",
106+
"cypher",
107+
"dafny",
108+
"dateutil",
109+
"devicon",
110+
"devskim",
111+
"dsconfig",
112+
"dustilock",
113+
"ebnf",
114+
"extrahead",
115+
"filesize",
116+
"flix",
117+
"fontawesome",
118+
"gcode",
119+
"gdscript",
120+
"gitleaks",
121+
"glightbox",
122+
"glsl",
123+
"golo",
124+
"gololang",
125+
"grype",
126+
"gsql",
127+
"gtag",
128+
"hadolint",
129+
"haml",
130+
"haxe",
131+
"hlsl",
132+
"htmlbars",
133+
"hylang",
134+
"iecst",
135+
"irpf",
136+
"itsdangerous",
137+
"javascripts",
138+
"jolie",
139+
"kaos",
140+
"kics",
141+
"kubeconform",
142+
"kubescape",
143+
"languagedetection",
144+
"lassoscript",
145+
"ldif",
146+
"livecodeserver",
147+
"livescript",
148+
"lookml",
149+
"lycheeignore",
150+
"markupsafe",
151+
"materialx",
152+
"mathematica",
153+
"mawk",
154+
"megalinter",
155+
"mipsasm",
156+
"mirc",
157+
"mkdocs",
158+
"mkdown",
159+
"mlir",
160+
"mojolicious",
161+
"moonscript",
162+
"motoko",
163+
"nawk",
164+
"nginxconf",
165+
"njsproj",
166+
"nodenext",
167+
"nsis",
168+
"ntvs",
169+
"numpy",
170+
"nvuillam",
171+
"objc",
172+
"opencontainers",
173+
"openscad",
174+
"osascript",
175+
"oxsecurity",
176+
"oxygene",
177+
"paramiko",
178+
"pcmk",
179+
"pgsql",
180+
"pinescript",
181+
"podspec",
182+
"postbuild",
183+
"precodetotal",
184+
"prestart",
185+
"proto",
186+
"protobuf",
187+
"pycon",
188+
"pycparser",
189+
"pymdown",
190+
"pymdownx",
191+
"pynacl",
192+
"pytz",
193+
"pyyaml",
194+
"qsharp",
195+
"quickfixes",
196+
"rapidfuzz",
197+
"reasonml",
198+
"rebol",
199+
"redbol",
200+
"riscript",
201+
"ruleslanguage",
202+
"sarif",
203+
"scilab",
204+
"sdfsdfsdf",
205+
"semgrep",
206+
"shellcheck",
207+
"shexc",
208+
"shfmt",
209+
"smali",
210+
"specfile",
211+
"ssdeep",
212+
"stanfuncs",
213+
"stata",
214+
"stefanzweifel",
215+
"styl",
216+
"stylelint",
217+
"syft",
218+
"terragrunt",
219+
"terrascan",
220+
"tflint",
221+
"toit",
222+
"trivy",
223+
"trivyignore",
224+
"trufflehog",
225+
"tsbuildinfo",
226+
"tsql",
227+
"twemoji",
228+
"typia",
229+
"tzdata",
230+
"uvicorn",
231+
"vala",
232+
"vbnet",
233+
"vbscript",
234+
"venv",
235+
"verilog",
236+
"vhdl",
237+
"vuln",
238+
"werkzeug",
239+
"xquery",
240+
"xsharp",
241+
"xtlang",
242+
"zenscript",
243+
"zephir",
244+
"zustand"
245+
]
246+
}

.github/linters/.gitleaks.toml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
2+
title = "gitleaks config"
3+
4+
[extend]
5+
# useDefault will extend the base configuration with the default gitleaks config:
6+
# https://github.com/zricethezav/gitleaks/blob/master/config/gitleaks.toml
7+
useDefault = true
8+
9+
[allowlist]
10+
description = "Allowlisted files"
11+
paths = [
12+
'''.automation/test''',
13+
'''megalinter-reports''',
14+
'''.github/linters''',
15+
'''node_modules''',
16+
'''.mypy_cache''',
17+
'''(.*?)gitleaks\.toml$''',
18+
'''(snippets-mocks.ts|language-resolve-id.test.ts|language-detector.ts|submit-snippet.ts)$''',
19+
'''(.*?)(png|jpg|gif|doc|docx|pdf|bin|xls|pyc|zip)$''',
20+
'''(go.mod|go.sum)$''']
21+

.github/linters/.jscpd.json

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
{
2+
"threshold": 0,
3+
"reporters": ["html", "markdown"],
4+
"ignore": [
5+
"**/node_modules/**",
6+
"**/.git/**",
7+
"**/.rbenv/**",
8+
"**/.venv/**",
9+
"**/*cache*/**",
10+
"**/.automation/**",
11+
"**/.github/**",
12+
"**/.idea/**",
13+
"**/docs/**",
14+
"**/*.yml",
15+
"**/CHANGELOG.md",
16+
"**/licenses/*.md",
17+
"**/docker-compose-megalinter.yml",
18+
"**/docker-compose-local.yml",
19+
"**/docker-compose.yml",
20+
"**/AppThemeProvider.tsx",
21+
"**/parse-linter-status.test.ts",
22+
"**/parse-megalinter-complete.test.ts"
23+
]
24+
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: "DOC - Build and deploy - main"
2+
on:
3+
push:
4+
branches:
5+
- main
6+
- docs
7+
paths:
8+
- "docs/**"
9+
10+
concurrency:
11+
group: ${{ github.ref }}-${{ github.workflow }}
12+
cancel-in-progress: true
13+
14+
jobs:
15+
deploy:
16+
runs-on: ubuntu-latest
17+
permissions:
18+
contents: write
19+
if: github.repository == 'oxsecurity/codetotal'
20+
steps:
21+
- uses: actions/checkout@v3
22+
with:
23+
fetch-depth: 0
24+
- uses: actions/[email protected]
25+
with:
26+
python-version: 3.10.4
27+
- run: pip install --upgrade markdown==3.3.7 mkdocs-material pymdown-extensions==9.11 mkdocs-glightbox==0.3.2 mdx_truly_sane_lists
28+
- run: |
29+
git config --global user.name megalinter-bot
30+
git config --global user.email [email protected]
31+
- run: mkdocs gh-deploy --force

0 commit comments

Comments
 (0)