Skip to content

feat: include source code #1126

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 7 commits into
base: main
Choose a base branch
from
Open

feat: include source code #1126

wants to merge 7 commits into from

Conversation

dervoeti
Copy link
Member

@dervoeti dervoeti commented May 23, 2025

Description

Fixes #1069

This PR adds .tar.gz files containing the source code (including our custom patches) that was used to build the products into the container images. This should help with debugging and further increase transparency, while the costs are relatively low.

I also migrated a few components to fetch the source code using patchable. The goal is to use the same process everywhere to fetch source code (clone it from a Github repository that is part of the stackabletech org), even if we don't patch the source code.

The following components were migrated to use patchable:

  • protobuf: I had add the invocation of ./autogen.sh (along with its dependencies, automake and libtool), since the code of the Github repo differed from the snapshot we have in Nexus (for example, in Nexus the ./configure script is already present). This is also the exact same way Hadoop does it.
  • hdfs-utils
  • hbase-opa-authorizer
  • hbase/hbase-operator-tools: Just a slight change, I moved it inside the image from /stackable/src/hbase-operator-tools to /stackable/src/hbase/hbase-operator-tools to align with the structure in docker-images and all the other components
  • kcat
  • nifi-iceberg-bundle
  • NiFi opa-authorizer
  • OPA

Definition of Done Checklist

Note

Not all of these items are applicable to all PRs, the author should update this template to only leave the boxes in that are relevant.

Please make sure all these things are done and tick the boxes

  • Changes are OpenShift compatible
  • All added packages (via microdnf or otherwise) have a comment on why they are added
  • Things not downloaded from Red Hat repositories should be mirrored in the Stackable repository and downloaded from there
  • All packages should have (if available) signatures/hashes verified
  • Add an entry to the CHANGELOG.md file
  • Integration tests ran successfully
TIP: Running integration tests with a new product image

The image can be built and uploaded to the kind cluster with the following commands:

bake --product <product> --image-version <stackable-image-version>
kind load docker-image <image-tagged-with-the-major-version> --name=<name-of-your-test-cluster>

See the output of bake to retrieve the image tag for <image-tagged-with-the-major-version>.

dervoeti and others added 7 commits May 23, 2025 11:10
| datasource | package           | from   | to     |
| ---------- | ----------------- | ------ | ------ |
| docker     | docker/dockerfile | 1.10.0 | 1.15.1 |
* remove 3.7.1 and 3.8.0

* add 4.0.0

* update changelog

* bump to java 23 for kafka 4.0.0

* fix kcat image name
* chore: stop building kcat image

* fix: adjust kafka / kafka-testing-tools watched paths
@dervoeti dervoeti requested a review from a team May 23, 2025 09:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add source code to our images
4 participants