File tree Expand file tree Collapse file tree 3 files changed +79
-1
lines changed Expand file tree Collapse file tree 3 files changed +79
-1
lines changed Original file line number Diff line number Diff line change @@ -111,6 +111,44 @@ jobs:
111111 command : |
112112 twine upload --skip-existing -u $PYPI_USER -p $PYPI_PASSWORD dist/* wheelhouse/*
113113
114+ manylinux2014-aarch64 :
115+ machine :
116+ image : ubuntu-2004:202101-01
117+ resource_class : arm.medium
118+ steps :
119+ - checkout
120+ - python/load-cache :
121+ key : manylinuxdepsv6-{{ .Branch }}.{{ arch }}
122+ dependency-file : requirements_dev.txt
123+ - run :
124+ name : Git LFS
125+ command : |
126+ curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
127+ sudo apt-get install git-lfs
128+ git lfs install
129+ git lfs pull
130+ - run :
131+ name : Deps
132+ command : |
133+ sudo apt-get install python3-pip
134+ pip3 install -U pip
135+ pip3 install twine
136+ which twine
137+ - python/save-cache :
138+ key : manylinuxdepsv6-{{ .Branch }}.{{ arch }}
139+ dependency-file : requirements_dev.txt
140+ - run :
141+ name : Build Wheels
142+ command : |
143+ if [[ -z "${CIRCLE_PULL_REQUEST}" ]]; then
144+ docker login -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD" ;
145+ fi
146+ ./ci/travis/build-manylinux.sh
147+ - run :
148+ name : Upload Wheels
149+ command : |
150+ twine upload --skip-existing -u $PYPI_USER -p $PYPI_PASSWORD dist/* wheelhouse/*
151+
114152workflows :
115153 version : 2.1
116154 main :
@@ -132,6 +170,13 @@ workflows:
132170 only : /.*/
133171 branches :
134172 ignore : /.*/
173+ - manylinux2014-aarch64 :
174+ context : Docker
175+ filters :
176+ tags :
177+ only : /.*/
178+ branches :
179+ ignore : /.*/
135180 - osx :
136181 matrix :
137182 parameters :
Original file line number Diff line number Diff line change 1+ FROM quay.io/pypa/manylinux2014_aarch64
2+
3+ ENV OPENSSL openssl-1.1.1g
4+ ENV SYSTEM_LIBSSH2 1
5+ ENV LIBSSH2_VERSION 1.9.0
6+
7+ RUN yum install zlib-devel -y
8+
9+ ADD libssh2-${LIBSSH2_VERSION}.tar.gz libssh2-${LIBSSH2_VERSION}.tar.gz
10+ ADD https://www.openssl.org/source/${OPENSSL}.tar.gz ${OPENSSL}.tar.gz
11+
12+ RUN tar -xzf ${OPENSSL}.tar.gz
13+ # Openssl
14+ RUN cd ${OPENSSL} && \
15+ ./config --prefix=/usr --openssldir=/usr/openssl threads shared && \
16+ make -j4 && make install
17+
18+ # Libssh2
19+ RUN mkdir -p build_libssh2 && cd build_libssh2 && \
20+ cmake ../libssh2-${LIBSSH2_VERSION}.tar.gz/libssh2-libssh2-${LIBSSH2_VERSION} \
21+ -DBUILD_SHARED_LIBS=ON -DENABLE_ZLIB_COMPRESSION=ON \
22+ -DENABLE_CRYPT_NONE=ON -DENABLE_MAC_NONE=ON -DCMAKE_INSTALL_PREFIX=/usr && \
23+ cmake --build . --config Release --target install
24+
25+ RUN rm -rf ${OPENSSL}* build_libssh2 libssh2.tar.gz
26+
27+ VOLUME /var/cache
Original file line number Diff line number Diff line change 11#! /bin/bash -xe
22
33docker_tag=" parallelssh/ssh2-manylinux"
4+ docker_file=" ci/docker/manylinux/Dockerfile"
45
56rm -rf build ssh2/libssh2.*
67python ci/appveyor/fix_version.py .
78
9+ if [[ ` uname -m` == " aarch64" ]]; then
10+ docker_tag=${docker_tag} -aarch64
11+ docker_file=${docker_file} .aarch64
12+ fi
13+
814docker pull $docker_tag || echo
9- docker build --cache-from $docker_tag ci/docker/manylinux -t $docker_tag
15+ docker build --cache-from $docker_tag ci/docker/manylinux -t $docker_tag -f ${docker_file}
1016if [[ " $TRAVIS_PULL_REQUEST " == " false" ]]; then docker push $docker_tag ; fi
1117docker run -e TRAVIS_TAG=" $TRAVIS_TAG " --rm -v ` pwd` :/io $docker_tag /io/ci/travis/build-wheels.sh
1218ls wheelhouse/
You can’t perform that action at this time.
0 commit comments