mirror of
https://github.com/certbot/certbot.git
synced 2026-06-05 14:54:24 -04:00
48 lines
1.7 KiB
Docker
48 lines
1.7 KiB
Docker
# For running tests, build a docker image with a passwordless sudo and a trust
|
|
# store we can manipulate.
|
|
|
|
ARG REDHAT_DIST_FLAVOR
|
|
FROM ${REDHAT_DIST_FLAVOR}:6
|
|
|
|
ARG REDHAT_DIST_FLAVOR
|
|
|
|
RUN curl -O https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm \
|
|
&& rpm -ivh epel-release-latest-6.noarch.rpm
|
|
|
|
# Install pip and sudo:
|
|
RUN yum install -y python-pip sudo
|
|
# Update to a stable and tested version of pip.
|
|
# We do not use pipstrap here because it no longer supports Python 2.6.
|
|
RUN pip install pip==9.0.1 setuptools==29.0.1 wheel==0.29.0
|
|
# Pin pytest version for increased stability
|
|
RUN pip install pytest==3.2.5 six==1.10.0
|
|
|
|
# Add an unprivileged user:
|
|
RUN useradd --create-home --home-dir /home/lea --shell /bin/bash --groups wheel --uid 1000 lea
|
|
|
|
# Let that user sudo:
|
|
RUN sed -i.bkp -e \
|
|
's/# %wheel\(NOPASSWD: ALL\)\?/%wheel/g' \
|
|
/etc/sudoers
|
|
|
|
RUN mkdir -p /home/lea/certbot
|
|
|
|
# Install fake testing CA:
|
|
COPY ./tests/certs/ca/my-root-ca.crt.pem /usr/local/share/ca-certificates/
|
|
RUN update-ca-trust
|
|
|
|
# Copy current letsencrypt-auto:
|
|
COPY . /home/lea/certbot/letsencrypt-auto-source
|
|
|
|
# Fetch previous letsencrypt-auto that was installing python 3.4
|
|
RUN curl https://raw.githubusercontent.com/certbot/certbot/v0.38.0/letsencrypt-auto-source/letsencrypt-auto \
|
|
-o /home/lea/certbot/letsencrypt-auto-source/letsencrypt-auto_py_34 \
|
|
&& chmod +x /home/lea/certbot/letsencrypt-auto-source/letsencrypt-auto_py_34
|
|
|
|
RUN cp /home/lea/certbot/letsencrypt-auto-source/tests/${REDHAT_DIST_FLAVOR}6_tests.sh /home/lea/certbot/letsencrypt-auto-source/tests/redhat6_tests.sh \
|
|
&& chmod +x /home/lea/certbot/letsencrypt-auto-source/tests/redhat6_tests.sh
|
|
|
|
USER lea
|
|
WORKDIR /home/lea
|
|
|
|
CMD ["sudo", "certbot/letsencrypt-auto-source/tests/redhat6_tests.sh"]
|