Skip to content

Commit c12e74b

Browse files
authored
Merge branch 'main' into bthomee/jinja
2 parents c3d61b0 + b597209 commit c12e74b

File tree

5 files changed

+39
-14
lines changed

5 files changed

+39
-14
lines changed

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@ to build, run unit tests, and package different XRPLF projects. By using the sam
1111
for different projects, we are enforcing that XRPLF projects can be built in a wide selection
1212
of environments and using different C++ compilers.
1313

14+
[Ubuntu instructions](docker/ubuntu/README.md)
15+
[Debian instructions](docker/debian/README.md)
16+
[RHEL instructions](docker/rhel/README.md)
17+
1418
## Tools images
1519

1620
Aside from build images, XRPLF projects also use container images with specialized tools, e.g.

docker/debian/Dockerfile

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ pkgs+=(dpkg-dev) # Required packaging tool.
4343
pkgs+=(file) # Required packaging tool.
4444
pkgs+=(git) # Required build tool.
4545
pkgs+=(gpg) # Dependency for tools requiring signing or encrypting/decrypting.
46+
pkgs+=(gpg-agent) # Dependency for tools requiring signing or encrypting/decrypting.
4647
pkgs+=(jq) # Pretty printing.
4748
pkgs+=(libc6-dev) # Required build tool.
4849
pkgs+=(ninja-build) # Required build tool.
@@ -121,7 +122,11 @@ EOF
121122

122123
# Switch to the non-root user.
123124
USER ${NONROOT_USER}
124-
WORKDIR /home/${NONROOT_USER}
125+
ENV HOME=/home/${NONROOT_USER}
126+
WORKDIR ${HOME}
127+
128+
# Set Conan home directory, so the users of this image can find default profile
129+
ENV CONAN_HOME=${HOME}/.conan2
125130

126131
# Create a default Conan profile.
127132
RUN <<EOF
@@ -191,7 +196,11 @@ EOF
191196

192197
# Switch to the non-root user.
193198
USER ${NONROOT_USER}
194-
WORKDIR /home/${NONROOT_USER}
199+
ENV HOME=/home/${NONROOT_USER}
200+
WORKDIR ${HOME}
201+
202+
# Set Conan home directory, so the users of this image can find default profile
203+
ENV CONAN_HOME=${HOME}/.conan2
195204

196205
# Create a default Conan profile.
197206
RUN <<EOF

docker/rhel/Dockerfile

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ pkgs+=(cmake) # Required build tool.
1818
pkgs+=(file) # Required packaging tool.
1919
pkgs+=(git) # Required build tool.
2020
pkgs+=(gpg) # Dependency for tools requiring signing or encrypting/decrypting.
21+
pkgs+=(gnupg2) # Dependency for tools requiring signing or encrypting/decrypting.
2122
pkgs+=(jq) # Pretty printing.
2223
pkgs+=(libstdc++-static) # Required to statically link libraries into rippled.
2324
pkgs+=(ninja-build) # Required build tool.
@@ -27,7 +28,7 @@ pkgs+=(python3-pip) # Package manager for Python applications.
2728
pkgs+=(rpm-build) # Required packaging tool.
2829
pkgs+=(rpmdevtools) # Required packaging tool.
2930
pkgs+=(wget) # Required build tool.
30-
dnf install -y --setopt=tsflags=nodocs "${pkgs[@]}"
31+
dnf install -y --allowerasing --setopt=tsflags=nodocs "${pkgs[@]}"
3132
dnf clean -y all
3233
rm -rf /var/cache/dnf/*
3334
EOF
@@ -84,11 +85,11 @@ EOF
8485

8586
# Switch to the non-root user.
8687
USER ${NONROOT_USER}
87-
WORKDIR /home/${NONROOT_USER}
88+
ENV HOME=/home/${NONROOT_USER}
89+
WORKDIR ${HOME}
8890

89-
# Fix the Conan user home directory as it otherwise will point to the
90-
# /opt/app-root/src/.conan2 directory.
91-
ENV CONAN_HOME=/home/${NONROOT_USER}/.conan2
91+
# Set Conan home directory, so the users of this image can find default profile
92+
ENV CONAN_HOME=${HOME}/.conan2
9293

9394
# Create a default Conan profile.
9495
RUN <<EOF
@@ -167,11 +168,11 @@ EOF
167168

168169
# Switch to the non-root user.
169170
USER ${NONROOT_USER}
170-
WORKDIR /home/${NONROOT_USER}
171+
ENV HOME=/home/${NONROOT_USER}
172+
WORKDIR ${HOME}
171173

172-
# Fix the Conan user home directory as it otherwise will point to the
173-
# /opt/app-root/src/.conan2 directory.
174-
ENV CONAN_HOME=/home/${NONROOT_USER}/.conan2
174+
# Set Conan home directory, so the users of this image can find default profile
175+
ENV CONAN_HOME=${HOME}/.conan2
175176

176177
# Create a default Conan profile.
177178
RUN <<EOF

docker/tools-rippled/Dockerfile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ pkgs+=(ca-certificates) # Enable TLS verification for HTTPS connections by provi
2828
pkgs+=(curl) # Dependency for tools requiring downloading data.
2929
pkgs+=(git) # Required build tool.
3030
pkgs+=(gpg) # Dependency for tools requiring signing or encrypting/decrypting.
31+
pkgs+=(gpg-agent) # Dependency for tools requiring signing or encrypting/decrypting.
3132
pkgs+=(jq) # Pretty printing.
3233
pkgs+=(pipx) # Package manager for Python applications.
3334
pkgs+=(wget) # Required build tool.
@@ -58,4 +59,5 @@ RUN pipx install --pip-args='--no-cache' clang-format==${CLANG_FORMAT_VERSION} &
5859

5960
# Switch to the non-root user.
6061
USER ${NONROOT_USER}
61-
WORKDIR /home/${NONROOT_USER}
62+
ENV HOME=/home/${NONROOT_USER}
63+
WORKDIR ${HOME}

docker/ubuntu/Dockerfile

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ pkgs+=(dpkg-dev) # Required packaging tool.
3232
pkgs+=(file) # Required packaging tool.
3333
pkgs+=(git) # Required build tool.
3434
pkgs+=(gpg) # Dependency for tools requiring signing or encrypting/decrypting.
35+
pkgs+=(gpg-agent) # Dependency for tools requiring signing or encrypting/decrypting.
3536
pkgs+=(jq) # Pretty printing.
3637
pkgs+=(libc6-dev) # Required build tool.
3738
pkgs+=(ninja-build) # Required build tool.
@@ -101,7 +102,11 @@ EOF
101102

102103
# Switch to the non-root user.
103104
USER ${NONROOT_USER}
104-
WORKDIR /home/${NONROOT_USER}
105+
ENV HOME=/home/${NONROOT_USER}
106+
WORKDIR ${HOME}
107+
108+
# Set Conan home directory, so the users of this image can find default profile
109+
ENV CONAN_HOME=${HOME}/.conan2
105110

106111
# Create a default Conan profile.
107112
RUN <<EOF
@@ -184,7 +189,11 @@ EOF
184189

185190
# Switch to the non-root user.
186191
USER ${NONROOT_USER}
187-
WORKDIR /home/${NONROOT_USER}
192+
ENV HOME=/home/${NONROOT_USER}
193+
WORKDIR ${HOME}
194+
195+
# Set Conan home directory, so the users of this image can find default profile
196+
ENV CONAN_HOME=${HOME}/.conan2
188197

189198
# Create a default Conan profile.
190199
RUN <<EOF

0 commit comments

Comments
 (0)