46 lines
1.2 KiB
Bash
46 lines
1.2 KiB
Bash
#!/usr/bin/env bash
|
|
#
|
|
# This script installs PyPy as a Python interpreter on a Flatcar instance.
|
|
|
|
set -o errexit
|
|
set -o nounset
|
|
set -o pipefail
|
|
|
|
[[ -n ${DEBUG:-} ]] && set -o xtrace
|
|
|
|
BINDIR="/opt/bin"
|
|
BUILDER_ENV="/opt/bin/builder-env"
|
|
|
|
set -x
|
|
|
|
mkdir -p ${BINDIR}
|
|
|
|
cd ${BINDIR}
|
|
|
|
if [[ -e ${BINDIR}/.bootstrapped ]]; then
|
|
exit 0
|
|
fi
|
|
|
|
PYPY_VERSION=7.2.0
|
|
PYTHON3_VERSION=3.6
|
|
|
|
curl -sfL https://github.com/squeaky-pl/portable-pypy/releases/download/pypy-${PYPY_VERSION}/pypy-${PYPY_VERSION}-linux_x86_64-portable.tar.bz2 | tar -xjf -
|
|
mv -n pypy-${PYPY_VERSION}-linux_x86_64-portable pypy2
|
|
ln -s ./pypy2/bin/pypy python2
|
|
ln -s ./pypy2/bin/pypy python
|
|
|
|
curl -sfL https://github.com/squeaky-pl/portable-pypy/releases/download/pypy${PYTHON3_VERSION}-${PYPY_VERSION}/pypy${PYTHON3_VERSION}-${PYPY_VERSION}-linux_x86_64-portable.tar.bz2 | tar -xjf -
|
|
mv -n pypy${PYTHON3_VERSION}-${PYPY_VERSION}-linux_x86_64-portable pypy3
|
|
ln -s ./pypy3/bin/pypy3 python3
|
|
|
|
${BINDIR}/python --version
|
|
|
|
${BINDIR}/pypy2/bin/virtualenv-pypy ${BUILDER_ENV}
|
|
chown -R core ${BUILDER_ENV}
|
|
|
|
ln -s builder-env/bin/pip ${BINDIR}/pip
|
|
# need to have symlink pip3 required by ansible/roles/providers/tasks/aws.yml
|
|
ln -s builder-env/bin/pip ${BINDIR}/pip3
|
|
|
|
touch ${BINDIR}/.bootstrapped
|