mirror of
				https://github.com/theoludwig/theoludwig.git
				synced 2025-10-14 20:23:25 +02:00 
			
		
		
		
	ci: multiple workflows instead of one
This commit is contained in:
		
							
								
								
									
										188
									
								
								.github/workflows/Divlo.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										188
									
								
								.github/workflows/Divlo.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,188 +0,0 @@ | ||||
| name: 'Divlo' | ||||
|  | ||||
| on: | ||||
|   push: | ||||
|     branches: [master, develop] | ||||
|   pull_request: | ||||
|     branches: [master, develop] | ||||
|  | ||||
| jobs: | ||||
|   analyze: | ||||
|     runs-on: 'ubuntu-latest' | ||||
|  | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         language: ['javascript'] | ||||
|  | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2.4.0' | ||||
|  | ||||
|       - name: 'Initialize CodeQL' | ||||
|         uses: 'github/codeql-action/init@v1' | ||||
|         with: | ||||
|           languages: ${{ matrix.language }} | ||||
|  | ||||
|       - name: 'Perform CodeQL Analysis' | ||||
|         uses: 'github/codeql-action/analyze@v1' | ||||
|  | ||||
|   build: | ||||
|     runs-on: 'ubuntu-latest' | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2.4.0' | ||||
|  | ||||
|       - name: 'Use Node.js' | ||||
|         uses: 'actions/setup-node@v2.5.1' | ||||
|         with: | ||||
|           node-version: '16.x' | ||||
|           cache: 'npm' | ||||
|  | ||||
|       - name: 'Install' | ||||
|         run: 'npm install' | ||||
|  | ||||
|       - name: 'Build' | ||||
|         run: 'npm run build' | ||||
|  | ||||
|   lint: | ||||
|     runs-on: 'ubuntu-latest' | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2.4.0' | ||||
|  | ||||
|       - name: 'Use Node.js' | ||||
|         uses: 'actions/setup-node@v2.5.1' | ||||
|         with: | ||||
|           node-version: '16.x' | ||||
|           cache: 'npm' | ||||
|  | ||||
|       - name: 'Install' | ||||
|         run: 'npm install' | ||||
|  | ||||
|       - name: 'lint:commit' | ||||
|         run: 'npm run lint:commit -- --to "${{ github.sha }}"' | ||||
|  | ||||
|       - name: 'lint:editorconfig' | ||||
|         run: 'npm run lint:editorconfig' | ||||
|  | ||||
|       - name: 'lint:markdown' | ||||
|         run: 'npm run lint:markdown' | ||||
|  | ||||
|       - name: 'lint:typescript' | ||||
|         run: 'npm run lint:typescript' | ||||
|  | ||||
|       - name: 'lint:prettier' | ||||
|         run: 'npm run lint:prettier' | ||||
|  | ||||
|       - name: 'resume:validate' | ||||
|         run: 'npm run resume:validate' | ||||
|  | ||||
|       - name: 'lint:dotenv' | ||||
|         uses: 'dotenv-linter/action-dotenv-linter@v2' | ||||
|         with: | ||||
|           github_token: ${{ secrets.github_token }} | ||||
|  | ||||
|       - name: 'lint:docker' | ||||
|         uses: 'hadolint/hadolint-action@v1.6.0' | ||||
|         with: | ||||
|           dockerfile: './Dockerfile' | ||||
|  | ||||
|   test-unit: | ||||
|     runs-on: 'ubuntu-latest' | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2.4.0' | ||||
|  | ||||
|       - name: 'Use Node.js' | ||||
|         uses: 'actions/setup-node@v2.5.1' | ||||
|         with: | ||||
|           node-version: '16.x' | ||||
|           cache: 'npm' | ||||
|  | ||||
|       - name: 'Install' | ||||
|         run: 'npm install' | ||||
|  | ||||
|       - name: 'Unit Test' | ||||
|         run: 'npm run test:unit' | ||||
|  | ||||
|   test-lighthouse: | ||||
|     runs-on: 'ubuntu-latest' | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2.4.0' | ||||
|  | ||||
|       - name: 'Use Node.js' | ||||
|         uses: 'actions/setup-node@v2.5.1' | ||||
|         with: | ||||
|           node-version: '16.x' | ||||
|           cache: 'npm' | ||||
|  | ||||
|       - name: 'Install' | ||||
|         run: 'npm install' | ||||
|  | ||||
|       - name: 'Build' | ||||
|         run: 'npm run build' | ||||
|  | ||||
|       - name: 'html-w3c-validator' | ||||
|         run: 'npm run test:html-w3c-validator' | ||||
|  | ||||
|       - name: 'Lighthouse' | ||||
|         run: 'npm run test:lighthouse' | ||||
|         env: | ||||
|           LHCI_GITHUB_APP_TOKEN: ${{ secrets.LHCI_GITHUB_APP_TOKEN }} | ||||
|  | ||||
|   test-e2e: | ||||
|     runs-on: 'ubuntu-latest' | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2.4.0' | ||||
|  | ||||
|       - name: 'Use Node.js' | ||||
|         uses: 'actions/setup-node@v2.5.1' | ||||
|         with: | ||||
|           node-version: '16.x' | ||||
|           cache: 'npm' | ||||
|  | ||||
|       - name: 'Install' | ||||
|         run: 'npm install' | ||||
|  | ||||
|       - name: 'Build' | ||||
|         run: 'npm run build' | ||||
|  | ||||
|       - name: 'End To End (e2e) Test' | ||||
|         run: 'npm run test:e2e' | ||||
|  | ||||
|   release: | ||||
|     if: github.ref == 'refs/heads/master' && github.event_name == 'push' | ||||
|     needs: [analyze, build, lint, test-unit, test-lighthouse, test-e2e] | ||||
|     runs-on: 'ubuntu-latest' | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2.4.0' | ||||
|         with: | ||||
|           fetch-depth: 0 | ||||
|           persist-credentials: false | ||||
|  | ||||
|       - name: 'Import GPG key' | ||||
|         uses: 'crazy-max/ghaction-import-gpg@v4' | ||||
|         with: | ||||
|           gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} | ||||
|           git_user_signingkey: true | ||||
|           git_commit_gpgsign: true | ||||
|  | ||||
|       - name: 'Use Node.js' | ||||
|         uses: 'actions/setup-node@v2.5.1' | ||||
|         with: | ||||
|           node-version: '16.x' | ||||
|           cache: 'npm' | ||||
|  | ||||
|       - name: 'Install' | ||||
|         run: 'npm install' | ||||
|  | ||||
|       - name: 'Release' | ||||
|         run: 'npm run release' | ||||
|         env: | ||||
|           GH_TOKEN: ${{ secrets.GH_TOKEN }} | ||||
|           GIT_COMMITTER_NAME: ${{ secrets.GIT_NAME }} | ||||
|           GIT_COMMITTER_EMAIL: ${{ secrets.GIT_EMAIL }} | ||||
|  | ||||
|       - name: 'Deploy to Vercel' | ||||
|         run: 'npm run deploy -- --token="${VERCEL_TOKEN}" --prod' | ||||
|         env: | ||||
|           VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }} | ||||
|           VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }} | ||||
|           VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }} | ||||
							
								
								
									
										27
									
								
								.github/workflows/analyze.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								.github/workflows/analyze.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,27 @@ | ||||
| name: 'Analyze' | ||||
|  | ||||
| on: | ||||
|   push: | ||||
|     branches: [develop] | ||||
|   pull_request: | ||||
|     branches: [master, develop] | ||||
|  | ||||
| jobs: | ||||
|   analyze: | ||||
|     runs-on: 'ubuntu-latest' | ||||
|  | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         language: ['javascript'] | ||||
|  | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2.4.0' | ||||
|  | ||||
|       - name: 'Initialize CodeQL' | ||||
|         uses: 'github/codeql-action/init@v1' | ||||
|         with: | ||||
|           languages: ${{ matrix.language }} | ||||
|  | ||||
|       - name: 'Perform CodeQL Analysis' | ||||
|         uses: 'github/codeql-action/analyze@v1' | ||||
							
								
								
									
										25
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,25 @@ | ||||
| name: 'Build' | ||||
|  | ||||
| on: | ||||
|   push: | ||||
|     branches: [develop] | ||||
|   pull_request: | ||||
|     branches: [master, develop] | ||||
|  | ||||
| jobs: | ||||
|   build: | ||||
|     runs-on: 'ubuntu-latest' | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2' | ||||
|  | ||||
|       - name: 'Use Node.js' | ||||
|         uses: 'actions/setup-node@v2.5.1' | ||||
|         with: | ||||
|           node-version: '16.x' | ||||
|           cache: 'npm' | ||||
|  | ||||
|       - name: 'Install' | ||||
|         run: 'npm install' | ||||
|  | ||||
|       - name: 'Build' | ||||
|         run: 'npm run build' | ||||
							
								
								
									
										50
									
								
								.github/workflows/lint.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								.github/workflows/lint.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,50 @@ | ||||
