-
Notifications
You must be signed in to change notification settings - Fork 2
/
Dockerfile.centos-7
72 lines (59 loc) · 1.41 KB
/
Dockerfile.centos-7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
FROM centos:7
RUN yum install -y epel-release
RUN yum install -y \
git \
make \
bison \
flex \
gcc \
ccache \
gdb \
wget \
perl \
perl-libwww-perl \
perl-LWP-Protocol-https \
perl-Digest-SHA \
python \
python36 \
tcl \
perl-devel \
perl-ExtUtils-MakeMaker \
perl-ExtUtils-Embed \
python-devel \
python36-devel \
tcl-devel \
openssl-devel \
zlib-devel \
readline-devel \
libxml2-devel \
libxslt-devel \
openldap-devel \
krb5-devel \
gettext \
perl-IPC-Run \
perl-Test-Simple \
valgrind
ARG uid
ARG gid
RUN groupadd -r app -g ${gid:-1000} && \
useradd -u ${uid:-1000} -r -g app -m -d /app -s /sbin/nologin \
-c "App user" app && \
chmod 755 /app
# Set the working directory to app home directory
WORKDIR /app
# Specify the user to execute all commands below
USER app
COPY --chown=app:app build-fromsource.conf /app
ENV PATH /app:${PATH}
RUN git clone https://github.com/PGBuildFarm/client-code.git bf && \
mv bf/* bf/.[a-z]* .
# RUN cp build-farm.conf.sample build-farm.conf
RUN mkdir buildroot
# we can do this when testing - once we know we have the packages right
# it's a waste of time
# RUN ./run_build.pl --test --config-set config_opts+=--enable-tap-tests || \
# { ls -rt buildroot/HEAD/CHANGEME.lastrun-logs/*.log | grep -v config.log | \
# tail -n 1 | xargs cat && exit 1; }
# we'll mount this at run time, as it's the persistent storage we want
# RUN rm -rf buildroot/*
# RUN ls -l