Skip to content

Commit 82869e5

Browse files
authored
Fix deb again (#545)
1 parent efce953 commit 82869e5

File tree

1 file changed

+102
-17
lines changed

1 file changed

+102
-17
lines changed

.github/workflows/package-extension.yml

Lines changed: 102 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -10,29 +10,117 @@ jobs:
1010
build:
1111
strategy:
1212
matrix:
13-
os: [ubuntu-latest]
13+
os: ["ubuntu-22.04"]
1414
runs-on: ${{ matrix.os }}
1515
defaults:
1616
run:
1717
working-directory: pgml-extension
1818
steps:
1919
- uses: actions/checkout@v3
20+
- uses: actions-rs/toolchain@v1
21+
with:
22+
toolchain: stable
23+
- name: Validate cargo is working
24+
uses: postgresml/gh-actions-cargo@master
25+
with:
26+
working-directory: pgml-extension
27+
command: version
2028
- name: Install dependencies
29+
env:
30+
DEBIAN_FRONTEND: noninteractive
31+
TZ: Etc/UTC
2132
run: |
33+
git submodule update --init --recursive
34+
35+
# PostgreSQL apt
36+
curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/apt.postgresql.org.gpg >/dev/null
37+
sudo sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
38+
39+
sudo apt-get install -y software-properties-common
40+
sudo add-apt-repository ppa:apt-fast/stable --yes
41+
sudo add-apt-repository ppa:deadsnakes/ppa --yes
2242
sudo apt update
23-
sudo apt install -y ruby curl
43+
44+
sudo apt-get install -y apt-fast
45+
sudo apt-get update && sudo apt-fast install -y \
46+
libopenblas-dev \
47+
libssl-dev \
48+
bison \
49+
flex \
50+
pkg-config \
51+
cmake \
52+
libreadline-dev \
53+
libz-dev \
54+
curl \
55+
lsb-release \
56+
tzdata \
57+
sudo \
58+
cmake \
59+
libpq-dev \
60+
libclang-dev \
61+
wget \
62+
postgresql-15 \
63+
postgresql-14 \
64+
postgresql-13 \
65+
postgresql-12 \
66+
postgresql-11 \
67+
postgresql-server-dev-15 \
68+
postgresql-server-dev-14 \
69+
postgresql-server-dev-13 \
70+
postgresql-server-dev-12 \
71+
postgresql-server-dev-11 \
72+
lsb-release \
73+
python3.10 \
74+
python3-pip \
75+
libpython3.10-dev \
76+
python3.10-dev \
77+
ruby
78+
2479
curl -sLO https://github.com/deb-s3/deb-s3/releases/download/0.11.4/deb-s3-0.11.4.gem
2580
sudo gem install deb-s3-0.11.4.gem
26-
git submodule update --init --recursive
27-
chmod 777 . -R
2881
dpkg-deb --version
29-
- name: Build package
30-
run: |
31-
docker run -v $(pwd):/app ghcr.io/postgresml/postgresml-builder:latest bash -c '$HOME/.cargo/bin/cargo pgx package --pg-config /usr/lib/postgresql/11/bin/pg_config'
32-
docker run -v $(pwd):/app ghcr.io/postgresml/postgresml-builder:latest bash -c '$HOME/.cargo/bin/cargo pgx package --pg-config /usr/lib/postgresql/12/bin/pg_config'
33-
docker run -v $(pwd):/app ghcr.io/postgresml/postgresml-builder:latest bash -c '$HOME/.cargo/bin/cargo pgx package --pg-config /usr/lib/postgresql/13/bin/pg_config'
34-
docker run -v $(pwd):/app ghcr.io/postgresml/postgresml-builder:latest bash -c '$HOME/.cargo/bin/cargo pgx package --pg-config /usr/lib/postgresql/14/bin/pg_config'
35-
docker run -v $(pwd):/app ghcr.io/postgresml/postgresml-builder:latest bash -c '$HOME/.cargo/bin/cargo pgx package --pg-config /usr/lib/postgresql/15/bin/pg_config'
82+
- name: Install pgx
83+
uses: postgresml/gh-actions-cargo@master
84+
with:
85+
working-directory: pgml-extension
86+
command: install
87+
args: cargo-pgx --version "0.7.1"
88+
- name: pgx init
89+
uses: postgresml/gh-actions-cargo@master
90+
with:
91+
working-directory: pgml-extension
92+
command: pgx
93+
args: init --pg11=/usr/lib/postgresql/11/bin/pg_config --pg12=/usr/lib/postgresql/12/bin/pg_config --pg13=/usr/lib/postgresql/13/bin/pg_config --pg14=/usr/lib/postgresql/14/bin/pg_config --pg15=/usr/lib/postgresql/15/bin/pg_config
94+
- name: Build Postgres 11
95+
uses: postgresml/gh-actions-cargo@master
96+
with:
97+
working-directory: pgml-extension
98+
command: pgx
99+
args: package --pg-config /usr/lib/postgresql/11/bin/pg_config
100+
- name: Build Postgres 12
101+
uses: postgresml/gh-actions-cargo@master
102+
with:
103+
working-directory: pgml-extension
104+
command: pgx
105+
args: package --pg-config /usr/lib/postgresql/12/bin/pg_config
106+
- name: Build Postgres 13
107+
uses: postgresml/gh-actions-cargo@master
108+
with:
109+
working-directory: pgml-extension
110+
command: pgx
111+
args: package --pg-config /usr/lib/postgresql/13/bin/pg_config
112+
- name: Build Postgres 14
113+
uses: postgresml/gh-actions-cargo@master
114+
with:
115+
working-directory: pgml-extension
116+
command: pgx
117+
args: package --pg-config /usr/lib/postgresql/14/bin/pg_config
118+
- name: Build Postgres 15
119+
uses: postgresml/gh-actions-cargo@master
120+
with:
121+
working-directory: pgml-extension
122+
command: pgx
123+
args: package --pg-config /usr/lib/postgresql/15/bin/pg_config
36124
- name: Build debs
37125
env:
38126
AWS_ACCESS_KEY_ID: ${{ vars.AWS_ACCESS_KEY_ID }}
@@ -44,15 +132,12 @@ jobs:
44132
export PGVERSION=${pg}
45133
export ARCH=amd64
46134
47-
# Fix permissions
48-
sudo chown -R ${USER}:${USER} target/release
49-
50135
mkdir -p target/release/pgml-pg${pg}/DEBIAN
51136
(cat control | envsubst) > target/release/pgml-pg${pg}/DEBIAN/control
52-
dpkg-deb --build target/release/pgml-pg${pg} postgresql-pgml-${pg}_${PACKAGE_VERSION}-ubuntu1-amd64.deb
137+
dpkg-deb --root-owner-group --build target/release/pgml-pg${pg} postgresql-pgml-${pg}_${PACKAGE_VERSION}-ubuntu22.04-amd64.deb
53138
54139
deb-s3 upload \
55140
--bucket apt.postgresml.org \
56-
postgresql-pgml-${pg}_${PACKAGE_VERSION}-ubuntu1-amd64.deb \
57-
--codename jammy
141+
postgresql-pgml-${pg}_${PACKAGE_VERSION}-ubuntu22.04-amd64.deb \
142+
--codename $(lsb_release -cs)
58143
done

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy