mirror of
				https://gitea.com/actions/setup-python.git
				synced 2025-11-04 07:47:09 +00:00 
			
		
		
		
	V4 - Add workflow file for publishing releases to immutable action package (#1084)
* add publish immutable action * depricate ubuntu-20.04 * fix check failures * fix check failures on older versions * check failures fix for older versions * check failure fix * check failure fix * compatable version update * compatable version update for ubuntu-22.04 and windows * fix * update e2e tests format * fomat update * updated wording
This commit is contained in:
		
							
								
								
									
										29
									
								
								.github/workflows/e2e-tests.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										29
									
								
								.github/workflows/e2e-tests.yml
									
									
									
									
										vendored
									
									
								
							@@ -16,16 +16,19 @@ jobs:
 | 
				
			|||||||
    runs-on: ${{ matrix.operating-system }}
 | 
					    runs-on: ${{ matrix.operating-system }}
 | 
				
			||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        operating-system: [ubuntu-20.04, windows-latest]
 | 
					        operating-system: [ubuntu-22.04, windows-latest]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      - name: Checkout
 | 
					      - name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Run with setup-python 3.6
 | 
					      - name: Run with setup-python 3.6
 | 
				
			||||||
 | 
					        if: ${{ matrix.operating-system == 'windows-latest' }}
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          python-version: 3.6
 | 
					          python-version: 3.6
 | 
				
			||||||
      - name: Verify 3.6
 | 
					      - name: Verify 3.6
 | 
				
			||||||
 | 
					        if: ${{ matrix.operating-system == 'windows-latest' }}
 | 
				
			||||||
        run: python __tests__/verify-python.py 3.6
 | 
					        run: python __tests__/verify-python.py 3.6
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Run with setup-python 3.7
 | 
					      - name: Run with setup-python 3.7
 | 
				
			||||||
@@ -43,26 +46,50 @@ jobs:
 | 
				
			|||||||
        run: python __tests__/verify-python.py 3.8
 | 
					        run: python __tests__/verify-python.py 3.8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Run with setup-python 3.7.5
 | 
					      - name: Run with setup-python 3.7.5
 | 
				
			||||||
 | 
					        if: ${{ matrix.operating-system == 'windows-latest' }}
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          python-version: 3.7.5
 | 
					          python-version: 3.7.5
 | 
				
			||||||
      - name: Verify 3.7.5
 | 
					      - name: Verify 3.7.5
 | 
				
			||||||
 | 
					        if: ${{ matrix.operating-system == 'windows-latest' }}
 | 
				
			||||||
        run: python __tests__/verify-python.py 3.7.5
 | 
					        run: python __tests__/verify-python.py 3.7.5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Run with setup-python 3.6.7
 | 
					      - name: Run with setup-python 3.6.7
 | 
				
			||||||
 | 
					        if: ${{ matrix.operating-system == 'windows-latest' }}
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          python-version: 3.6.7
 | 
					          python-version: 3.6.7
 | 
				
			||||||
      - name: Verify 3.6.7
 | 
					      - name: Verify 3.6.7
 | 
				
			||||||
 | 
					        if: ${{ matrix.operating-system == 'windows-latest' }}
 | 
				
			||||||
        run: python __tests__/verify-python.py 3.6.7
 | 
					        run: python __tests__/verify-python.py 3.6.7
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Run with setup-python 3.8.1
 | 
					      - name: Run with setup-python 3.8.1
 | 
				
			||||||
 | 
					        if: ${{ matrix.operating-system == 'windows-latest' }}
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          python-version: 3.8.1
 | 
					          python-version: 3.8.1
 | 
				
			||||||
      - name: Verify 3.8.1
 | 
					      - name: Verify 3.8.1
 | 
				
			||||||
 | 
					        if: ${{ matrix.operating-system == 'windows-latest' }}
 | 
				
			||||||
        run: python __tests__/verify-python.py 3.8.1
 | 
					        run: python __tests__/verify-python.py 3.8.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: Run with setup-python 3.7.13
 | 
				
			||||||
 | 
					        if: ${{ matrix.operating-system == 'ubuntu-22.04' }}
 | 
				
			||||||
 | 
					        uses: ./
 | 
				
			||||||
 | 
					        with:
 | 
				
			||||||
 | 
					          python-version: 3.7.13
 | 
				
			||||||
 | 
					      - name: Verify 3.7.13
 | 
				
			||||||
 | 
					        if: ${{ matrix.operating-system == 'ubuntu-22.04' }}
 | 
				
			||||||
 | 
					        run: python __tests__/verify-python.py 3.7.13
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: Run with setup-python 3.8.12
 | 
				
			||||||
 | 
					        if: ${{ matrix.operating-system == 'ubuntu-22.04' }}
 | 
				
			||||||
 | 
					        uses: ./
 | 
				
			||||||
 | 
					        with:
 | 
				
			||||||
 | 
					          python-version: 3.8.12
 | 
				
			||||||
 | 
					      - name: Verify 3.8.12
 | 
				
			||||||
 | 
					        if: ${{ matrix.operating-system == 'ubuntu-22.04' }}
 | 
				
			||||||
 | 
					        run: python __tests__/verify-python.py 3.8.12
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Run with setup-python 3.10
 | 
					      - name: Run with setup-python 3.10
 | 
				
			||||||
        id: cp310
 | 
					        id: cp310
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										20
									
								
								.github/workflows/publish-immutable-action.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								.github/workflows/publish-immutable-action.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,20 @@
 | 
				
			|||||||
 | 
					name: 'Publish Immutable Action Version'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					on:
 | 
				
			||||||
 | 
					  release:
 | 
				
			||||||
 | 
					    types: [published]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					jobs:
 | 
				
			||||||
 | 
					  publish:
 | 
				
			||||||
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
 | 
					    permissions:
 | 
				
			||||||
 | 
					      contents: read
 | 
				
			||||||
 | 
					      id-token: write
 | 
				
			||||||
 | 
					      packages: write
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    steps:
 | 
				
			||||||
 | 
					      - name: Checking out
 | 
				
			||||||
 | 
					        uses: actions/checkout@v4
 | 
				
			||||||
 | 
					      - name: Publish
 | 
				
			||||||
 | 
					        id: publish
 | 
				
			||||||
 | 
					        uses: actions/publish-immutable-action@v0.0.4
 | 
				
			||||||
							
								
								
									
										4
									
								
								.github/workflows/test-graalpy.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.github/workflows/test-graalpy.yml
									
									
									
									
										vendored
									
									
								
							@@ -17,7 +17,7 @@ jobs:
 | 
				
			|||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        os: [macos-latest, ubuntu-20.04, ubuntu-latest]
 | 
					        os: [macos-latest, ubuntu-22.04, ubuntu-latest]
 | 
				
			||||||
        graalpy:
 | 
					        graalpy:
 | 
				
			||||||
          - 'graalpy-23.0'
 | 
					          - 'graalpy-23.0'
 | 
				
			||||||
          - 'graalpy-22.3'
 | 
					          - 'graalpy-22.3'
 | 
				
			||||||
@@ -62,7 +62,7 @@ jobs:
 | 
				
			|||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        os: [macos-latest, ubuntu-20.04, ubuntu-latest]
 | 
					        os: [macos-latest, ubuntu-22.04, ubuntu-latest]
 | 
				
			||||||
        graalpy: ['graalpy23.0', 'graalpy22.3']
 | 
					        graalpy: ['graalpy23.0', 'graalpy22.3']
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										4
									
								
								.github/workflows/test-pypy.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.github/workflows/test-pypy.yml
									
									
									
									
										vendored
									
									
								
							@@ -19,7 +19,7 @@ jobs:
 | 
				
			|||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        os: [macos-13, windows-latest, ubuntu-20.04, ubuntu-latest]
 | 
					        os: [macos-13, windows-latest, ubuntu-22.04, ubuntu-latest]
 | 
				
			||||||
        pypy:
 | 
					        pypy:
 | 
				
			||||||
          - 'pypy-2.7'
 | 
					          - 'pypy-2.7'
 | 
				
			||||||
          - 'pypy-3.7'
 | 
					          - 'pypy-3.7'
 | 
				
			||||||
@@ -76,7 +76,7 @@ jobs:
 | 
				
			|||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        os: [macos-13, windows-latest, ubuntu-20.04, ubuntu-latest]
 | 
					        os: [macos-13, windows-latest, ubuntu-22.04, ubuntu-latest]
 | 
				
			||||||
        pypy: ['pypy2.7', 'pypy3.7', 'pypy3.8', 'pypy3.9-nightly']
 | 
					        pypy: ['pypy2.7', 'pypy3.7', 'pypy3.8', 'pypy3.9-nightly']
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										24
									
								
								.github/workflows/test-python.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										24
									
								
								.github/workflows/test-python.yml
									
									
									
									
										vendored
									
									
								
							@@ -20,7 +20,7 @@ jobs:
 | 
				
			|||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        os: [macos-13, windows-latest, ubuntu-20.04, ubuntu-22.04]
 | 
					        os: [macos-13, windows-latest, ubuntu-22.04]
 | 
				
			||||||
        python: [3.6.7, 3.7.5, 3.8.15, 3.9.13]
 | 
					        python: [3.6.7, 3.7.5, 3.8.15, 3.9.13]
 | 
				
			||||||
        exclude:
 | 
					        exclude:
 | 
				
			||||||
          - os: ubuntu-22.04
 | 
					          - os: ubuntu-22.04
 | 
				
			||||||
@@ -62,7 +62,7 @@ jobs:
 | 
				
			|||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        os: [macos-13, windows-latest, ubuntu-20.04, ubuntu-22.04]
 | 
					        os: [macos-13, windows-latest, ubuntu-22.04]
 | 
				
			||||||
        python: [3.6.7, 3.7.5, 3.8.15, 3.9.13]
 | 
					        python: [3.6.7, 3.7.5, 3.8.15, 3.9.13]
 | 
				
			||||||
        exclude:
 | 
					        exclude:
 | 
				
			||||||
          - os: ubuntu-22.04
 | 
					          - os: ubuntu-22.04
 | 
				
			||||||
@@ -107,7 +107,7 @@ jobs:
 | 
				
			|||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        os: [macos-13, windows-latest, ubuntu-20.04, ubuntu-22.04]
 | 
					        os: [macos-13, windows-latest, ubuntu-22.04]
 | 
				
			||||||
        python: [3.6.7, 3.7.5, 3.8.15, 3.9.13]
 | 
					        python: [3.6.7, 3.7.5, 3.8.15, 3.9.13]
 | 
				
			||||||
        exclude:
 | 
					        exclude:
 | 
				
			||||||
          - os: ubuntu-22.04
 | 
					          - os: ubuntu-22.04
 | 
				
			||||||
@@ -150,7 +150,7 @@ jobs:
 | 
				
			|||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        os: [macos-13, windows-latest, ubuntu-20.04, ubuntu-22.04]
 | 
					        os: [macos-13, windows-latest, ubuntu-22.04]
 | 
				
			||||||
        python: [3.6.7, 3.7.5, 3.8.15, 3.9.13, '==3.10.10']
 | 
					        python: [3.6.7, 3.7.5, 3.8.15, 3.9.13, '==3.10.10']
 | 
				
			||||||
        exclude:
 | 
					        exclude:
 | 
				
			||||||
          - os: ubuntu-22.04
 | 
					          - os: ubuntu-22.04
 | 
				
			||||||
@@ -198,7 +198,7 @@ jobs:
 | 
				
			|||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        os: [macos-13, windows-latest, ubuntu-20.04, ubuntu-22.04]
 | 
					        os: [macos-13, windows-latest, ubuntu-22.04]
 | 
				
			||||||
        python: [3.6.7, 3.7.5, 3.8.15, 3.9.13]
 | 
					        python: [3.6.7, 3.7.5, 3.8.15, 3.9.13]
 | 
				
			||||||
        exclude:
 | 
					        exclude:
 | 
				
			||||||
          - os: ubuntu-22.04
 | 
					          - os: ubuntu-22.04
 | 
				
			||||||
@@ -241,21 +241,21 @@ jobs:
 | 
				
			|||||||
        run: python -c 'import math; print(math.factorial(5))'
 | 
					        run: python -c 'import math; print(math.factorial(5))'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  setup-pre-release-version-from-manifest:
 | 
					  setup-pre-release-version-from-manifest:
 | 
				
			||||||
    name: Setup 3.9.0-beta.4 ${{ matrix.os }}
 | 
					    name: Setup 3.11.0-beta.4 ${{ matrix.os }}
 | 
				
			||||||
    runs-on: ${{ matrix.os }}
 | 
					    runs-on: ${{ matrix.os }}
 | 
				
			||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        os: [macos-13, windows-latest, ubuntu-20.04]
 | 
					        os: [macos-13, windows-latest, ubuntu-22.04]
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      - name: Checkout
 | 
					      - name: Checkout
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: setup-python 3.9.0-beta.4
 | 
					      - name: setup-python 3.11.0-beta.4
 | 
				
			||||||
        id: setup-python
 | 
					        id: setup-python
 | 
				
			||||||
        uses: ./
 | 
					        uses: ./
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          python-version: '3.9.0-beta.4'
 | 
					          python-version: '3.11.0-beta.4'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Check python-path
 | 
					      - name: Check python-path
 | 
				
			||||||
        run: ./__tests__/check-python-path.sh '${{ steps.setup-python.outputs.python-path }}'
 | 
					        run: ./__tests__/check-python-path.sh '${{ steps.setup-python.outputs.python-path }}'
 | 
				
			||||||
@@ -264,8 +264,8 @@ jobs:
 | 
				
			|||||||
      - name: Validate version
 | 
					      - name: Validate version
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
          $pythonVersion = (python --version)
 | 
					          $pythonVersion = (python --version)
 | 
				
			||||||
          if ("Python 3.9.0b4" -ne "$pythonVersion"){
 | 
					          if ("Python 3.11.0b4" -ne "$pythonVersion"){
 | 
				
			||||||
            Write-Host "The current version is $pythonVersion; expected version is 3.9.0b4"
 | 
					            Write-Host "The current version is $pythonVersion; expected version is 3.11.0b4"
 | 
				
			||||||
            exit 1
 | 
					            exit 1
 | 
				
			||||||
          }
 | 
					          }
 | 
				
			||||||
          $pythonVersion
 | 
					          $pythonVersion
 | 
				
			||||||
@@ -337,7 +337,7 @@ jobs:
 | 
				
			|||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        os: [macos-13, windows-latest, ubuntu-20.04, ubuntu-22.04]
 | 
					        os: [macos-13, windows-latest, ubuntu-22.04]
 | 
				
			||||||
        python: ['3.7', '3.8', '3.9', '3.10']
 | 
					        python: ['3.7', '3.8', '3.9', '3.10']
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      - name: Checkout
 | 
					      - name: Checkout
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user