Skip to content

konflux-ci/paketo-container

Repository files navigation

konflux-ci/paketo

IMPORTANT: This repository has been moved to https://github.com/konflux-ci/paketo-container.git and is now ARCHIVED !

This project contains the information used by cachi2, executed part of the Konflux prefetch-dependencies task (see the prefetch-input parameter of the pipelinerun), to download the go modules needed to build the binary of the different applications.

Such applications are declared as git submodules and listed hereafter

The commands to build them, to move the binary within the /usr/bin folder, etc. are declared part of the Dockerfile. Such a Dockerfile is build using the konflux pipeline - see task build-container.

The RPMs which should also be installed to build the project or within the final image created top of a fedora image are listed part of the file rpms.in.yaml. The rpm urls are populated using the tool within the lock file: rpms.lock.yaml and their ubi.repo.

The image generated quay.io/redhat-user-workloads/cmoullia-tenant/paketo-container/paketo-container by konflux is pushed on the quay registry: https://quay.io/repository/redhat-user-workloads/cmoullia-tenant/paketo-container/paketo-container?tab=tags&tag=latest

You can check locally the availability of the tools by running this command:

podman run -it quay.io/redhat-user-workloads/cmoullia-tenant/paketo-container/paketo-container:<TAG> pack
podman run -it -v "$(pwd):/source:Z" quay.io/redhat-user-workloads/cmoullia-tenant/paketo-container/paketo-container:$TAG tomljson /source/builder.toml

How to guide

This section details what you should do as developer to design a project able to create an image packaging the executable that you need and that you will next use on konflux to build your own artefacts in a hermetic environment. You will then be able to replace the default buildah image with yours within the task: build-container.

To get the rpms.lock.yaml it is needed to install the following python tool: rpm-lockfile-prototype on a rhel/fedora machine:

sudo dnf install skopeo

python -m venv venv --system-site-packages
. venv/bin/activate
pip install --user https://github.com/konflux-ci/rpm-lockfile-prototype/archive/refs/heads/main.zip
git clone [email protected]:konflux-ci/paketo-container.git && cd paketo-container
rpm-lockfile-prototype rpms.in.yaml

Note: Upstream documentation: https://konflux-ci.dev/docs/how-tos/configuring/prefetching-dependencies/#enabling-prefetch-builds-for-rpm

About

No description, website, or topics provided.

Resources

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published