Compare commits

..

39 Commits

Author SHA1 Message Date
aparnajyothi-y
ff809fd183 Update build-python-packages.yml 2024-06-19 15:40:11 +05:30
aparnajyothi-y
d61647554c Update build-python-packages.yml 2024-06-17 15:26:25 +05:30
aparnajyothi-y
34303ccc22 Update build-python-packages.yml 2024-06-14 17:46:37 +05:30
aparnajyothi-y
6de7c9a0ec Update build-python-packages.yml 2024-06-14 17:33:39 +05:30
aparnajyothi-y
465890b8c8 Update win-python-builder.psm1 2024-06-14 16:06:22 +05:30
aparnajyothi-y
0526828581 Update build-python-packages.yml 2024-06-14 15:36:35 +05:30
aparnajyothi-y
9ad4c1fcaa Update build-python-packages.yml 2024-06-14 10:31:10 +05:30
aparnajyothi-y
3f1c6125df Update build-python-packages.yml 2024-06-14 10:19:44 +05:30
aparnajyothi-y
b1d12fe818 Update build-python-packages.yml 2024-06-14 10:14:34 +05:30
aparnajyothi-y
d464ee3cc6 Update build-python-packages.yml 2024-06-14 10:12:44 +05:30
aparnajyothi-y
61e93b288d Update build-python-packages.yml 2024-06-14 10:11:48 +05:30
aparnajyothi-y
8d965711ba Update build-python-packages.yml 2024-06-14 10:05:34 +05:30
aparnajyothi-y
b228cba84e Update build-python-packages.yml 2024-06-14 09:52:27 +05:30
aparnajyothi-y
fd9b186705 Update build-python-packages.yml 2024-05-29 17:40:28 +05:30
aparnajyothi-y
a15689f2ac Update build-python-packages.yml 2024-05-29 17:18:57 +05:30
aparnajyothi-y
be0e5a895c Update build-python-packages.yml 2024-05-29 17:12:40 +05:30
aparnajyothi-y
04c0db46b5 Update build-python-packages.yml 2024-05-29 17:07:23 +05:30
aparnajyothi-y
cb822fbaf1 Update build-python-packages.yml 2024-05-29 17:04:16 +05:30
aparnajyothi-y
1d262fc400 Update build-python-packages.yml 2024-05-29 17:00:46 +05:30
aparnajyothi-y
06ec0e912f Update build-python-packages.yml 2024-05-29 16:54:45 +05:30
aparnajyothi-y
30c053652b Update build-python-packages.yml 2024-05-29 16:43:41 +05:30
aparnajyothi-y
411060a14d Update build-python-packages.yml 2024-05-29 16:41:10 +05:30
aparnajyothi-y
45c77b2a3a Update build-python-packages.yml 2024-05-29 16:39:08 +05:30
aparnajyothi-y
3af71f81fb Update build-python-packages.yml 2024-05-29 16:36:07 +05:30
aparnajyothi-y
2031f98157 Update build-python-packages.yml 2024-05-29 16:32:36 +05:30
aparnajyothi-y
ac6f4c6a01 Update build-python-packages.yml 2024-05-29 16:27:56 +05:30
aparnajyothi-y
a185c39c53 Update build-python-packages.yml 2024-05-29 16:22:49 +05:30
aparnajyothi-y
9c2e25fa64 Update build-python-packages.yml 2024-05-29 16:11:31 +05:30
aparnajyothi-y
c87f998dfb Update build-python-packages.yml 2024-05-29 16:09:05 +05:30
aparnajyothi-y
a18ca9186b Update build-python-packages.yml 2024-05-29 15:54:06 +05:30
aparnajyothi-y
12f1ddaf19 Update build-python-packages.yml 2024-05-29 15:47:10 +05:30
aparnajyothi-y
22bd58f5ab Update build-python-packages.yml 2024-05-29 15:30:12 +05:30
aparnajyothi-y
91d36e5783 Update build-python-packages.yml 2024-05-29 15:28:53 +05:30
aparnajyothi-y
567e9060f4 Update build-python-packages.yml 2024-05-29 15:19:31 +05:30
aparnajyothi-y
10da5bd845 Update build-python-packages.yml 2024-05-29 15:15:29 +05:30
aparnajyothi-y
b6f9ad0531 Update build-python-packages.yml 2024-05-29 15:13:15 +05:30
aparnajyothi-y
0d0f3060e3 Update build-python-packages.yml 2024-05-29 15:03:12 +05:30
aparnajyothi-y
948f51aaf0 Update build-python-packages.yml 2024-05-29 14:58:10 +05:30
aparnajyothi-y
43b4fed22f Update build-python-packages.yml 2024-05-29 14:52:21 +05:30
7 changed files with 438 additions and 2195 deletions

View File

