Compare commits

..

20 Commits

Author SHA1 Message Date
Marko Zivic
ad06198644 Merge pull request #216 from actions/update-code-owners
Update CODEOWNERS
2022-12-27 09:27:18 +01:00
Evgenii Korolevskii
66b48edbf9 Update CODEOWNERS 2022-12-26 09:48:52 +01:00
github-actions[bot]
61e2b82f97 Update versions-manifest (#215)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-12-19 11:41:06 +01:00
Marko Zivic
f99915cae1 Merge pull request #210 from MaksimZhukov/add-support-policy
Add support policy
2022-12-16 09:27:33 +01:00
MaksimZhukov
1fbaf20636 Change wording
Co-authored-by: Brian Cristante <33549821+brcrista@users.noreply.github.com>
2022-12-15 18:38:08 +01:00
MaksimZhukov
a4dd6d4b89 Change wording
Co-authored-by: Brian Cristante <33549821+brcrista@users.noreply.github.com>
2022-12-15 18:38:00 +01:00
MaksimZhukov
80b21460cf Change wording
Co-authored-by: Brian Cristante <33549821+brcrista@users.noreply.github.com>
2022-12-15 18:37:53 +01:00
MaksimZhukov
2e59cc3fa4 Change wording
Co-authored-by: Brian Cristante <33549821+brcrista@users.noreply.github.com>
2022-12-15 18:37:45 +01:00
MaksimZhukov
b7447f0e37 Change wording
Co-authored-by: Brian Cristante <33549821+brcrista@users.noreply.github.com>
2022-12-15 18:37:35 +01:00
Marko Zivic
b558df2c7a Merge pull request #209 from MaksimZhukov/introduce-reusable-workflows
Update workflows to use reusable ones
2022-12-14 09:41:48 +01:00
github-actions[bot]
6dd0b7502a Update versions-manifest (#212)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-12-08 13:24:05 +01:00
github-actions[bot]
01d7e367e6 Update versions-manifest (#211)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-12-07 10:10:05 +01:00
MaksimZhukov
fe45ddc7b4 Update README.md 2022-12-06 19:27:02 +01:00
MaksimZhukov
9feffedd12 Simplify if statement 2022-12-06 11:12:09 +01:00
github-actions[bot]
66440ccb17 Update versions-manifest (#208)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-12-06 10:01:24 +01:00
MaksimZhukov
c483dd7702 Add workflow_dispatch event for manifest validation 2022-12-05 22:03:35 +01:00
MaksimZhukov
69e05af37b Simplify input usage 2022-12-05 22:01:29 +01:00
MaksimZhukov
626f42cb96 Update workflows to use reusable ones 2022-12-05 21:45:47 +01:00
github-actions[bot]
08fcc9e2f9 Update versions-manifest (#207) 2022-12-02 13:45:28 +01:00
github-actions[bot]
1248039d12 Update versions-manifest (#206) 2022-11-30 11:24:47 +01:00
9 changed files with 276 additions and 181 deletions

2
.github/CODEOWNERS vendored
View File

@@ -1 +1 @@
* @actions/virtual-environments-owners
* @actions/setup-actions-team

View File

@@ -1,16 +1,17 @@
name: Build python package
name: Build Python package
run-name: Generate Python ${{ inputs.VERSION || '3.11.0' }}
on:
workflow_dispatch:
inputs:
VERSION:
description: 'Python version to build and upload'
default: '3.9.9'
default: '3.11.0'
required: true
PUBLISH_RELEASES:
description: 'Whether to publish releases'
required: true
default: 'false'
type: boolean
default: false
PLATFORMS:
description: 'Platforms for execution in "os" or "os_arch" format (arch is "x64" by default)'
required: true
@@ -24,7 +25,7 @@ on:
- 'main'
env:
VERSION: ${{ github.event.inputs.VERSION || '3.9.9' }}
VERSION: ${{ inputs.VERSION || '3.11.0' }}
defaults:
run:
shell: pwsh
@@ -38,7 +39,7 @@ jobs:
- name: Generate execution matrix
id: generate-matrix
run: |
[String[]]$configurations = "${{ github.event.inputs.platforms || 'ubuntu-18.04,ubuntu-20.04,ubuntu-22.04,macos-11,windows-2019_x64,windows-2019_x86' }}".Split(",").Trim()
[String[]]$configurations = "${{ inputs.platforms || 'ubuntu-18.04,ubuntu-20.04,ubuntu-22.04,macos-11,windows-2019_x64,windows-2019_x86' }}".Split(",").Trim()
$matrix = @()
foreach ($configuration in $configurations) {
@@ -66,7 +67,7 @@ jobs:
include: ${{ fromJson(needs.generate_matrix.outputs.matrix) }}
runs-on: ${{ matrix.os }}
env:
ARTIFACT_NAME: python-${{ github.event.inputs.VERSION || '3.9.9' }}-${{ matrix.platform }}-${{ matrix.arch }}
ARTIFACT_NAME: python-${{ inputs.VERSION || '3.11.0' }}-${{ matrix.platform }}-${{ matrix.arch }}
steps:
- name: Check out repository code
@@ -93,7 +94,7 @@ jobs:
include: ${{ fromJson(needs.generate_matrix.outputs.matrix) }}
runs-on: ${{ matrix.os }}
env:
ARTIFACT_NAME: python-${{ github.event.inputs.VERSION || '3.9.9' }}-${{ matrix.platform }}-${{ matrix.arch }}
ARTIFACT_NAME: python-${{ inputs.VERSION || '3.11.0' }}-${{ matrix.platform }}-${{ matrix.arch }}
steps:
- name: Check out repository code
@@ -164,7 +165,7 @@ jobs:
publish_release:
name: Publish release
if: github.event_name == 'workflow_dispatch' && github.event.inputs.PUBLISH_RELEASES == 'true'
if: github.event_name == 'workflow_dispatch' && inputs.PUBLISH_RELEASES
needs: test_python
runs-on: ubuntu-latest
steps:
@@ -207,7 +208,7 @@ jobs:
- name: Trigger "Create Pull Request" workflow
uses: actions/github-script@v6
with:
github-token: ${{ secrets.PERSONAL_TOKEN }}
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
github.rest.actions.createWorkflowDispatch({
owner: context.repo.owner,

View File

@@ -2,32 +2,9 @@ name: Create Pull Request
on:
workflow_dispatch:
defaults:
run:
shell: pwsh
jobs:
create_pr:
name: Create Pull Request
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Create versions-manifest.json
run: |
./helpers/packages-generation/manifest-generator.ps1 -RepositoryFullName "$env:GITHUB_REPOSITORY" `
-GitHubAccessToken "${{secrets.GITHUB_TOKEN}}" `
-OutputFile "./versions-manifest.json" `
-ConfigurationFile "./config/python-manifest-config.json"
- name: Create GitHub PR
run: |
$formattedDate = Get-Date -Format "MM/dd/yyyy"
./helpers/github/create-pull-request.ps1 `
-RepositoryFullName "$env:GITHUB_REPOSITORY" `
-AccessToken "${{secrets.GITHUB_TOKEN}}" `
-BranchName "update-versions-manifest-file" `
-CommitMessage "Update versions-manifest" `
-PullRequestTitle "[versions-manifest] Update for release from ${formattedDate}" `
-PullRequestBody "Update versions-manifest.json for release from ${formattedDate}"
create-pr:
uses: actions/versions-package-tools/.github/workflows/create-pr-to-update-manifest.yml@main
with:
tool-name: "python"
secrets: inherit

View File

@@ -4,93 +4,10 @@ on:
- cron: '0 3,15 * * *'
workflow_dispatch:
env:
TOOL_NAME: "Python"
defaults:
run:
shell: pwsh
jobs:
find_new_versions:
if: github.repository_owner == 'actions'
name: Find new versions
runs-on: ubuntu-latest
outputs:
versions_output: ${{ steps.Get_new_versions.outputs.TOOL_VERSIONS }}
steps:
- uses: actions/checkout@v3
with:
submodules: true
- id: Get_new_versions
name: Get new versions
run: ./helpers/get-new-tool-versions/get-new-tool-versions.ps1 -ToolName ${{ env.TOOL_NAME }}
check_new_versions:
name: Check new versions
runs-on: ubuntu-latest
needs: find_new_versions
env:
TOOL_VERSIONS: ${{needs.find_new_versions.outputs.versions_output}}
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Check Versions
if: env.TOOL_VERSIONS == ''
run: |
Write-Host "No new versions were found"
Import-Module "./helpers/github/github-api.psm1"
$gitHubApi = Get-GitHubApi -RepositoryFullName "$env:GITHUB_REPOSITORY" `
-AccessToken "${{ secrets.PERSONAL_TOKEN }}"
$gitHubApi.CancelWorkflow("$env:GITHUB_RUN_ID")
Start-Sleep -Seconds 60
- name: Send Slack notification
run: |
$pipelineUrl = "$env:GITHUB_SERVER_URL/$env:GITHUB_REPOSITORY/actions/runs/$env:GITHUB_RUN_ID"
$message = "The following versions of '${{ env.TOOL_NAME }}' are available to upload: ${{ env.TOOL_VERSIONS }}\nLink to the pipeline: $pipelineUrl"
./helpers/get-new-tool-versions/send-slack-notification.ps1 -Url "${{ secrets.SLACK_CHANNEL_URL }}" `
-ToolName "${{ env.TOOL_NAME }}" `
-ImageUrl "https://avatars.githubusercontent.com/u/1525981?s=200&v=4" `
-Text "$message"
trigger_builds:
name: Trigger builds
runs-on: ubuntu-latest
needs: [find_new_versions, check_new_versions]
env:
TOOL_VERSIONS: ${{needs.find_new_versions.outputs.versions_output}}
environment: Get Available Tools Versions - Publishing Approval
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Trigger "Build python packages" workflow
run:
./helpers/github/run-ci-builds.ps1 -RepositoryFullName "$env:GITHUB_REPOSITORY" `
-AccessToken "${{ secrets.PERSONAL_TOKEN }}" `
-WorkflowFileName "python-builder.yml" `
-WorkflowDispatchRef "main" `
-ToolVersions "${{ env.TOOL_VERSIONS }}" `
-PublishReleases "true"
check_build:
name: Check build for failures
runs-on: ubuntu-latest
needs: [find_new_versions, check_new_versions, trigger_builds]
if: failure()
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Send Slack notification if build fails
run: |
$pipelineUrl = "$env:GITHUB_SERVER_URL/$env:GITHUB_REPOSITORY/actions/runs/$env:GITHUB_RUN_ID"
$message = "The build of the '${{ env.TOOL_NAME }}' detection pipeline failed :progress-error:\nLink to the pipeline: $pipelineUrl"
./helpers/get-new-tool-versions/send-slack-notification.ps1 -Url "${{ secrets.SLACK_CHANNEL_URL }}" `
-ToolName "${{ env.TOOL_NAME }}" `
-Text "$message" `
-ImageUrl "https://avatars.githubusercontent.com/u/1525981?s=200&v=4"
get-new-python-versions:
uses: actions/versions-package-tools/.github/workflows/get-new-tool-versions.yml@main
with:
tool-name: "Python"
image-url: "https://avatars.githubusercontent.com/u/1525981?s=200&v=4"
secrets: inherit

View File

@@ -28,4 +28,4 @@ jobs:
$versions = ${{ github.event.inputs.versions }}
./builders/python-versions-runner.ps1 -Versions $versions.Split(",") -PublishRelease ${{ github.event.inputs.publish-releases }}
env:
PERSONAL_TOKEN: ${{ secrets.PERSONAL_TOKEN }}
TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -1,49 +1,21 @@
name: Validate manifest
on:
# The GITHUB_TOKEN secret is used to create a PR
# The pull_request event will not be triggered by it
# That's one of the reasons we need the schedule to validate the versions-manifest.json file
schedule:
- cron: '0 8,20 * * *'
workflow_dispatch:
pull_request:
branches:
- main
paths:
- 'versions-manifest.json'
env:
TOOL_NAME: "Python"
defaults:
run:
shell: pwsh
jobs:
validation:
if: github.repository_owner == 'actions'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Validate python-versions manifest
run: .\helpers\packages-generation\manifest-validator.ps1 -ManifestPath '.\versions-manifest.json'
check_build:
name: Check validation for failures
runs-on: ubuntu-latest
needs: [validation]
if: failure()
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Send Slack notification if validation fails
run: |
$pipelineUrl = "$env:GITHUB_SERVER_URL/$env:GITHUB_REPOSITORY/actions/runs/$env:GITHUB_RUN_ID"
$message = "The validation of python-versions manifest failed. \nLink to the pipeline: $pipelineUrl"
.\helpers\get-new-tool-versions\send-slack-notification.ps1 -Url "${{ secrets.SLACK_CHANNEL_URL }}" `
-ToolName "${{ env.TOOL_NAME }}" `
-Text "$message" `
-ImageUrl "https://www.python.org/static/community_logos/python-powered-h-100x130.png"
manifest:
uses: actions/versions-package-tools/.github/workflows/validate-manifest.yml@main
with:
tool-name: "Python"
image-url: "https://avatars.githubusercontent.com/u/1525981?s=200&v=4"
secrets: inherit

View File

@@ -4,13 +4,22 @@ File [versions-manifest.json](./versions-manifest.json) contains the list of ava
> Caution: this is prepared for and only permitted for use by actions `runner-images` and `setup-python` action.
**Status**: Currently under development and in use for beta and preview actions. This repo is undergoing rapid changes.
Some versions are pre-installed on [runner-images](https://github.com/actions/runner-images) images.
More versions will (soon!) be available to install on-the-fly through the [`setup-python`](https://github.com/actions/setup-python) action.
More versions are available to install on-the-fly through the [`setup-python`](https://github.com/actions/setup-python) action.
## Adding new versions
We are trying to build and release new versions of Python as soon as they are released. Please open an issue in [actions/setup-python](https://github.com/actions/setup-python/issues) if any versions are missing.
## Building installation packages
**Ubuntu:** The official Python sources are downloaded from [python.org](https://www.python.org/ftp/python/), built using the `make` tool, and archived along with the installation script for further distribution and installation. We build each Python version against all [versions of Ubuntu](https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources) that are available at the time the Python version is released.
**macOS:**
- For **Python < 3.11**, the official Python sources are downloaded from [python.org](https://www.python.org/ftp/python/), built using the `make` tool, and archived along with the installation script for further distribution and installation. For backward compatibility, we build each Python version against the oldest [version of macOS](https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources) that is available at the time the Python version is released.
- For **Python >= 3.11**, the official macOS `universal2` Python binaries are simply downloaded from [python.org](https://www.python.org/ftp/python/) and archived along with the installation script for further distribution and installation.
**Windows:** The official Python executables are simply downloaded from [python.org](https://www.python.org/ftp/python/) and archived along with the installation script for further distribution and installation.
## Support policy
We aim to make new versions of Python available as soon as they are released. Both stable and prerelease versions are considered for building and releasing. Please open an issue in [actions/setup-python](https://github.com/actions/setup-python) if a version you're looking for isn't available.
When a new version of an operating system is released and made available for use with [GitHub hosted runners](https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources), we will provide the **latest existing patch versions of Python for all major versions that have not reached [end-of-life](https://devguide.python.org/versions/)**. Any subsequent Python versions will be made available for the new OS as well.
## Contribution
Contributions are welcome! See [Contributor's Guide](./CONTRIBUTING.md) for more details about contribution process and code structure

View File

@@ -12,10 +12,10 @@ function Invoke-Workflow {
}
} | ConvertTo-Json
$headers = @{
Authorization="Bearer $env:PERSONAL_TOKEN"
Authorization="Bearer $env:TOKEN"
}
$actionsRepoUri = "$env:GITHUB_API_URL/repos/$env:GITHUB_REPOSITORY/actions"
Invoke-RestMethod -uri "$actionsRepoUri/workflows/python-builder.yml/dispatches" -method POST -headers $headers -body $payload
Invoke-RestMethod -uri "$actionsRepoUri/workflows/build-python-packages.yml/dispatches" -method POST -headers $headers -body $payload
$result = [PSCustomObject]@{
Version = $Version

View File

@@ -1,4 +1,50 @@
[
{
"version": "3.12.0-alpha.3",
"stable": false,
"release_url": "https://github.com/actions/python-versions/releases/tag/3.12.0-alpha.3-3638209027",
"files": [
{
"filename": "python-3.12.0-alpha.3-darwin-x64.tar.gz",
"arch": "x64",
"platform": "darwin",
"download_url": "https://github.com/actions/python-versions/releases/download/3.12.0-alpha.3-3638209027/python-3.12.0-alpha.3-darwin-x64.tar.gz"
},
{
"filename": "python-3.12.0-alpha.3-linux-18.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "18.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.12.0-alpha.3-3638209027/python-3.12.0-alpha.3-linux-18.04-x64.tar.gz"
},
{
"filename": "python-3.12.0-alpha.3-linux-20.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "20.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.12.0-alpha.3-3638209027/python-3.12.0-alpha.3-linux-20.04-x64.tar.gz"
},
{
"filename": "python-3.12.0-alpha.3-linux-22.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "22.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.12.0-alpha.3-3638209027/python-3.12.0-alpha.3-linux-22.04-x64.tar.gz"
},
{
"filename": "python-3.12.0-alpha.3-win32-x64.zip",
"arch": "x64",
"platform": "win32",
"download_url": "https://github.com/actions/python-versions/releases/download/3.12.0-alpha.3-3638209027/python-3.12.0-alpha.3-win32-x64.zip"
},
{
"filename": "python-3.12.0-alpha.3-win32-x86.zip",
"arch": "x86",
"platform": "win32",
"download_url": "https://github.com/actions/python-versions/releases/download/3.12.0-alpha.3-3638209027/python-3.12.0-alpha.3-win32-x86.zip"
}
]
},
{
"version": "3.12.0-alpha.2",
"stable": false,
@@ -91,49 +137,95 @@
}
]
},
{
"version": "3.11.1",
"stable": true,
"release_url": "https://github.com/actions/python-versions/releases/tag/3.11.1-3646089612",
"files": [
{
"filename": "python-3.11.1-darwin-x64.tar.gz",
"arch": "x64",
"platform": "darwin",
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.1-3646089612/python-3.11.1-darwin-x64.tar.gz"
},
{
"filename": "python-3.11.1-linux-18.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "18.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.1-3646089612/python-3.11.1-linux-18.04-x64.tar.gz"
},
{
"filename": "python-3.11.1-linux-20.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "20.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.1-3646089612/python-3.11.1-linux-20.04-x64.tar.gz"
},
{
"filename": "python-3.11.1-linux-22.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "22.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.1-3646089612/python-3.11.1-linux-22.04-x64.tar.gz"
},
{
"filename": "python-3.11.1-win32-x64.zip",
"arch": "x64",
"platform": "win32",
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.1-3646089612/python-3.11.1-win32-x64.zip"
},
{
"filename": "python-3.11.1-win32-x86.zip",
"arch": "x86",
"platform": "win32",
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.1-3646089612/python-3.11.1-win32-x86.zip"
}
]
},
{
"version": "3.11.0",
"stable": true,
"release_url": "https://github.com/actions/python-versions/releases/tag/3.11.0-3328127706",
"release_url": "https://github.com/actions/python-versions/releases/tag/3.11.0-3730290910",
"files": [
{
"filename": "python-3.11.0-darwin-x64.tar.gz",
"arch": "x64",
"platform": "darwin",
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.0-3328127706/python-3.11.0-darwin-x64.tar.gz"
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.0-3730290910/python-3.11.0-darwin-x64.tar.gz"
},
{
"filename": "python-3.11.0-linux-18.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "18.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.0-3328127706/python-3.11.0-linux-18.04-x64.tar.gz"
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.0-3730290910/python-3.11.0-linux-18.04-x64.tar.gz"
},
{
"filename": "python-3.11.0-linux-20.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "20.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.0-3328127706/python-3.11.0-linux-20.04-x64.tar.gz"
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.0-3730290910/python-3.11.0-linux-20.04-x64.tar.gz"
},
{
"filename": "python-3.11.0-linux-22.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "22.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.0-3328127706/python-3.11.0-linux-22.04-x64.tar.gz"
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.0-3730290910/python-3.11.0-linux-22.04-x64.tar.gz"
},
{
"filename": "python-3.11.0-win32-x64.zip",
"arch": "x64",
"platform": "win32",
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.0-3328127706/python-3.11.0-win32-x64.zip"
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.0-3730290910/python-3.11.0-win32-x64.zip"
},
{
"filename": "python-3.11.0-win32-x86.zip",
"arch": "x86",
"platform": "win32",
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.0-3328127706/python-3.11.0-win32-x86.zip"
"download_url": "https://github.com/actions/python-versions/releases/download/3.11.0-3730290910/python-3.11.0-win32-x86.zip"
}
]
},
@@ -732,6 +824,52 @@
}
]
},
{
"version": "3.10.9",
"stable": true,
"release_url": "https://github.com/actions/python-versions/releases/tag/3.10.9-3636985951",
"files": [
{
"filename": "python-3.10.9-darwin-x64.tar.gz",
"arch": "x64",
"platform": "darwin",
"download_url": "https://github.com/actions/python-versions/releases/download/3.10.9-3636985951/python-3.10.9-darwin-x64.tar.gz"
},
{
"filename": "python-3.10.9-linux-18.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "18.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.10.9-3636985951/python-3.10.9-linux-18.04-x64.tar.gz"
},
{
"filename": "python-3.10.9-linux-20.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "20.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.10.9-3636985951/python-3.10.9-linux-20.04-x64.tar.gz"
},
{
"filename": "python-3.10.9-linux-22.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "22.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.10.9-3636985951/python-3.10.9-linux-22.04-x64.tar.gz"
},
{
"filename": "python-3.10.9-win32-x64.zip",
"arch": "x64",
"platform": "win32",
"download_url": "https://github.com/actions/python-versions/releases/download/3.10.9-3636985951/python-3.10.9-win32-x64.zip"
},
{
"filename": "python-3.10.9-win32-x86.zip",
"arch": "x86",
"platform": "win32",
"download_url": "https://github.com/actions/python-versions/releases/download/3.10.9-3636985951/python-3.10.9-win32-x86.zip"
}
]
},
{
"version": "3.10.8",
"stable": true,
@@ -1695,11 +1833,51 @@
}
]
},
{
"version": "3.9.16",
"stable": true,
"release_url": "https://github.com/actions/python-versions/releases/tag/3.9.16-3647595251",
"files": [
{
"filename": "python-3.9.16-darwin-x64.tar.gz",
"arch": "x64",
"platform": "darwin",
"download_url": "https://github.com/actions/python-versions/releases/download/3.9.16-3647595251/python-3.9.16-darwin-x64.tar.gz"
},
{
"filename": "python-3.9.16-linux-18.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "18.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.9.16-3647595251/python-3.9.16-linux-18.04-x64.tar.gz"
},
{
"filename": "python-3.9.16-linux-20.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "20.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.9.16-3647595251/python-3.9.16-linux-20.04-x64.tar.gz"
},
{
"filename": "python-3.9.16-linux-22.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "22.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.9.16-3647595251/python-3.9.16-linux-22.04-x64.tar.gz"
}
]
},
{
"version": "3.9.15",
"stable": true,
"release_url": "https://github.com/actions/python-versions/releases/tag/3.9.15-3271275280",
"files": [
{
"filename": "python-3.9.15-darwin-x64.tar.gz",
"arch": "x64",
"platform": "darwin",
"download_url": "https://github.com/actions/python-versions/releases/download/3.9.15-3271275280/python-3.9.15-darwin-x64.tar.gz"
},
{
"filename": "python-3.9.15-linux-18.04-x64.tar.gz",
"arch": "x64",
@@ -2635,6 +2813,40 @@
}
]
},
{
"version": "3.8.15",
"stable": true,
"release_url": "https://github.com/actions/python-versions/releases/tag/3.8.15-3601364564",
"files": [
{
"filename": "python-3.8.15-darwin-x64.tar.gz",
"arch": "x64",
"platform": "darwin",
"download_url": "https://github.com/actions/python-versions/releases/download/3.8.15-3601364564/python-3.8.15-darwin-x64.tar.gz"
},
{
"filename": "python-3.8.15-linux-18.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "18.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.8.15-3601364564/python-3.8.15-linux-18.04-x64.tar.gz"
},
{
"filename": "python-3.8.15-linux-20.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "20.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.8.15-3601364564/python-3.8.15-linux-20.04-x64.tar.gz"
},
{
"filename": "python-3.8.15-linux-22.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "22.04",
"download_url": "https://github.com/actions/python-versions/releases/download/3.8.15-3601364564/python-3.8.15-linux-22.04-x64.tar.gz"
}
]
},
{
"version": "3.8.14",
"stable": true,
@@ -4307,6 +4519,13 @@
"platform_version": "20.04",
"download_url": "https://github.com/actions/python-versions/releases/download/2.7.18-87224/python-2.7.18-linux-20.04-x64.tar.gz"
},
{
"filename": "python-2.7.18-linux-22.04-x64.tar.gz",
"arch": "x64",
"platform": "linux",
"platform_version": "22.04",
"download_url": "https://github.com/actions/python-versions/releases/download/2.7.18-87224/python-2.7.18-linux-22.04-x64.tar.gz"
},
{
"filename": "python-2.7.18-win32-x64.zip",
"arch": "x64",