summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--docker/pip/amd64.dockerfile23
-rw-r--r--docker/pip/arm64.dockerfile23
-rwxr-xr-xdocker/pip/build.sh13
4 files changed, 60 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index 6ce2716..e224808 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@
/docs/book/
/cmd/cli/configs/
/ci/docker/selfsigned/
+/docker/pip/out/
diff --git a/docker/pip/amd64.dockerfile b/docker/pip/amd64.dockerfile
new file mode 100644
index 0000000..27bbb8b
--- /dev/null
+++ b/docker/pip/amd64.dockerfile
@@ -0,0 +1,23 @@
+FROM quay.io/pypa/manylinux_2_28_x86_64
+
+RUN yum install -y golang python3 python3-setuptools python3-wheel wget
+
+WORKDIR /pip
+
+ARG COMMONVERSION
+
+RUN wget -O eduvpn-common.tar.xz https://github.com/eduvpn/eduvpn-common/releases/download/$COMMONVERSION/eduvpn-common-$COMMONVERSION.tar.xz
+RUN tar xf eduvpn-common.tar.xz
+
+WORKDIR /pip/eduvpn-common-$COMMONVERSION
+
+RUN CGO_ENABLED=1 go build -buildvcs=false -o lib/linux/amd64/libeduvpn_common-$COMMONVERSION.so -buildmode=c-shared ./exports
+
+WORKDIR /pip/eduvpn-common-$COMMONVERSION/wrappers/python
+
+RUN ./setup.py bdist_wheel --exports-lib-path="../../lib"
+
+RUN auditwheel repair dist/*
+
+RUN mkdir /wheelhouse
+RUN cp -r wheelhouse/* /wheelhouse \ No newline at end of file
diff --git a/docker/pip/arm64.dockerfile b/docker/pip/arm64.dockerfile
new file mode 100644
index 0000000..47a832b
--- /dev/null
+++ b/docker/pip/arm64.dockerfile
@@ -0,0 +1,23 @@
+FROM quay.io/pypa/manylinux_2_28_aarch64
+
+RUN yum install -y golang python3 python3-setuptools python3-wheel wget
+
+WORKDIR /pip
+
+ARG COMMONVERSION
+
+RUN wget -O eduvpn-common.tar.xz https://github.com/eduvpn/eduvpn-common/releases/download/$COMMONVERSION/eduvpn-common-$COMMONVERSION.tar.xz
+RUN tar xf eduvpn-common.tar.xz
+
+WORKDIR /pip/eduvpn-common-$COMMONVERSION
+
+RUN CGO_ENABLED=1 go build -buildvcs=false -o lib/linux/arm64/libeduvpn_common-$COMMONVERSION.so -buildmode=c-shared ./exports
+
+WORKDIR /pip/eduvpn-common-$COMMONVERSION/wrappers/python
+
+RUN ./setup.py bdist_wheel --exports-lib-path="../../lib"
+
+RUN auditwheel repair dist/*
+
+RUN mkdir /wheelhouse
+RUN cp -r wheelhouse/* /wheelhouse \ No newline at end of file
diff --git a/docker/pip/build.sh b/docker/pip/build.sh
new file mode 100755
index 0000000..6a9a6f0
--- /dev/null
+++ b/docker/pip/build.sh
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+VERSION=$(git tag | sort -V | tail -1)
+mkdir -p out/"$VERSION"
+
+# amd64
+sudo docker build --build-arg COMMONVERSION="$VERSION" -f amd64.dockerfile -t common-pip-amd64 .
+sudo docker run -v "$PWD"/out/"$VERSION":/io --rm -ti common-pip-amd64 bash -c "cp /wheelhouse/* /io"
+
+# arm64
+sudo docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
+sudo docker build --build-arg COMMONVERSION="$VERSION" -f arm64.dockerfile -t common-pip-arm64 .
+sudo docker run -v "$PWD"/out/"$VERSION":/io --rm -ti common-pip-arm64 bash -c "cp /wheelhouse/* /io"