mirror of
				https://git.mirrors.martin98.com/https://github.com/actions/setup-python
				synced 2025-10-31 13:41:06 +08:00 
			
		
		
		
	Update action to use reusable workflows (#569)
* Update workflows to use reusable-workflows * Update licensed.yml * Update workflows * Add links to reusable workflows * Update action to use reusable-workflows repo * Fix review points
This commit is contained in:
		
							parent
							
								
									206e984b94
								
							
						
					
					
						commit
						c3e033939c
					
				
							
								
								
									
										15
									
								
								.github/workflows/basic-validation.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								.github/workflows/basic-validation.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,15 @@ | |||||||
|  | name: Basic validation | ||||||
|  | 
 | ||||||
|  | on: | ||||||
|  |   push: | ||||||
|  |     branches: | ||||||
|  |       - main | ||||||
|  |     paths-ignore: | ||||||
|  |       - '**.md' | ||||||
|  |   pull_request: | ||||||
|  |     paths-ignore: | ||||||
|  |       - '**.md' | ||||||
|  | jobs: | ||||||
|  |   call-basic-validation: | ||||||
|  |     name: Basic validation | ||||||
|  |     uses: actions/reusable-workflows/.github/workflows/basic-validation.yml@main | ||||||
							
								
								
									
										41
									
								
								.github/workflows/check-dist.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										41
									
								
								.github/workflows/check-dist.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,8 +1,3 @@ | |||||||
| # `dist/index.js` is a special file in Actions. |  | ||||||
| # When you reference an action with `uses:` in a workflow, |  | ||||||
| # `index.js` is the code that will run. |  | ||||||
| # For our project, we generate this file through a build process from other source files. |  | ||||||
| # We need to make sure the checked-in `index.js` actually matches what we expect it to be. |  | ||||||
| name: Check dist/ | name: Check dist/ | ||||||
| 
 | 
 | ||||||
| on: | on: | ||||||
| @ -17,36 +12,6 @@ on: | |||||||
|   workflow_dispatch: |   workflow_dispatch: | ||||||
| 
 | 
 | ||||||
| jobs: | jobs: | ||||||
|   check-dist: |   call-check-dist: | ||||||
|     runs-on: ubuntu-latest |     name: Check dist/ | ||||||
| 
 |     uses: actions/reusable-workflows/.github/workflows/check-dist.yml@main | ||||||
|     steps: |  | ||||||
|       - uses: actions/checkout@v3 |  | ||||||
| 
 |  | ||||||
|       - name: Set Node.js 16.x |  | ||||||
|         uses: actions/setup-node@v3 |  | ||||||
|         with: |  | ||||||
|           node-version: 16.x |  | ||||||
|           cache: npm |  | ||||||
| 
 |  | ||||||
|       - name: Install dependencies |  | ||||||
|         run: npm ci |  | ||||||
| 
 |  | ||||||
|       - name: Rebuild the dist/ directory |  | ||||||
|         run: npm run build |  | ||||||
| 
 |  | ||||||
|       - name: Compare the expected and actual dist/ directories |  | ||||||
|         run: | |  | ||||||
|           if [ "$(git diff --ignore-space-at-eol dist/ | wc -l)" -gt "0" ]; then |  | ||||||
|             echo "Detected uncommitted changes after build.  See status below:" |  | ||||||
|             git diff |  | ||||||
|             exit 1 |  | ||||||
|           fi |  | ||||||
|         id: diff |  | ||||||
| 
 |  | ||||||
|       # If index.js was different than expected, upload the expected version as an artifact |  | ||||||
|       - uses: actions/upload-artifact@v3 |  | ||||||
|         if: ${{ failure() && steps.diff.conclusion == 'failure' }} |  | ||||||
|         with: |  | ||||||
|           name: dist |  | ||||||
|           path: dist/ |  | ||||||
							
								
								
									
										44
									
								
								.github/workflows/codeql-analysis.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										44
									
								
								.github/workflows/codeql-analysis.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,47 +1,13 @@ | |||||||
| name: "Code scanning - action" | name: CodeQL analysis | ||||||
| 
 | 
 | ||||||
| on: | on: | ||||||
|   push: |   push: | ||||||
|     branches: [ 'main' ] |     branches: [ 'main' ] | ||||||
|   pull_request: |   pull_request: | ||||||
|   schedule: |   schedule: | ||||||
|     - cron: '25 3 * * 5' |     - cron: '0 3 * * 0' | ||||||
| 
 | 
 | ||||||
| jobs: | jobs: | ||||||
|   CodeQL-Build: |   call-codeQL-analysis: | ||||||
| 
 |     name: CodeQL analysis  | ||||||
|     strategy: |     uses: actions/reusable-workflows/.github/workflows/codeql-analysis.yml@main | ||||||
|       fail-fast: false |  | ||||||
| 
 |  | ||||||
|     # CodeQL runs on ubuntu-latest and windows-latest |  | ||||||
|     runs-on: ubuntu-latest |  | ||||||
| 
 |  | ||||||
|     steps: |  | ||||||
|     - name: Checkout repository |  | ||||||
|       uses: actions/checkout@v3 |  | ||||||
| 
 |  | ||||||
|     # Initializes the CodeQL tools for scanning. |  | ||||||
|     - name: Initialize CodeQL |  | ||||||
|       uses: github/codeql-action/init@v2 |  | ||||||
|       # Override language selection by uncommenting this and choosing your languages |  | ||||||
|       # with: |  | ||||||
|       #   languages: go, javascript, csharp, python, cpp, java |  | ||||||
| 
 |  | ||||||
|     # Autobuild attempts to build any compiled languages  (C/C++, C#, or Java). |  | ||||||
|     # If this step fails, then you should remove it and run the build manually (see below) |  | ||||||
|     - name: Autobuild |  | ||||||
|       uses: github/codeql-action/autobuild@v2 |  | ||||||
| 
 |  | ||||||
|     # ℹ️ Command-line programs to run using the OS shell. |  | ||||||
|     # 📚 https://git.io/JvXDl |  | ||||||
| 
 |  | ||||||
|     # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines |  | ||||||
|     #    and modify them (or add more) to build your code if your project |  | ||||||
|     #    uses a compiled language |  | ||||||
| 
 |  | ||||||
|     #- run: | |  | ||||||
|     #   make bootstrap |  | ||||||
|     #   make release |  | ||||||
| 
 |  | ||||||
|     - name: Perform CodeQL Analysis |  | ||||||
|       uses: github/codeql-action/analyze@v2 |  | ||||||
| @ -1,4 +1,5 @@ | |||||||
| name: Main workflow | name: e2e tests | ||||||
|  | 
 | ||||||
| on: | on: | ||||||
|   push: |   push: | ||||||
|     branches: |     branches: | ||||||
| @ -8,9 +9,10 @@ on: | |||||||
|   pull_request: |   pull_request: | ||||||
|     paths-ignore: |     paths-ignore: | ||||||
|       - '**.md' |       - '**.md' | ||||||
|  |        | ||||||
| jobs: | jobs: | ||||||
|   run: |   test-setup-python: | ||||||
|     name: Run |     name: Test setup-python | ||||||
|     runs-on: ${{ matrix.operating-system }} |     runs-on: ${{ matrix.operating-system }} | ||||||
|     strategy: |     strategy: | ||||||
|       matrix: |       matrix: | ||||||
| @ -19,21 +21,6 @@ jobs: | |||||||
|     - name: Checkout |     - name: Checkout | ||||||
|       uses: actions/checkout@v3 |       uses: actions/checkout@v3 | ||||||
| 
 | 
 | ||||||
|     - name: Set Node.js 16.x |  | ||||||
|       uses: actions/setup-node@v3 |  | ||||||
|       with: |  | ||||||
|         node-version: 16.x |  | ||||||
|         cache: npm |  | ||||||
| 
 |  | ||||||
|     - name: npm ci |  | ||||||
|       run: npm ci |  | ||||||
| 
 |  | ||||||
|     - name: Lint |  | ||||||
|       run: npm run format-check |  | ||||||
| 
 |  | ||||||
|     - name: npm test |  | ||||||
|       run: npm test |  | ||||||
| 
 |  | ||||||
|     - name: Run with setup-python 2.7 |     - name: Run with setup-python 2.7 | ||||||
|       uses: ./ |       uses: ./ | ||||||
|       with: |       with: | ||||||
| @ -98,4 +85,4 @@ jobs: | |||||||
|     - name: Verify 3.10 |     - name: Verify 3.10 | ||||||
|       run: python __tests__/verify-python.py 3.10 |       run: python __tests__/verify-python.py 3.10 | ||||||
|     - name: Run python-path sample 3.10 |     - name: Run python-path sample 3.10 | ||||||
|       run: pipx run --python '${{ steps.cp310.outputs.python-path }}' nox --version |       run: pipx run --python '${{ steps.cp310.outputs.python-path }}' nox --version | ||||||
							
								
								
									
										21
									
								
								.github/workflows/licensed.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										21
									
								
								.github/workflows/licensed.yml
									
									
									
									
										vendored
									
									
								
							| @ -9,21 +9,6 @@ on: | |||||||
|       - main |       - main | ||||||
| 
 | 
 | ||||||
| jobs: | jobs: | ||||||
|   test: |   call-licensed: | ||||||
|     runs-on: ubuntu-latest |     name: Licensed | ||||||
|     name: Check licenses |     uses: actions/reusable-workflows/.github/workflows/licensed.yml@main | ||||||
|     steps: |  | ||||||
|       - uses: actions/checkout@v3 |  | ||||||
|       - name: Set Node.js 16.x |  | ||||||
|         uses: actions/setup-node@v3 |  | ||||||
|         with: |  | ||||||
|           node-version: 16.x |  | ||||||
|           cache: npm |  | ||||||
|       - run: npm ci |  | ||||||
|       - name: Install licensed |  | ||||||
|         run: | |  | ||||||
|           cd $RUNNER_TEMP |  | ||||||
|           curl -Lfs -o licensed.tar.gz https://github.com/github/licensed/releases/download/3.4.4/licensed-3.4.4-linux-x64.tar.gz |  | ||||||
|           sudo tar -xzf licensed.tar.gz |  | ||||||
|           sudo mv licensed /usr/local/bin/licensed |  | ||||||
|       - run: licensed status |  | ||||||
| @ -1,4 +1,5 @@ | |||||||
| name: Release new action version | name: Release new action version | ||||||
|  | 
 | ||||||
| on: | on: | ||||||
|   release: |   release: | ||||||
|     types: [released] |     types: [released] | ||||||
| @ -24,4 +25,4 @@ jobs: | |||||||
|       uses: actions/publish-action@v0.2.1 |       uses: actions/publish-action@v0.2.1 | ||||||
|       with: |       with: | ||||||
|         source-tag: ${{ env.TAG_NAME }} |         source-tag: ${{ env.TAG_NAME }} | ||||||
|         slack-webhook: ${{ secrets.SLACK_WEBHOOK }} |         slack-webhook: ${{ secrets.SLACK_WEBHOOK }} | ||||||
							
								
								
									
										1
									
								
								.github/workflows/test-pypy.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.github/workflows/test-pypy.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,4 +1,5 @@ | |||||||
| name: Validate PyPy e2e | name: Validate PyPy e2e | ||||||
|  | 
 | ||||||
| on:  | on:  | ||||||
|   push: |   push: | ||||||
|     branches: |     branches: | ||||||
|  | |||||||
							
								
								
									
										1
									
								
								.github/workflows/test-python.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.github/workflows/test-python.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,4 +1,5 @@ | |||||||
| name: Validate Python e2e | name: Validate Python e2e | ||||||
|  | 
 | ||||||
| on: | on: | ||||||
|   push: |   push: | ||||||
|     branches: |     branches: | ||||||
|  | |||||||
| @ -8,6 +8,7 @@ | |||||||
|     "build": "ncc build -o dist/setup src/setup-python.ts && ncc build -o dist/cache-save src/cache-save.ts", |     "build": "ncc build -o dist/setup src/setup-python.ts && ncc build -o dist/cache-save src/cache-save.ts", | ||||||
|     "format": "prettier --write \"{,!(node_modules)/**/}*.ts\"", |     "format": "prettier --write \"{,!(node_modules)/**/}*.ts\"", | ||||||
|     "format-check": "prettier --check \"{,!(node_modules)/**/}*.ts\"", |     "format-check": "prettier --check \"{,!(node_modules)/**/}*.ts\"", | ||||||
|  |     "lint": "echo \"Fake command that does nothing. It is used in reusable workflows\"", | ||||||
|     "release": "ncc build -o dist/setup src/setup-python.ts && ncc build -o dist/cache-save src/cache-save.ts && git add -f dist/", |     "release": "ncc build -o dist/setup src/setup-python.ts && ncc build -o dist/cache-save src/cache-save.ts && git add -f dist/", | ||||||
|     "test": "jest --coverage" |     "test": "jest --coverage" | ||||||
|   }, |   }, | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Ivan
						Ivan