Skip to content

Commit 2d20b52

Browse files
committed
feat: introduce stackable-devel image
1 parent 75f8990 commit 2d20b52

File tree

12 files changed

+244
-67
lines changed

12 files changed

+244
-67
lines changed

conf.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
opa = importlib.import_module("opa.versions")
2727
spark_k8s = importlib.import_module("spark-k8s.versions")
2828
stackable_base = importlib.import_module("stackable-base.versions")
29+
stackable_devel = importlib.import_module("stackable-devel.versions")
2930
superset = importlib.import_module("superset.versions")
3031
trino_cli = importlib.import_module("trino-cli.versions")
3132
trino = importlib.import_module("trino.versions")
@@ -54,6 +55,7 @@
5455
{"name": "opa", "versions": opa.versions},
5556
{"name": "spark-k8s", "versions": spark_k8s.versions},
5657
{"name": "stackable-base", "versions": stackable_base.versions},
58+
{"name": "stackable-devel", "versions": stackable_devel.versions},
5759
{"name": "superset", "versions": superset.versions},
5860
{"name": "trino-cli", "versions": trino_cli.versions},
5961
{"name": "trino", "versions": trino.versions},

java-devel/Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22
# check=error=true
33

44
#
5-
# Base imaege for builder stages
5+
# Base image for builder stages in Java based products
66
#
77

8-
FROM stackable/image/stackable-base
8+
FROM stackable/image/stackable-devel
99

1010
ARG PRODUCT
1111

java-devel/versions.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,26 @@
11
versions = [
22
{
33
"product": "8",
4-
"stackable-base": "1.0.0",
4+
"stackable-devel": "1.0.0",
55
},
66
{
77
"product": "11",
8-
"stackable-base": "1.0.0",
8+
"stackable-devel": "1.0.0",
99
},
1010
{
1111
"product": "17",
12-
"stackable-base": "1.0.0",
12+
"stackable-devel": "1.0.0",
1313
},
1414
{
1515
"product": "21",
16-
"stackable-base": "1.0.0",
16+
"stackable-devel": "1.0.0",
1717
},
1818
{
1919
"product": "22",
20-
"stackable-base": "1.0.0",
20+
"stackable-devel": "1.0.0",
2121
},
2222
{
2323
"product": "23",
24-
"stackable-base": "1.0.0",
24+
"stackable-devel": "1.0.0",
2525
},
2626
]

stackable-base/Dockerfile

Lines changed: 6 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -1,81 +1,32 @@
11
# syntax=docker/dockerfile:1.10.0@sha256:865e5dd094beca432e8c0a1d5e1c465db5f998dca4e439981029b3b81fb39ed5
22
# check=error=true
33

4-
# Find the latest version at https://catalog.redhat.com/software/containers/ubi9/ubi-minimal/615bd9b4075b022acc111bf5?container-tabs=gti
5-
# IMPORTANT: Make sure to use the "Manifest List Digest" that references the images for multiple architectures
6-
# rather than just the "Image Digest" that references the image for the selected architecture.
7-
FROM registry.access.redhat.com/ubi9/ubi-minimal@sha256:c0e70387664f30cd9cf2795b547e4a9a51002c44a4a86aa9335ab030134bf392 AS product-utils-builder
4+
FROM stackable/image/stackable-devel AS config-utils
85

