Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 686942a

Browse filesBrowse files
committed
Improve Python package build process
- Update ubuntu-postgresml-python-package workflow with better Python setup - Add workflow_call support to make it callable from main workflow - Change main workflow to use reusable workflow for Python package build - Addresses dependency issues with Python build for Ubuntu 24.04
1 parent 8ced585 commit 686942a
Copy full SHA for 686942a

File tree

2 files changed

+34
-36
lines changed
Filter options

2 files changed

+34
-36
lines changed

‎.github/workflows/ubuntu-packages-and-docker-image.yml

Copy file name to clipboardExpand all lines: .github/workflows/ubuntu-packages-and-docker-image.yml
+4-35Lines changed: 4 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -10,41 +10,10 @@ jobs:
1010
# PostgresML Python package.
1111
#
1212
postgresml-python:
13-
strategy:
14-
fail-fast: false
15-
matrix:
16-
os: ["ubuntu-22.04", "buildjet-4vcpu-ubuntu-2204-arm"]
17-
ubuntu_version: ["20.04", "22.04", "24.04"]
18-
runs-on: ${{ matrix.os }}
19-
steps:
20-
- uses: actions/checkout@v3
21-
- name: Build and release Python package
22-
env:
23-
AWS_ACCESS_KEY_ID: ${{ vars.AWS_ACCESS_KEY_ID }}
24-
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
25-
AWS_DEFAULT_REGION: ${{ vars.AWS_DEFAULT_REGION }}
26-
UBUNTU_VERSION: ${{ matrix.ubuntu_version }}
27-
run: |
28-
sudo apt update
29-
sudo apt install -y python3-dev python3-pip python3-virtualenv software-properties-common python3-wheel-whl python3-pip-whl python3-setuptools-whl
30-
31-
# Add deadsnakes PPA for all Python versions
32-
sudo add-apt-repository -y ppa:deadsnakes/ppa
33-
sudo apt update
34-
35-
# Install specific Python versions based on Ubuntu target
36-
if [[ "$UBUNTU_VERSION" == "20.04" ]]; then
37-
sudo apt install -y python3.8 python3.8-dev python3.8-venv
38-
elif [[ "$UBUNTU_VERSION" == "22.04" ]]; then
39-
sudo apt install -y python3.10 python3.10-dev python3.10-venv
40-
elif [[ "$UBUNTU_VERSION" == "24.04" ]]; then
41-
sudo apt install -y python3.12 python3.12-dev python3.12-venv
42-
fi
43-
44-
# Install PyTorch before running the build script to satisfy auto_gptq's requirements
45-
pip install torch --user
46-
47-
bash packages/postgresml-python/release.sh ${{ inputs.packageVersion }} ${{ matrix.ubuntu_version }}
13+
uses: ./.github/workflows/ubuntu-postgresml-python-package.yaml
14+
with:
15+
packageVersion: ${{ inputs.packageVersion }}
16+
secrets: inherit
4817

4918
#
5019
# PostgresML extension.

‎.github/workflows/ubuntu-postgresml-python-package.yaml

Copy file name to clipboardExpand all lines: .github/workflows/ubuntu-postgresml-python-package.yaml
+30-1Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,13 @@ on:
44
workflow_dispatch:
55
inputs:
66
packageVersion:
7-
default: "2.8.4"
7+
default: "2.10.0"
8+
workflow_call:
9+
inputs:
10+
packageVersion:
11+
type: string
12+
required: true
13+
default: "2.10.0"
814

915
jobs:
1016
postgresml-python:
@@ -21,5 +27,28 @@ jobs:
2127
AWS_ACCESS_KEY_ID: ${{ vars.AWS_ACCESS_KEY_ID }}
2228
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
2329
AWS_DEFAULT_REGION: ${{ vars.AWS_DEFAULT_REGION }}
30+
UBUNTU_VERSION: ${{ matrix.ubuntu_version }}
2431
run: |
32+
sudo apt update
33+
sudo apt install -y python3-dev python3-pip python3-virtualenv software-properties-common python3-wheel-whl python3-pip-whl python3-setuptools-whl
34+
35+
# Add deadsnakes PPA for all Python versions
36+
sudo add-apt-repository -y ppa:deadsnakes/ppa
37+
sudo apt update
38+
39+
# Install specific Python versions based on Ubuntu target
40+
if [[ "$UBUNTU_VERSION" == "20.04" ]]; then
41+
sudo apt install -y python3.8 python3.8-dev python3.8-venv
42+
elif [[ "$UBUNTU_VERSION" == "22.04" ]]; then
43+
sudo apt install -y python3.10 python3.10-dev python3.10-venv
44+
elif [[ "$UBUNTU_VERSION" == "24.04" ]]; then
45+
sudo apt install -y python3.12 python3.12-dev python3.12-venv
46+
fi
47+
48+
# Ensure pip is updated
49+
python3 -m pip install --upgrade pip setuptools wheel
50+
51+
# Install PyTorch globally before running the build script
52+
sudo python3 -m pip install torch
53+
2554
bash packages/postgresml-python/release.sh ${{ inputs.packageVersion }} ${{ matrix.ubuntu_version }}

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.