4
4
FROM stackable/image/java-devel AS builder
5
5
6
6
ARG PRODUCT
7
+ ARG RELEASE
7
8
ARG DELETE_CACHES="true"
8
9
ARG STACKABLE_USER_UID
9
10
@@ -27,13 +28,21 @@ COPY --chown=${STACKABLE_USER_UID}:0 omid/stackable/patches/${PRODUCT} /stackabl
27
28
RUN --mount=type=cache,id=maven-omid-${PRODUCT},uid=${STACKABLE_USER_UID},target=/stackable/.m2/repository <<EOF
28
29
set -x
29
30
cd "$(/stackable/patchable --images-repo-root=src checkout omid ${PRODUCT})"
31
+
32
+ ORIGINAL_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)
33
+ NEW_VERSION="${PRODUCT}-stackable${RELEASE}"
34
+
35
+ mvn versions:set -DnewVersion=$NEW_VERSION
36
+
30
37
# Create snapshot of the source code including custom patches
31
- tar -czf /stackable/omid-${PRODUCT }-src.tar.gz .
38
+ tar -czf /stackable/omid-${NEW_VERSION }-src.tar.gz .
32
39
mvn --batch-mode --no-transfer-progress package -Phbase-2 -DskipTests
33
- tar -xf tso-server/target/omid-tso-server-${PRODUCT}-bin.tar.gz -C /stackable
34
- mv tso-server/target/bom.json /stackable/omid-tso-server-${PRODUCT}/omid-tso-server-${PRODUCT}.cdx.json
35
- tar -xf examples/target/omid-examples-${PRODUCT}-bin.tar.gz -C /stackable
36
- mv examples/target/bom.json /stackable/omid-examples-${PRODUCT}/omid-examples-${PRODUCT}.cdx.json
40
+ tar -xf tso-server/target/omid-tso-server-${NEW_VERSION}-bin.tar.gz -C /stackable
41
+ sed -i "s/${NEW_VERSION}/${ORIGINAL_VERSION}/g" tso-server/target/bom.json
42
+ mv tso-server/target/bom.json /stackable/omid-tso-server-${NEW_VERSION}/omid-tso-server-${NEW_VERSION}.cdx.json
43
+ tar -xf examples/target/omid-examples-${NEW_VERSION}-bin.tar.gz -C /stackable
44
+ sed -i "s/${NEW_VERSION}/${ORIGINAL_VERSION}/g" examples/target/bom.json
45
+ mv examples/target/bom.json /stackable/omid-examples-${NEW_VERSION}/omid-examples-${NEW_VERSION}.cdx.json
37
46
38
47
if [ "${DELETE_CACHES}" = "true" ] ; then
39
48
rm -rf /stackable/.m2/repository/*
46
55
# TODO: This can be restricted to target only versions which do not honor the environment
47
56
# varible that has been set above but this has not currently been implemented
48
57
COPY shared/log4shell.sh /bin
49
- RUN /bin/log4shell.sh /stackable/omid-tso-server-${PRODUCT}
58
+ RUN /bin/log4shell.sh /stackable/omid-tso-server-${PRODUCT}-stackable${RELEASE}
50
59
51
60
# Ensure no vulnerable files are left over
52
61
# This will currently report vulnerable files being present, as it also alerts on
@@ -55,7 +64,7 @@ RUN /bin/log4shell.sh /stackable/omid-tso-server-${PRODUCT}
55
64
COPY shared/log4shell_1.6.1-log4shell_Linux_x86_64 /bin/log4shell_scanner_x86_64
56
65
COPY shared/log4shell_1.6.1-log4shell_Linux_aarch64 /bin/log4shell_scanner_aarch64
57
66
COPY shared/log4shell_scanner /bin/log4shell_scanner
58
- RUN /bin/log4shell_scanner s /stackable/omid-tso-server-${PRODUCT}
67
+ RUN /bin/log4shell_scanner s /stackable/omid-tso-server-${PRODUCT}-stackable${RELEASE}
59
68
# ===
60
69
61
70
FROM stackable/image/java-base
@@ -76,17 +85,17 @@ LABEL name="Apache Phoenix Omid" \
76
85
COPY omid/licenses /licenses
77
86
78
87
COPY --chown=${STACKABLE_USER_UID}:0 omid/stackable /stackable
79
- COPY --chown=${STACKABLE_USER_UID}:0 --from=builder /stackable/omid-tso-server-${PRODUCT} /stackable/omid-tso-server-${PRODUCT}
80
- COPY --chown=${STACKABLE_USER_UID}:0 --from=builder /stackable/omid-examples-${PRODUCT} /stackable/omid-examples-${PRODUCT}
81
- COPY --chown=${STACKABLE_USER_UID}:0 --from=builder /stackable/omid-${PRODUCT}-src.tar.gz /stackable
88
+ COPY --chown=${STACKABLE_USER_UID}:0 --from=builder /stackable/omid-tso-server-${PRODUCT}-stackable${RELEASE} /stackable/omid-tso-server-${PRODUCT}-stackable${RELEASE }
89
+ COPY --chown=${STACKABLE_USER_UID}:0 --from=builder /stackable/omid-examples-${PRODUCT}-stackable${RELEASE} /stackable/omid-examples-${PRODUCT}-stackable${RELEASE }
90
+ COPY --chown=${STACKABLE_USER_UID}:0 --from=builder /stackable/omid-${PRODUCT}-stackable${RELEASE}- src.tar.gz /stackable
82
91
83
92
RUN <<EOF
84
93
microdnf update
85
94
microdnf clean all
86
95
rm -rf /var/cache/yum
87
96
88
- ln -s /stackable/omid-tso-server-${PRODUCT} /stackable/omid-tso-server
89
- ln -s /stackable/omid-examples-${PRODUCT} /stackable/omid-examples
97
+ ln -s /stackable/omid-tso-server-${PRODUCT}-stackable${RELEASE} /stackable/omid-tso-server
98
+ ln -s /stackable/omid-examples-${PRODUCT}-stackable${RELEASE} /stackable/omid-examples
90
99
curl https://repo.stackable.tech/repository/packages/jmx-exporter/jmx_prometheus_javaagent-${JMX_EXPORTER}.jar \
91
100
-o /stackable/jmx/jmx_prometheus_javaagent-${JMX_EXPORTER}.jar
92
101
chmod -x /stackable/jmx/jmx_prometheus_javaagent-${JMX_EXPORTER}.jar
0 commit comments