Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions .envrc.example
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ export KUBECONFIG=$PWD/.mgt-cluster-kubeconfig.yaml

export PATH=$PWD/hack/tools/bin:$PATH

# Legacy variables from the previous workflow. They are currently not consumed by hack scripts, but are kept here for compatibility/reference.

export PROVIDER=docker

# Versions
Expand All @@ -21,3 +23,18 @@ export DISABLE_VERSIONCHECK="true"
# Release
export RELEASE_CLUSTER_CLASS=$CLUSTER_CLASS_NAME
export RELEASE_KUBERNETES_VERSION=1-27

# Current workflow: the build scripts derive the stack from PROVIDER and

export PROVIDER=openstack
export CLUSTER_STACK=scs

# OCI registry (leave unset for auto-configured ttl.sh during development)
# export OCI_REGISTRY=registry.example.com
# export OCI_REPOSITORY=kaas/cluster-stacks
# export OCI_USERNAME=user
# export OCI_PASSWORD=password
# export OCI_ACCESS_TOKEN=token

# Optional: GitHub token for higher API rate limits during version resolution
# export GITHUB_TOKEN=ghp_...
53 changes: 53 additions & 0 deletions Containerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
FROM alpine:3.21

LABEL org.opencontainers.image.source="https://github.com/SovereignCloudStack/cluster-stacks"
LABEL org.opencontainers.image.description="Cluster Stack Build Tools"
LABEL org.opencontainers.image.licenses="Apache-2.0"

# Install system dependencies
RUN apk add --no-cache \
bash \
git \
curl \
tar \
gzip \
gawk \
python3 \
py3-yaml \
jq \
ca-certificates

# Install helm
RUN HELM_VERSION=v3.17.3 && \
curl -fsSL "https://get.helm.sh/helm-${HELM_VERSION}-linux-amd64.tar.gz" | \
tar -xz -C /usr/local/bin --strip-components=1 linux-amd64/helm

# Install yq (mikefarah)
RUN YQ_VERSION=v4.45.4 && \
curl -fsSL "https://github.com/mikefarah/yq/releases/download/${YQ_VERSION}/yq_linux_amd64" \
-o /usr/local/bin/yq && chmod +x /usr/local/bin/yq

# Install oras
RUN ORAS_VERSION=1.2.2 && \
curl -fsSL "https://github.com/oras-project/oras/releases/download/v${ORAS_VERSION}/oras_${ORAS_VERSION}_linux_amd64.tar.gz" | \
tar -xz -C /usr/local/bin oras

# Install just
RUN JUST_VERSION=1.40.0 && \
curl -fsSL "https://github.com/casey/just/releases/download/${JUST_VERSION}/just-${JUST_VERSION}-x86_64-unknown-linux-musl.tar.gz" | \
tar -xz -C /usr/local/bin just

WORKDIR /workspace

# Verify installations
RUN bash --version | head -1 && \
helm version --short && \
yq --version && \
oras version && \
just --version && \
git --version

# Allow git operations inside mounted volumes
RUN git config --global --add safe.directory /workspace

CMD ["/bin/bash"]
303 changes: 0 additions & 303 deletions Makefile

This file was deleted.

Loading
Loading