96
# Find the latest version here: https://github.com/stackabletech/config-utils/tags
107
# renovate: datasource=github-tags packageName=stackabletech/config-utils
118
ENV CONFIG_UTILS_VERSION=0.2.0
12-
# Find the latest version here: https://github.com/stackabletech/containerdebug/tags
13-
# renovate: datasource=github-tags packageName=stackabletech/containerdebug
14-
ENV CONTAINERDEBUG_VERSION=0.1.1
15-
# This SHOULD be kept in sync with operator-templating and other tools to reduce build times
16-
# Find the latest version here: https://doc.rust-lang.org/stable/releases.html
17-
# renovate: datasource=github-releases packageName=rust-lang/rust
18-
ENV RUST_DEFAULT_TOOLCHAIN_VERSION=1.84.1
19-
# Find the latest version here: https://crates.io/crates/cargo-cyclonedx
20-
# renovate: datasource=crate packageName=cargo-cyclonedx
21-
ENV CARGO_CYCLONEDX_CRATE_VERSION=0.5.7
22-
# Find the latest version here: https://crates.io/crates/cargo-auditable
23-
# renovate: datasource=crate packageName=cargo-auditable
24-
ENV CARGO_AUDITABLE_CRATE_VERSION=0.6.6
25-
26-
RUN <<EOF
27-
microdnf update --assumeyes
28-
29-
# git: Needed to fetch source
30-
# gcc: Needed for compilation
31-
microdnf --assumeyes install \
32-
gcc \
33-
git
34-
microdnf clean all
35-
rm -rf /var/cache/yum
36-
37-
# WARNING (@NickLarsenNZ): We should pin the rustup version
38-
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain "$RUST_DEFAULT_TOOLCHAIN_VERSION"
39-
. "$HOME/.cargo/env" && cargo --quiet install cargo-cyclonedx@"$CARGO_CYCLONEDX_CRATE_VERSION" cargo-auditable@"$CARGO_AUDITABLE_CRATE_VERSION"
40-
EOF
41-
42-
FROM product-utils-builder AS config-utils
439

4410
RUN <<EOF
4511
git clone --depth 1 --branch "${CONFIG_UTILS_VERSION}" https://github.com/stackabletech/config-utils
4612
cd ./config-utils
4713
. "$HOME/.cargo/env"
48-
rustup toolchain install
4914
cargo auditable --quiet build --release && cargo cyclonedx --all --spec-version 1.5 --describe binaries
5015
EOF
5116

52-
FROM product-utils-builder AS containerdebug
17+
FROM stackable/image/stackable-devel AS containerdebug
18+
19+
# Find the latest version here: https://github.com/stackabletech/containerdebug/tags
20+
# renovate: datasource=github-tags packageName=stackabletech/containerdebug
21+
ENV CONTAINERDEBUG_VERSION=0.1.1
5322

5423
RUN <<EOF
5524
git clone --depth 1 --branch "${CONTAINERDEBUG_VERSION}" https://github.com/stackabletech/containerdebug
5625
cd ./containerdebug
5726
. "$HOME/.cargo/env"
58-
rustup toolchain install
5927
cargo auditable --quiet build --release && cargo cyclonedx --all --spec-version 1.5 --describe binaries
6028
EOF
6129

62-
FROM product-utils-builder AS patchable
63-
64-
# Copy source code of patchable
65-
COPY rust/patchable/ /patchable/rust/patchable
66-
# Copy workspace files
67-
COPY Cargo.* /patchable/
68-
69-
RUN <<EOF
70-
microdnf update --assumeyes
71-
microdnf install --assumeyes openssl-devel pkg-config
72-
cd /patchable
73-
. "$HOME/.cargo/env"
74-
rustup toolchain install
75-
cargo auditable --quiet build --release && cargo cyclonedx --all --spec-version 1.5 --describe binaries
76-
microdnf clean all
77-
EOF
78-
7930
# Find the latest version at https://catalog.redhat.com/software/containers/ubi9/ubi-minimal/615bd9b4075b022acc111bf5?container-tabs=gti
8031
# IMPORTANT: Make sure to use the "Manifest List Digest" that references the images for multiple architectures
8132
# rather than just the "Image Digest" that references the image for the selected architecture.
@@ -221,10 +172,6 @@ COPY --from=config-utils --chown=${STACKABLE_USER_UID}:0 /config-utils/config-ut
221172
# Debug tool that logs generic system information.
222173
COPY --from=containerdebug --chown=${STACKABLE_USER_UID}:0 /containerdebug/target/release/containerdebug /stackable/containerdebug
223174