| name: 'Lint' | ||||
|  | ||||
| on: | ||||
|   push: | ||||
|     branches: [develop] | ||||
|   pull_request: | ||||
|     branches: [master, develop] | ||||
|  | ||||
| jobs: | ||||
|   lint: | ||||
|     runs-on: 'ubuntu-latest' | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2' | ||||
|  | ||||
|       - name: 'Use Node.js' | ||||
|         uses: 'actions/setup-node@v2.5.1' | ||||
|         with: | ||||
|           node-version: '16.x' | ||||
|           cache: 'npm' | ||||
|  | ||||
|       - name: 'Install' | ||||
|         run: 'npm install' | ||||
|  | ||||
|       - name: 'lint:commit' | ||||
|         run: 'npm run lint:commit -- --to "${{ github.sha }}"' | ||||
|  | ||||
|       - name: 'lint:editorconfig' | ||||
|         run: 'npm run lint:editorconfig' | ||||
|  | ||||
|       - name: 'lint:markdown' | ||||
|         run: 'npm run lint:markdown' | ||||
|  | ||||
|       - name: 'lint:typescript' | ||||
|         run: 'npm run lint:typescript' | ||||
|  | ||||
|       - name: 'lint:prettier' | ||||
|         run: 'npm run lint:prettier' | ||||
|  | ||||
|       - name: 'resume:validate' | ||||
|         run: 'npm run resume:validate' | ||||
|  | ||||
|       - name: 'lint:dotenv' | ||||
|         uses: 'dotenv-linter/action-dotenv-linter@v2' | ||||
|         with: | ||||
|           github_token: ${{ secrets.github_token }} | ||||
|  | ||||
|       - name: 'lint:docker' | ||||
|         uses: 'hadolint/hadolint-action@v1.6.0' | ||||
|         with: | ||||
|           dockerfile: './Dockerfile' | ||||
							
								
								
									
										44
									
								
								.github/workflows/release.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								.github/workflows/release.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,44 @@ | ||||
| name: 'Release' | ||||
|  | ||||
| on: | ||||
|   push: | ||||
|     branches: [master] | ||||
|  | ||||
| jobs: | ||||
|   release: | ||||
|     runs-on: 'ubuntu-latest' | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2.4.0' | ||||
|         with: | ||||
|           fetch-depth: 0 | ||||
|           persist-credentials: false | ||||
|  | ||||
|       - name: 'Import GPG key' | ||||
|         uses: 'crazy-max/ghaction-import-gpg@v4' | ||||
|         with: | ||||
|           gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} | ||||
|           git_user_signingkey: true | ||||
|           git_commit_gpgsign: true | ||||
|  | ||||
|       - name: 'Use Node.js' | ||||
|         uses: 'actions/setup-node@v2.4.0' | ||||
|         with: | ||||
|           node-version: '16.x' | ||||
|           cache: 'npm' | ||||
|  | ||||
|       - name: 'Install' | ||||
|         run: 'npm install' | ||||
|  | ||||
|       - name: 'Release' | ||||
|         run: 'npm run release' | ||||
|         env: | ||||
|           GH_TOKEN: ${{ secrets.GH_TOKEN }} | ||||
|           GIT_COMMITTER_NAME: ${{ secrets.GIT_NAME }} | ||||
|           GIT_COMMITTER_EMAIL: ${{ secrets.GIT_EMAIL }} | ||||
|  | ||||
|       - name: 'Deploy to Vercel' | ||||
|         run: 'npm run deploy -- --token="${VERCEL_TOKEN}" --prod' | ||||
|         env: | ||||
|           VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }} | ||||
|           VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }} | ||||
|           VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }} | ||||
							
								
								
									
										70
									
								
								.github/workflows/test.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								.github/workflows/test.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,70 @@ | ||||
