mirror of https://github.com/ansible/ansible.git
parent
e47f53e4ff
commit
576700a8a1
@ -1,3 +0,0 @@
|
|||||||
*
|
|
||||||
!docker
|
|
||||||
!requirements
|
|
@ -1,76 +0,0 @@
|
|||||||
FROM ubuntu:16.04
|
|
||||||
|
|
||||||
COPY docker/deadsnakes.list /etc/apt/sources.list.d/deadsnakes.list
|
|
||||||
|
|
||||||
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F23C5A6CF475977595C89F51BA6932366A755776
|
|
||||||
|
|
||||||
RUN apt-get update -y && \
|
|
||||||
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
|
||||||
ca-certificates \
|
|
||||||
curl \
|
|
||||||
gcc \
|
|
||||||
git \
|
|
||||||
libbz2-dev \
|
|
||||||
libffi-dev \
|
|
||||||
libreadline-dev \
|
|
||||||
libsqlite3-dev \
|
|
||||||
libxml2-dev \
|
|
||||||
libxslt1-dev \
|
|
||||||
locales \
|
|
||||||
make \
|
|
||||||
openssh-client \
|
|
||||||
openssl \
|
|
||||||
python2.6-dev \
|
|
||||||
python2.7-dev \
|
|
||||||
python3.5-dev \
|
|
||||||
python3.6-dev \
|
|
||||||
shellcheck \
|
|
||||||
&& \
|
|
||||||
apt-get clean
|
|
||||||
|
|
||||||
ADD https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer /tmp/pyenv-installer
|
|
||||||
RUN bash -c 'PYENV_ROOT=/usr/local/opt/pyenv bash /tmp/pyenv-installer'
|
|
||||||
COPY docker/python* /tmp/
|
|
||||||
RUN bash -c 'PYENV_ROOT=/usr/local/opt/pyenv /usr/local/opt/pyenv/bin/pyenv install /tmp/python3.7.0a2'
|
|
||||||
RUN ln -s /usr/local/opt/pyenv/versions/python3.7.0a2/bin/python3.7 /usr/local/bin/python3.7
|
|
||||||
RUN ln -s /usr/local/opt/pyenv/versions/python3.7.0a2/bin/pip3.7 /usr/local/bin/pip3.7
|
|
||||||
|
|
||||||
RUN rm /etc/apt/apt.conf.d/docker-clean
|
|
||||||
RUN locale-gen en_US.UTF-8
|
|
||||||
VOLUME /sys/fs/cgroup /run/lock /run /tmp
|
|
||||||
|
|
||||||
ADD https://bootstrap.pypa.io/get-pip.py /tmp/get-pip.py
|
|
||||||
|
|
||||||
COPY requirements/*.txt /tmp/requirements/
|
|
||||||
COPY docker/requirements.sh /tmp/
|
|
||||||
RUN cd /tmp/requirements && /tmp/requirements.sh
|
|
||||||
|
|
||||||
RUN ln -s python2.7 /usr/bin/python2
|
|
||||||
RUN ln -s python3.6 /usr/bin/python3
|
|
||||||
RUN ln -s python3 /usr/bin/python
|
|
||||||
|
|
||||||
# Install dotnet core SDK, pwsh, and other PS/.NET sanity test tools.
|
|
||||||
# For now, we need to manually purge XML docs and other items from a Nuget dir to vastly reduce the image size.
|
|
||||||
# See https://github.com/dotnet/dotnet-docker/issues/237 for details.
|
|
||||||
RUN apt-get update -y && \
|
|
||||||
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
|
||||||
apt-transport-https \
|
|
||||||
&& \
|
|
||||||
apt-get clean
|
|
||||||
ADD https://packages.microsoft.com/config/ubuntu/16.04/prod.list /etc/apt/sources.list.d/microsoft.list
|
|
||||||
RUN curl --silent https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
|
|
||||||
RUN apt-get update -y && \
|
|
||||||
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
|
||||||
dotnet-sdk-2.1.4 \
|
|
||||||
powershell \
|
|
||||||
&& \
|
|
||||||
find /usr/share/dotnet/sdk/NuGetFallbackFolder/ -name '*.xml' -type f -delete \
|
|
||||||
&& \
|
|
||||||
apt-get clean
|
|
||||||
RUN dotnet --version
|
|
||||||
RUN pwsh --version
|
|
||||||
COPY requirements/sanity.ps1 /tmp/
|
|
||||||
RUN /tmp/sanity.ps1
|
|
||||||
|
|
||||||
ENV container=docker
|
|
||||||
CMD ["/sbin/init"]
|
|
@ -1,2 +0,0 @@
|
|||||||
deb http://ppa.launchpad.net/deadsnakes/ppa/ubuntu xenial main
|
|
||||||
deb-src http://ppa.launchpad.net/deadsnakes/ppa/ubuntu xenial main
|
|
@ -1,8 +0,0 @@
|
|||||||
#require_gcc
|
|
||||||
install_package "openssl-1.0.2k" "https://www.openssl.org/source/openssl-1.0.2k.tar.gz#6b3977c61f2aedf0f96367dcfb5c6e578cf37e7b8d913b4ecb6643c3cb88d8c0" mac_openssl --if has_broken_mac_openssl
|
|
||||||
install_package "readline-6.3" "https://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
|
||||||
if has_tar_xz_support; then
|
|
||||||
install_package "Python-3.7.0a2" "https://www.python.org/ftp/python/3.7.0/Python-3.7.0a2.tar.xz#3e5adaa8a264b0c8eeab7b8a0185acec053b0d1547d2712ebc915153c4a52f28" ldflags_dirs standard verify_py37 ensurepip
|
|
||||||
else
|
|
||||||
install_package "Python-3.7.0a2" "https://www.python.org/ftp/python/3.7.0/Python-3.7.0a2.tgz#e1fd8af5a80d99ab64e7754f1bdd6d8429bf82ead81c68809ce056af319577be" ldflags_dirs standard verify_py37 ensurepip
|
|
||||||
fi
|
|
@ -1,73 +0,0 @@
|
|||||||
#!/bin/bash -eu
|
|
||||||
|
|
||||||
python_versions=(
|
|
||||||
2.6
|
|
||||||
2.7
|
|
||||||
3.5
|
|
||||||
3.6
|
|
||||||
3.7
|
|
||||||
)
|
|
||||||
|
|
||||||
requirements=()
|
|
||||||
|
|
||||||
for requirement in *.txt; do
|
|
||||||
if [ "${requirement}" != "constraints.txt" ]; then
|
|
||||||
requirements+=("${requirement}")
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
for python_version in "${python_versions[@]}"; do
|
|
||||||
version_requirements=()
|
|
||||||
|
|
||||||
for requirement in "${requirements[@]}"; do
|
|
||||||
case "${python_version}" in
|
|
||||||
"2.6")
|
|
||||||
case "${requirement}" in
|
|
||||||
"integration.cloud.azure.txt") continue ;;
|
|
||||||
esac
|
|
||||||
esac
|
|
||||||
|
|
||||||
version_requirements+=("${requirement}")
|
|
||||||
done
|
|
||||||
|
|
||||||
echo "==> Installing pip for python ${python_version} ..."
|
|
||||||
|
|
||||||
set -x
|
|
||||||
"python${python_version}" --version
|
|
||||||
"python${python_version}" /tmp/get-pip.py -c constraints.txt
|
|
||||||
"pip${python_version}" --version --disable-pip-version-check
|
|
||||||
set +x
|
|
||||||
|
|
||||||
echo "==> Installing requirements for python ${python_version} ..."
|
|
||||||
|
|
||||||
for requirement in "${version_requirements[@]}"; do
|
|
||||||
set -x
|
|
||||||
"pip${python_version}" install --disable-pip-version-check -c constraints.txt -r "${requirement}"
|
|
||||||
set +x
|
|
||||||
done
|
|
||||||
|
|
||||||
echo "==> Checking for requirements conflicts for ${python_version} ..."
|
|
||||||
|
|
||||||
after=$("pip${python_version}" list --format=legacy)
|
|
||||||
|
|
||||||
for requirement in "${version_requirements[@]}"; do
|
|
||||||
before="${after}"
|
|
||||||
|
|
||||||
set -x
|
|
||||||
"pip${python_version}" install --disable-pip-version-check -c constraints.txt -r "${requirement}"
|
|
||||||
set +x
|
|
||||||
|
|
||||||
after=$("pip${python_version}" list --format=legacy)
|
|
||||||
|
|
||||||
if [ "${before}" != "${after}" ]; then
|
|
||||||
echo "==> Conflicts detected in requirements for python ${python_version}: ${requirement}"
|
|
||||||
echo ">>> Before"
|
|
||||||
echo "${before}"
|
|
||||||
echo ">>> After"
|
|
||||||
echo "${after}"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
echo "==> Finished with requirements for python ${python_version}."
|
|
||||||
done
|
|
Loading…
Reference in New Issue