Skip to content
Merged
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
12 changes: 8 additions & 4 deletions fleetconfig-controller/build/Dockerfile.base
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,12 @@
ARG OS
ARG ARCH

ARG GO_BASE_IMAGE=golang:1.24.4-alpine3.22
ARG PYTHON_BASE_IMAGE=python:3.13-alpine
ARG DISTROLESS_IMAGE=gcr.io/distroless/static:nonroot

## Stage 1: Build the manager binary
FROM golang:1.24.4-alpine3.22 AS builder
FROM ${GO_BASE_IMAGE} AS builder
ARG OS
ARG ARCH

Expand All @@ -27,7 +31,7 @@ COPY pkg/ pkg/
RUN CGO_ENABLED=0 GOOS=${OS:-linux} GOARCH=${ARCH} go build -a -o manager cmd/main.go

## Stage 2: Install dependencies
FROM golang:1.24.4-alpine3.22 AS dependencies
FROM ${GO_BASE_IMAGE} AS dependencies
ARG OS
ARG ARCH

Expand All @@ -38,7 +42,7 @@ ARG CLUSTERADM_VERSION=1.0.0
RUN curl -L https://raw.githubusercontent.com/open-cluster-management-io/clusteradm/main/install.sh | bash -s -- ${CLUSTERADM_VERSION}

## Stage 3: Compress binaries with upx to reduce image size
FROM python:3.13-alpine AS upx
FROM ${PYTHON_BASE_IMAGE} AS upx
RUN apk update && apk add --no-cache upx

WORKDIR /output
Expand All @@ -51,7 +55,7 @@ RUN mkdir -p /output && \

## Stage 4: Finalize

FROM gcr.io/distroless/static:nonroot AS production
FROM ${DISTROLESS_IMAGE} AS production
WORKDIR /

COPY --from=upx /output/manager .
Expand Down
4 changes: 3 additions & 1 deletion fleetconfig-controller/build/Dockerfile.devspace
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@ ARG OS
ARG ARCH
ARG PROVIDER

ARG GO_BASE_IMAGE=golang:1.24.4-alpine3.22

# Build the manager binary
FROM golang:1.24.4-alpine3.22 AS builder
FROM ${GO_BASE_IMAGE} AS builder
ARG OS
ARG ARCH
ARG PROVIDER
Expand Down
12 changes: 8 additions & 4 deletions fleetconfig-controller/build/Dockerfile.eks
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,12 @@
ARG OS
ARG ARCH

ARG GO_BASE_IMAGE=golang:1.24.4-alpine3.22
ARG PYTHON_BASE_IMAGE=python:3.13-alpine
ARG DISTROLESS_IMAGE=gcr.io/distroless/static:nonroot

## Stage 1: Build the manager binary
FROM golang:1.24.4-alpine3.22 AS builder
FROM ${GO_BASE_IMAGE} AS builder
ARG OS
ARG ARCH

Expand All @@ -27,7 +31,7 @@ COPY pkg/ pkg/
RUN CGO_ENABLED=0 GOOS=${OS:-linux} GOARCH=${ARCH} go build -a -o manager cmd/main.go

## Stage 2: Install dependencies
FROM golang:1.24.4-alpine3.22 AS dependencies
FROM ${GO_BASE_IMAGE} AS dependencies
ARG OS
ARG ARCH

Expand All @@ -44,7 +48,7 @@ RUN curl -Lo aws-iam-authenticator https://github.com/kubernetes-sigs/aws-iam-au
mv aws-iam-authenticator /usr/local/bin/aws-iam-authenticator

## Stage 3: Compress binaries with upx to reduce image size
FROM python:3.13-alpine AS upx
FROM ${PYTHON_BASE_IMAGE} AS upx
RUN apk update && apk add --no-cache upx

WORKDIR /output
Expand All @@ -59,7 +63,7 @@ RUN mkdir -p /output && \

## Stage 4: Finalize

FROM gcr.io/distroless/static:nonroot AS production
FROM ${DISTROLESS_IMAGE} AS production

WORKDIR /

Expand Down
11 changes: 7 additions & 4 deletions fleetconfig-controller/build/Dockerfile.gke
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,11 @@
ARG OS
ARG ARCH

ARG GO_BASE_IMAGE=golang:1.24.4-alpine3.22
ARG PYTHON_BASE_IMAGE=python:3.13-alpine

## Stage 1: Build the manager binary
FROM golang:1.24.4-alpine3.22 AS builder
FROM ${GO_BASE_IMAGE} AS builder
ARG OS
ARG ARCH

Expand All @@ -27,7 +30,7 @@ COPY pkg/ pkg/
RUN CGO_ENABLED=0 GOOS=${OS:-linux} GOARCH=${ARCH} go build -a -o manager cmd/main.go

## Stage 2: Install dependencies
FROM golang:1.24.4-alpine3.22 AS dependencies
FROM ${GO_BASE_IMAGE} AS dependencies
ARG OS
ARG ARCH

Expand All @@ -38,7 +41,7 @@ ARG CLUSTERADM_VERSION=1.0.0
RUN curl -L https://raw.githubusercontent.com/open-cluster-management-io/clusteradm/main/install.sh | bash -s -- ${CLUSTERADM_VERSION}

## Stage 3: Compress binaries with upx to reduce image size
FROM python:3.13-alpine AS upx
FROM ${PYTHON_BASE_IMAGE} AS upx
RUN apk update && apk add --no-cache upx

WORKDIR /output
Expand All @@ -52,7 +55,7 @@ RUN mkdir -p /output && \
## Stage 4: Finalize

# Use Python image instead of distroless to support gcloud
FROM python:3.13-alpine AS production
FROM ${PYTHON_BASE_IMAGE} AS production
ARG OS
ARG ARCH

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ Refer to the [Multicluster Controlplane configuration](https://github.com/open-c
| `replicas` | fleetconfig-controller replica count | `1` |
| `imageRegistry` | Image registry | `""` |
| `image.repository` | Image repository | `quay.io/open-cluster-management/fleetconfig-controller` |
| `image.tag` | Image tag | `v0.0.3` |
| `image.tag` | Image tag | `v0.0.5` |
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `imagePullSecrets` | Image pull secrets | `[]` |
| `serviceAccount.annotations` | Annotations to add to the service account | `{}` |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -247,7 +247,7 @@ imageRegistry: ""
## @param image.pullPolicy Image pull policy
image:
repository: quay.io/open-cluster-management/fleetconfig-controller
tag: v0.0.4
tag: v0.0.5
pullPolicy: IfNotPresent

## @param imagePullSecrets Image pull secrets
Expand Down
Loading