| name: 'Test' | ||||
|  | ||||
| on: | ||||
|   push: | ||||
|     branches: [develop] | ||||
|   pull_request: | ||||
|     branches: [master, develop] | ||||
|  | ||||
| jobs: | ||||
|   test-unit: | ||||
|     runs-on: 'ubuntu-latest' | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2.4.0' | ||||
|  | ||||
|       - name: 'Use Node.js' | ||||
|         uses: 'actions/setup-node@v2.5.1' | ||||
|         with: | ||||
|           node-version: '16.x' | ||||
|           cache: 'npm' | ||||
|  | ||||
|       - name: 'Install' | ||||
|         run: 'npm install' | ||||
|  | ||||
|       - name: 'Unit Test' | ||||
|         run: 'npm run test:unit' | ||||
|  | ||||
|   test-lighthouse: | ||||
|     runs-on: 'ubuntu-latest' | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2.4.0' | ||||
|  | ||||
|       - name: 'Use Node.js' | ||||
|         uses: 'actions/setup-node@v2.5.1' | ||||
|         with: | ||||
|           node-version: '16.x' | ||||
|           cache: 'npm' | ||||
|  | ||||
|       - name: 'Install' | ||||
|         run: 'npm install' | ||||
|  | ||||
|       - name: 'Build' | ||||
|         run: 'npm run build' | ||||
|  | ||||
|       - name: 'html-w3c-validator' | ||||
|         run: 'npm run test:html-w3c-validator' | ||||
|  | ||||
|       - name: 'Lighthouse' | ||||
|         run: 'npm run test:lighthouse' | ||||
|         env: | ||||
|           LHCI_GITHUB_APP_TOKEN: ${{ secrets.LHCI_GITHUB_APP_TOKEN }} | ||||
|  | ||||
|   test-e2e: | ||||
|     runs-on: 'ubuntu-latest' | ||||
|     steps: | ||||
|       - uses: 'actions/checkout@v2.4.0' | ||||
|  | ||||
|       - name: 'Use Node.js' | ||||
|         uses: 'actions/setup-node@v2.5.1' | ||||
|         with: | ||||
|           node-version: '16.x' | ||||
|           cache: 'npm' | ||||
|  | ||||
|       - name: 'Install' | ||||
|         run: 'npm install' | ||||
|  | ||||
|       - name: 'Build' | ||||
|         run: 'npm run build' | ||||
|  | ||||
|       - name: 'End To End (e2e) Test' | ||||
|         run: 'npm run test:e2e' | ||||
| @@ -30,6 +30,7 @@ | ||||
|     [ | ||||
|       "@saithodev/semantic-release-backmerge", | ||||
|       { | ||||
|         "branches": [{ "from": "master", "to": "develop" }], | ||||
|         "backmergeStrategy": "merge" | ||||
|       } | ||||
|     ] | ||||
|   | ||||
| @@ -5,7 +5,6 @@ | ||||
| </p> | ||||
|  | ||||
| <p align="center"> | ||||
|   <a href="https://github.com/Divlo/Divlo/actions/workflows/Divlo.yml"><img src="https://github.com/Divlo/Divlo/actions/workflows/Divlo.yml/badge.svg?branch=master" alt="Divlo's CI" /></a> | ||||
|   <a href="https://github.com/Divlo"><img alt="GitHub" src="https://img.shields.io/badge/-GitHub-5A5A5A?style=flat&labelColor=5A5A5A&logo=github&logoColor=white"/></a> | ||||
|   <a href="https://gitlab.com/Divlo"><img alt="GitLab" src="https://img.shields.io/badge/-GitLab-303030?style=flat&labelColor=303030&logo=gitlab&logoColor=white"/></a> | ||||
|   <a href="https://www.npmjs.com/~divlo"><img alt="npm" src="https://img.shields.io/badge/-npm-c4302b?style=flat&labelColor=c4302b&logo=npm&logoColor=white"/></a> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user