224-
# **patchable**
225-
# Tool for patch management
226-
COPY --from=patchable --chown=${STACKABLE_USER_UID}:0 /patchable/target/release/patchable /stackable/patchable
227-
228175
ENV PATH="${PATH}:/stackable"
229176

230177
# These labels have mostly been superceded by the OpenContainer spec annotations below but it doesn't hurt to include them

stackable-base/versions.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
versions = [
22
{
33
"product": "1.0.0",
4+
"stackable-devel": "1.0.0",
45
},
56
]

stackable-devel/Dockerfile

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
# syntax=docker/dockerfile:1.10.0@sha256:865e5dd094beca432e8c0a1d5e1c465db5f998dca4e439981029b3b81fb39ed5
2+
# check=error=true
3+
4+
#
5+
# Base image for builder stages
6+
#
7+
8+
# Find the latest version at https://catalog.redhat.com/software/containers/ubi9/ubi-minimal/615bd9b4075b022acc111bf5?container-tabs=gti
9+
# IMPORTANT: Make sure to use the "Manifest List Digest" that references the images for multiple architectures
10+
# rather than just the "Image Digest" that references the image for the selected architecture.
11+
FROM registry.access.redhat.com/ubi9/ubi-minimal@sha256:c0e70387664f30cd9cf2795b547e4a9a51002c44a4a86aa9335ab030134bf392
12+
13+
# intentionally unused
14+
ARG PRODUCT
15+
ARG STACKABLE_USER_UID
16+
ARG STACKABLE_USER_GID
17+
ARG STACKABLE_USER_NAME
18+
19+
# This SHOULD be kept in sync with operator-templating and other tools to reduce build times
20+
# Find the latest version here: https://doc.rust-lang.org/stable/releases.html
21+
# renovate: datasource=github-releases packageName=rust-lang/rust
22+
ENV RUST_DEFAULT_TOOLCHAIN_VERSION=1.84.1
23+
# Find the latest version here: https://crates.io/crates/cargo-cyclonedx
24+
# renovate: datasource=crate packageName=cargo-cyclonedx
25+
ENV CARGO_CYCLONEDX_CRATE_VERSION=0.5.7
26+
# Find the latest version here: https://crates.io/crates/cargo-auditable
27+
# renovate: datasource=crate packageName=cargo-auditable
28+
ENV CARGO_AUDITABLE_CRATE_VERSION=0.6.6
29+
30+
RUN <<EOF
31+
microdnf update --assumeyes
32+
33+
# git: Needed to fetch source
34+
# gcc: Needed for compilation
35+
microdnf --assumeyes install \
36+
gcc \
37+
git
38+
39+
###
40+
### Add Stackable user and group
41+
###
42+
# Added only temporarily to create the user and group, removed again below
43+
microdnf --assumeyes install shadow-utils
44+
groupadd --gid ${STACKABLE_USER_GID} --system ${STACKABLE_USER_NAME}
45+
46+
# The --no-log-init is required to work around a bug/problem in Go/Docker when very large UIDs are used
47+
# See https://github.com/moby/moby/issues/5419#issuecomment-41478290 for more context
48+
# Making this a system user prevents a mail dir from being created, expiry of passwords etc. but it will warn:
49+
# useradd warning: stackable's uid 1000 is greater than SYS_UID_MAX 999
50+
# We can safely ignore this warning, to get rid of the warning we could change /etc/login.defs but that does not seem worth it
51+
# We'll leave the home directory hardcoded to /stackable because I don't want to deal with which chars might be valid and which might not in user name vs. directory
52+
useradd \
53+
--no-log-init \
54+
--gid ${STACKABLE_USER_GID} \
55+
--uid ${STACKABLE_USER_UID} \
56+
--system \
57+
--create-home \
58+
--home-dir /stackable \
59+
${STACKABLE_USER_NAME}
60+
microdnf --assumeyes remove shadow-utils
61+
62+
microdnf clean all
63+
rm -rf /var/cache/yum
64+
65+
# WARNING (@NickLarsenNZ): We should pin the rustup version
66+
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain "$RUST_DEFAULT_TOOLCHAIN_VERSION"
67+
. "$HOME/.cargo/env" && cargo --quiet install cargo-cyclonedx@"$CARGO_CYCLONEDX_CRATE_VERSION" cargo-auditable@"$CARGO_AUDITABLE_CRATE_VERSION" && rustup toolchain install
68+
EOF
69+
70+
71+
# **patchable**
72+
# Tool for patch management
73+
# Copy source code of patchable
74+
COPY rust/patchable/ /patchable/rust/patchable
75+
# Copy workspace files
76+
COPY Cargo.* /patchable/
77+
78+
RUN <<EOF
79+
microdnf update --assumeyes
80+
microdnf install --assumeyes openssl-devel pkg-config
81+
cd /patchable
82+
. "$HOME/.cargo/env"
83+
cargo auditable --quiet build --release && cargo cyclonedx --all --spec-version 1.5 --describe binaries
84+
mv /patchable/target/release/patchable /stackable/patchable
85+
microdnf clean all
86+
EOF
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# E-Tugra Certification Authority
2+
-----BEGIN CERTIFICATE-----
3+
MIIGSzCCBDOgAwIBAgIIamg+nFGby1MwDQYJKoZIhvcNAQELBQAwgbIxCzAJBgNV
4+
BAYTAlRSMQ8wDQYDVQQHDAZBbmthcmExQDA+BgNVBAoMN0UtVHXEn3JhIEVCRyBC
5+
aWxpxZ9pbSBUZWtub2xvamlsZXJpIHZlIEhpem1ldGxlcmkgQS7Fni4xJjAkBgNV
6+
BAsMHUUtVHVncmEgU2VydGlmaWthc3lvbiBNZXJrZXppMSgwJgYDVQQDDB9FLVR1
7+
Z3JhIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTEzMDMwNTEyMDk0OFoXDTIz
8+
MDMwMzEyMDk0OFowgbIxCzAJBgNVBAYTAlRSMQ8wDQYDVQQHDAZBbmthcmExQDA+
9+
BgNVBAoMN0UtVHXEn3JhIEVCRyBCaWxpxZ9pbSBUZWtub2xvamlsZXJpIHZlIEhp
10+
em1ldGxlcmkgQS7Fni4xJjAkBgNVBAsMHUUtVHVncmEgU2VydGlmaWthc3lvbiBN
11+
ZXJrZXppMSgwJgYDVQQDDB9FLVR1Z3JhIENlcnRpZmljYXRpb24gQXV0aG9yaXR5
12+
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA4vU/kwVRHoViVF56C/UY
13+
B4Oufq9899SKa6VjQzm5S/fDxmSJPZQuVIBSOTkHS0vdhQd2h8y/L5VMzH2nPbxH
14+
D5hw+IyFHnSOkm0bQNGZDbt1bsipa5rAhDGvykPL6ys06I+XawGb1Q5KCKpbknSF
15+
Q9OArqGIW66z6l7LFpp3RMih9lRozt6Plyu6W0ACDGQXwLWTzeHxE2bODHnv0ZEo
16+
q1+gElIwcxmOj+GMB6LDu0rw6h8VqO4lzKRG+Bsi77MOQ7osJLjFLFzUHPhdZL3D
17+
k14opz8n8Y4e0ypQBaNV2cvnOVPAmJ6MVGKLJrD3fY185MaeZkJVgkfnsliNZvcH
18+
fC425lAcP9tDJMW/hkd5s3kc91r0E+xs+D/iWR+V7kI+ua2oMoVJl0b+SzGPWsut
19+
dEcf6ZG33ygEIqDUD13ieU/qbIWGvaimzuT6w+Gzrt48Ue7LE3wBf4QOXVGUnhMM
20+
ti6lTPk5cDZvlsouDERVxcr6XQKj39ZkjFqzAQqptQpHF//vkUAqjqFGOjGY5RH8
21+
zLtJVor8udBhmm9lbObDyz51Sf6Pp+KJxWfXnUYTTjF2OySznhFlhqt/7x3U+Lzn
22+
rFpct1pHXFXOVbQicVtbC/DP3KBhZOqp12gKY6fgDT+gr9Oq0n7vUaDmUStVkhUX
23+
U8u3Zg5mTPj5dUyQ5xJwx0UCAwEAAaNjMGEwHQYDVR0OBBYEFC7j27JJ0JxUeVz6
24+
Jyr+zE7S6E5UMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAULuPbsknQnFR5
25+
XPonKv7MTtLoTlQwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4ICAQAF
26+
Nzr0TbdF4kV1JI+2d1LoHNgQk2Xz8lkGpD4eKexd0dCrfOAKkEh47U6YA5n+KGCR
27+
HTAduGN8qOY1tfrTYXbm1gdLymmasoR6d5NFFxWfJNCYExL/u6Au/U5Mh/jOXKqY
28+
GwXgAEZKgoClM4so3O0409/lPun++1ndYYRP0lSWE2ETPo+Aab6TR7U1Q9Jauz1c
29+
77NCR807VRMGsAnb/WP2OogKmW9+4c4bU2pEZiNRCHu8W1Ki/QY3OEBhj0qWuJA3
30+
+GbHeJAAFS6LrVE1Uweoa2iu+U48BybNCAVwzDk/dr2l02cmAYamU9JgO3xDf1WK
31+
vJUawSg5TB9D0pH0clmKuVb8P7Sd2nCcdlqMQ1DujjByTd//SffGqWfZbawCEeI6
32+
FiWnWAjLb1NBnEg4R2gz0dfHj9R0IdTDBZB6/86WiLEVKV0jq9BgoRJP3vQXzTLl
33+
yb/IQ639Lo7xr+L0mPoSHyDYwKcMhcWQ9DstliaxLL5Mq+ux0orJ23gTDx4JnW2P
34+
AJ8C2sH6H3p6CcRK5ogql5+Ji/03X186zjhZhkuvcQu02PJwT58yE+Owp1fl2tpD
35+
y4Q08ijE6m30Ku/Ba3ba+367hTzSU8JNvnHhRdH9I2cNE3X7z2VnIp2usAnRCf8d
36+
NL/+I5c30jn6PQ0GC7TbO6Orb1wdtn7os4I07QZcJA==
37+
-----END CERTIFICATE-----
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# E-Tugra Global Root CA ECC v3
2+
-----BEGIN CERTIFICATE-----
3+
MIICpTCCAiqgAwIBAgIUJkYZdzHhT28oNt45UYbm1JeIIsEwCgYIKoZIzj0EAwMw
4+
gYAxCzAJBgNVBAYTAlRSMQ8wDQYDVQQHEwZBbmthcmExGTAXBgNVBAoTEEUtVHVn
5+
cmEgRUJHIEEuUy4xHTAbBgNVBAsTFEUtVHVncmEgVHJ1c3QgQ2VudGVyMSYwJAYD
6+
VQQDEx1FLVR1Z3JhIEdsb2JhbCBSb290IENBIEVDQyB2MzAeFw0yMDAzMTgwOTQ2
7+
NThaFw00NTAzMTIwOTQ2NThaMIGAMQswCQYDVQQGEwJUUjEPMA0GA1UEBxMGQW5r
8+
YXJhMRkwFwYDVQQKExBFLVR1Z3JhIEVCRyBBLlMuMR0wGwYDVQQLExRFLVR1Z3Jh
9+
IFRydXN0IENlbnRlcjEmMCQGA1UEAxMdRS1UdWdyYSBHbG9iYWwgUm9vdCBDQSBF
10+
Q0MgdjMwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASOmCm/xxAeJ9urA8woLNheSBkQ
11+
KczLWYHMjLiSF4mDKpL2w6QdTGLVn9agRtwcvHbB40fQWxPa56WzZkjnIZpKT4YK
12+
fWzqTTKACrJ6CZtpS5iB4i7sAnCWH/31Rs7K3IKjYzBhMA8GA1UdEwEB/wQFMAMB
13+
Af8wHwYDVR0jBBgwFoAU/4Ixcj75xGZsrTie0bBRiKWQzPUwHQYDVR0OBBYEFP+C
14+
MXI++cRmbK04ntGwUYilkMz1MA4GA1UdDwEB/wQEAwIBBjAKBggqhkjOPQQDAwNp
15+
ADBmAjEA5gVYaWHlLcoNy/EZCL3W/VGSGn5jVASQkZo1kTmZ+gepZpO6yGjUij/6
16+
7W4WAie3AjEA3VoXK3YdZUKWpqxdinlW2Iob35reX8dQj7FbcQwm32pAAOwzkSFx
17+
vmjkI6TZraE3
18+
-----END CERTIFICATE-----
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# E-Tugra Global Root CA RSA v3
2+
-----BEGIN CERTIFICATE-----
3+
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
35+
-----END CERTIFICATE-----

