mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2025-02-20 17:52:50 +00:00
Have a go at converting CentOS
This commit is contained in:
parent
273e4ca226
commit
302292366a
25
.circleci/Dockerfile.centos-7
Normal file
25
.circleci/Dockerfile.centos-7
Normal file
@ -0,0 +1,25 @@
|
||||
FROM centos:7
|
||||
|
||||
ENV WHEELHOUSE_PATH /tmp/wheelhouse
|
||||
ENV VIRTUALENV_PATH /tmp/venv
|
||||
# This will get updated by the CircleCI checkout step.
|
||||
ENV BUILD_SRC_ROOT /tmp/project
|
||||
|
||||
# XXX net-tools is actually a Tahoe-LAFS runtime dependency!
|
||||
RUN yum install --assumeyes \
|
||||
git \
|
||||
sudo \
|
||||
make automake gcc gcc-c++ \
|
||||
python \
|
||||
python-devel \
|
||||
libffi-devel \
|
||||
openssl-devel \
|
||||
libyaml-devel \
|
||||
/usr/bin/virtualenv \
|
||||
net-tools
|
||||
|
||||
# Get the project source. Copying in the whole project source here isn't very
|
||||
# cache friendly but there's no Docker layer cache on CircleCI anyway!
|
||||
COPY . ${BUILD_SRC_ROOT}
|
||||
|
||||
RUN "${BUILD_SRC_ROOT}"/.circleci/prepare-image.sh "${WHEELHOUSE_PATH}" "${VIRTUALENV_PATH}" "${BUILD_SRC_ROOT}"
|
@ -200,52 +200,19 @@ jobs:
|
||||
|
||||
centos-7: &RHEL_DERIV
|
||||
docker:
|
||||
- image: "centos:7"
|
||||
- image: "tahoelafsci/centos:7"
|
||||
user: "nobody"
|
||||
|
||||
environment: *UTF_8_ENVIRONMENT
|
||||
|
||||
# pip cannot install packages if the working directory is not readable.
|
||||
# We want to run a lot of steps as nobody instead of as root.
|
||||
working_directory: "/tmp/project"
|
||||
|
||||
steps:
|
||||
- run:
|
||||
name: "Install Git"
|
||||
command: |
|
||||
yum install --assumeyes git
|
||||
|
||||
- "checkout"
|
||||
|
||||
- run:
|
||||
name: "Bootstrap test environment"
|
||||
working_directory: "/tmp"
|
||||
command: |
|
||||
# Avoid the /nonexistent home directory in nobody's /etc/passwd
|
||||
# entry.
|
||||
usermod --home /tmp/nobody nobody
|
||||
|
||||
# Grant read access to nobody, the user which will eventually try
|
||||
# to test this checkout.
|
||||
mv /root/project /tmp/project
|
||||
|
||||
# Python build/install toolchain wants to write to the source
|
||||
# checkout, too.
|
||||
chown --recursive nobody:nobody /tmp/project
|
||||
|
||||
yum install --assumeyes \
|
||||
sudo \
|
||||
make automake gcc gcc-c++ \
|
||||
python \
|
||||
python-devel \
|
||||
libffi-devel \
|
||||
openssl-devel \
|
||||
libyaml-devel
|
||||
yum install --assumeyes /usr/bin/virtualenv
|
||||
|
||||
# XXX net-tools is actually a Tahoe-LAFS runtime dependency!
|
||||
yum install --assumeyes \
|
||||
net-tools
|
||||
|
||||
- run: *SETUP_VIRTUALENV
|
||||
|
||||
- run: *RUN_TESTS
|
||||
|
||||
- store_test_results: *STORE_TEST_RESULTS
|
||||
- store_artifacts: *STORE_TEST_LOG
|
||||
- store_artifacts: *STORE_OTHER_ARTIFACTS
|
||||
@ -418,6 +385,16 @@ jobs:
|
||||
# Dockerhub web interface) before anything can be pushed to it.
|
||||
docker push tahoelafsci/ubuntu:16.04
|
||||
docker push tahoelafsci/ubuntu:18.04
|
||||
- run:
|
||||
name: "Build CentOS images"
|
||||
command: |
|
||||
docker build -t tahoelafsci/centos:7 -f ~/project/.circleci/Dockerfile.centos-7 ~/project/
|
||||
- run:
|
||||
name: "Push CentOS images"
|
||||
command: |
|
||||
# You have to create the ubuntu repository (presumably via the
|
||||
# Dockerhub web interface) before anything can be pushed to it.
|
||||
docker push tahoelafsci/centos:7
|
||||
- run:
|
||||
name: "Build Tor-enabled image"
|
||||
command: |
|
||||
|
Loading…
x
Reference in New Issue
Block a user