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:
aparnajyothi-y 2025-04-17 20:09:32 +05:30 committed by GitHub
parent 3605726ffa
commit 7f4fc3e22c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 64 additions and 17 deletions

View file

@ -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: ./

View 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

View file

@ -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:

View file

@ -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:

View file

@ -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