stackable-devel/stackable/curlrc

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# Stackable curl config file
2+
# https://everything.curl.dev/cmdline/configfile.html
3+
4+
# Follow up to 30 redirects (-L), 0 by default
5+
# https://everything.curl.dev/http/redirects.html#tell-curl-to-follow-redirects
6+
location
7+
8+
# Retry the request up to 10 times on transient errors (e.g., network issues)
9+
# https://everything.curl.dev/usingcurl/downloads/retry.html#retry
10+
retry = 10
11+
12+
# Retry on ECONNREFUSED in addition to all the other transient errors
13+
# https://everything.curl.dev/usingcurl/downloads/retry.html#connection-refused
14+
retry-connrefused
15+
16+
# Wait 15 seconds between retry attempts, this disables the exponential backoff
17+
# https://everything.curl.dev/usingcurl/downloads/retry.html#tweak-your-retries
18+
retry-delay = 15
19+
20+
# Limit the total retry time to 1200 seconds (20 minutes), this is across all retries
21+
# https://everything.curl.dev/usingcurl/downloads/retry.html#tweak-your-retries
22+
retry-max-time = 1200
23+
24+
# Fail the request if the server returns an error (4xx or 5xx HTTP status code)
25+
# https://everything.curl.dev/http/response.html#http-response-codes
26+
fail
27+
28+
# Set an overall timeout of 600 seconds (10 minutes) for a single download process
29+
# https://everything.curl.dev/usingcurl/timeouts.html#maximum-time-allowed-to-spend
30+
max-time = 600
31+
32+
# Set the connection timeout to 30 seconds to avoid hanging too long on connection attempts
33+
# https://everything.curl.dev/usingcurl/timeouts.html#never-spend-more-than-this-to-connect
34+
connect-timeout = 30
35+
36+
# Suppress progress output, but still show errors
37+
# https://everything.curl.dev/usingcurl/verbose/index.html?highlight=silent#silence
38+
silent
39+
show-error
40+
41+
# (Optional) Protect against downloading files larger than 100GB
42+
# https://everything.curl.dev/usingcurl/downloads/max-filesize.html#maximum-filesize
43+
# max-filesize = 107374182400

stackable-devel/stackable/dnf.conf

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[main]
2+
install_weak_deps=False
3+
assumeyes=True

0 commit comments

Comments
 (0)