@@ -15,7 +15,7 @@ on:
PLATFORMS:
description: 'Platforms for execution in "os" or "os_arch" format (arch is "x64" by default)'
required: true
default: 'ubuntu-20.04,ubuntu-22.04,ubuntu-22.04_arm64,ubuntu-24.04,ubuntu-24.04_arm64,macos-12_x64,macos-14_arm64,windows-2019_x64,windows-2019_x86,windows-2019_arm64'
default: 'ubuntu-20.04,ubuntu-20.04_arm64,ubuntu-22.04,ubuntu-22.04_arm64,ubuntu-24.04,ubuntu-24.04_arm64,macos-11_x64,macos-14_arm64,windows-2019_x64,windows-2019_x86'
pull_request:
paths-ignore:
- 'versions-manifest.json'
@@ -39,9 +39,8 @@ jobs:
- name: Generate execution matrix
id: generate-matrix
run: |
[String[]]$configurations = "${{ inputs.platforms || 'ubuntu-20.04,ubuntu-22.04,ubuntu-22.04_arm64,ubuntu-24.04,ubuntu-24.04_arm64,macos-12,macos-14_arm64,windows-2019_x64,windows-2019_x86,windows-2019_arm64' }}".Split(",").Trim()
[String[]]$configurations = "${{ inputs.platforms || 'ubuntu-20.04,ubuntu-20.04_arm64,ubuntu-22.04,ubuntu-22.04_arm64,ubuntu-24.04,ubuntu-24.04_arm64,macos-11,macos-14_arm64,windows-2019_x64,windows-2019_x86' }}".Split(",").Trim()
$matrix = @()
foreach ($configuration in $configurations) {
$parts = $configuration.Split("_")
$os = $parts[0]
@@ -51,17 +50,6 @@ jobs:
"*macos*" { $platform = 'darwin' }
"*windows*" { $platform = 'win32' }
}
if ($configuration -eq "ubuntu-22.04_arm64") {
$os = "setup-actions-ubuntu-arm64-2-core"
}
elseif ($configuration -eq "ubuntu-24.04_arm64") {
$os = "setup-actions-ubuntu24-arm64-2-core"
}
elseif ($configuration -eq "windows-2019_arm64") {
$os = "setup-actions-windows-arm64-4-core"
}
$matrix += @{
'platform' = $platform
'os' = $os
@@ -69,7 +57,6 @@ jobs:
}
}
echo "matrix=$($matrix | ConvertTo-Json -Compress -AsArray)" >> $env:GITHUB_OUTPUT
build_python:
needs: generate_matrix
strategy:
@@ -80,40 +67,60 @@ jobs:
env:
ARTIFACT_NAME: python-${{ inputs.VERSION || '3.12.3' }}-${{ matrix.platform }}-${{ matrix.arch }}
steps:
- name: Setup Environment on Windows ARM64 Runner
if: matrix.os == 'setup-actions-windows-arm64-4-core'
- name: Install Chocolatey
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
shell: powershell
run: |
# Install Chocolatey
Set-ExecutionPolicy Bypass -Scope Process -Force
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
echo "C:\ProgramData\Chocolatey\bin" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
# Install PowerShell
choco install powershell-core -y
echo "C:\Program Files\PowerShell\7" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
# Install Git
choco install git -y
echo "C:\Program Files\Git\cmd" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
# Install 7-Zip
choco install 7zip -y
echo "C:\ProgramData\chocolatey\bin" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
Set-ExecutionPolicy Bypass -Scope Process -Force
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
echo "C:\ProgramData\Chocolatey\bin" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
- name: Install PowerShell
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
shell: cmd
run: |
choco install powershell-core -y
- name: Add PowerShell to PATH
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
shell: powershell
run: |
echo "C:\Program Files\PowerShell\7" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
- name: Install Git
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
shell: cmd
run: |
choco install git -y
- name: Add Git to PATH
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
shell: powershell
run: |
echo "C:\Program Files\Git\cmd" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
- name: Check git version
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
run: |
git --version
- name: Check out repository code
uses: actions/checkout@v4
with:
submodules: true
- name: Install 7-Zip
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
shell: cmd
run: |
choco install 7zip -y
- name: Add 7-Zip to PATH
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
shell: powershell
run: |
echo "C:\ProgramData\chocolatey\bin" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
- name: Build Python ${{ env.VERSION }}
run: |
./builders/build-python.ps1 -Version $env:VERSION `
-Platform ${{ matrix.platform }} -Architecture ${{ matrix.arch }}
- name: Publish artifact
uses: actions/upload-artifact@v4
with:
@@ -131,29 +138,40 @@ jobs:
env:
ARTIFACT_NAME: python-${{ inputs.VERSION || '3.12.3' }}-${{ matrix.platform }}-${{ matrix.arch }}
steps:
- name: Setup Environment on Windows ARM64 Runner
if: matrix.os == 'setup-actions-windows-arm64-4-core'
- name: Install Chocolatey
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
shell: powershell
run: |
# Install Chocolatey
Set-ExecutionPolicy Bypass -Scope Process -Force
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
echo "C:\ProgramData\Chocolatey\bin" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
# Install PowerShell
choco install powershell-core -y
echo "C:\Program Files\PowerShell\7" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
# Install Git
choco install git -y
echo "C:\Program Files\Git\cmd" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
# Install 7-Zip
choco install 7zip -y
echo "C:\ProgramData\chocolatey\bin" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
Set-ExecutionPolicy Bypass -Scope Process -Force
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
echo "C:\ProgramData\Chocolatey\bin" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
- name: Install PowerShell
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
shell: cmd
run: |
choco install powershell-core -y
- name: Add PowerShell to PATH
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
shell: powershell
run: |
echo "C:\Program Files\PowerShell\7" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
- name: Install Git
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
shell: cmd
run: |
choco install git -y
- name: Add Git to PATH
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
shell: powershell
run: |
echo "C:\Program Files\Git\cmd" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
- name: Check git version
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
run: |
git --version
- name: Check out repository code
uses: actions/checkout@v4
with:
@@ -173,6 +191,15 @@ jobs:
name: ${{ env.ARTIFACT_NAME }}
path: ${{ runner.temp }}/${{ env.ARTIFACT_NAME }}
- name: Install 7-Zip
if: runner.os == 'Windows' && runner.architecture == 'ARM64'
shell: cmd
run: |
choco install 7zip -y
- name: Add 7-Zip to PATH
shell: powershell
run: |
echo "C:\ProgramData\chocolatey\bin" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
- name: Extract files
run: |
if ('${{ matrix.platform }}' -eq 'win32') {
@@ -211,7 +238,6 @@ jobs:
run: |
$pythonLocation = which python
if ('${{ matrix.platform }}' -eq 'darwin') { otool -L $pythonLocation } else { ldd $pythonLocation }
- name: Run tests
run: |
Install-Module Pester -Force -Scope CurrentUser -SkipPublisherCheck
@@ -246,7 +272,6 @@ jobs:
release_name: ${{ env.VERSION }}
body: |
Python ${{ env.VERSION }}
- name: Generate hash for packages
run: |
$childItems = Get-Childitem -Path '.'

View File

@@ -13,5 +13,4 @@ jobs:
name: CodeQL analysis
uses: actions/reusable-workflows/.github/workflows/codeql-analysis.yml@main
with:
languages: '["python"]'
languages: "['python']"

View File

@@ -97,7 +97,6 @@ class NixPythonBuilder : PythonBuilder {
$variablesToReplace = @{
"{{__VERSION_FULL__}}" = $this.Version;
"{{__ARCH__}}" = $this.Architecture;
}
$variablesToReplace.keys | ForEach-Object { $installationTemplateContent = $installationTemplateContent.Replace($_, $variablesToReplace[$_]) }

View File

@@ -64,6 +64,7 @@ class WinPythonBuilder : PythonBuilder {
$ArchitectureExtension = "-arm64"
}
return $ArchitectureExtension
}

View File

@@ -1,7 +1,6 @@
set -e
PYTHON_FULL_VERSION="{{__VERSION_FULL__}}"
ARCH="{{__ARCH__}}"
MAJOR_VERSION=$(echo $PYTHON_FULL_VERSION | cut -d '.' -f 1)
MINOR_VERSION=$(echo $PYTHON_FULL_VERSION | cut -d '.' -f 2)
@@ -18,7 +17,7 @@ fi
PYTHON_TOOLCACHE_PATH=$TOOLCACHE_ROOT/Python
PYTHON_TOOLCACHE_VERSION_PATH=$PYTHON_TOOLCACHE_PATH/$PYTHON_FULL_VERSION
PYTHON_TOOLCACHE_VERSION_ARCH_PATH=$PYTHON_TOOLCACHE_VERSION_PATH/$ARCH
PYTHON_TOOLCACHE_VERSION_ARCH_PATH=$PYTHON_TOOLCACHE_VERSION_PATH/x64
echo "Check if Python hostedtoolcache folder exist..."
if [ ! -d $PYTHON_TOOLCACHE_PATH ]; then
@@ -55,4 +54,4 @@ export PIP_ROOT_USER_ACTION=ignore
./python -m pip install --upgrade --force-reinstall pip --disable-pip-version-check --no-warn-script-location
echo "Create complete file"
touch $PYTHON_TOOLCACHE_VERSION_PATH/$ARCH.complete
touch $PYTHON_TOOLCACHE_VERSION_PATH/x64.complete

View File

@@ -28,7 +28,7 @@ if os_type == 'Darwin': expected_ld_library_extension = 'dylib'
if pkg_installer:
expected_lib_dir_path = f'/Library/Frameworks/Python.framework/Versions/{version_major}.{version_minor}/lib'
else:
expected_lib_dir_path = f'{os.getenv("AGENT_TOOLSDIRECTORY")}/Python/{version}/{architecture}/lib'
expected_lib_dir_path = f'{os.getenv("AGENT_TOOLSDIRECTORY")}/Python/{version}/x64/lib'
# Check modules
### Validate libraries path

File diff suppressed because it is too large Load Diff