Skip to content

Commit ca7ca2f

Browse files
committed
chore: make dockerfile consistent with konflux, add make podman-cross-build command
Signed-off-by: Gabriel Bernal <[email protected]>
1 parent 2eacfea commit ca7ca2f

File tree

2 files changed

+34
-29
lines changed

2 files changed

+34
-29
lines changed

Dockerfile.mcp

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,51 @@
1-
# mcp (monitoring-console-plugin)
1+
FROM registry.redhat.io/ubi9/nodejs-22:latest AS web-builder
22

3-
FROM registry.redhat.io/ubi9/nodejs-22:9.6-1755075210 AS web-builder
3+
WORKDIR /opt/app-root
44

55
USER 0
66

7-
WORKDIR /opt/app-root
8-
97
ENV HUSKY=0
10-
8+
COPY web/package*.json web/
119
COPY Makefile Makefile
12-
COPY scripts/update-plugin-name.sh scripts/update-plugin-name.sh
13-
COPY web/ web/
10+
RUN cd web && npm ci --legacy-peer-deps --omit=optional --ignore-scripts
1411

12+
COPY web/ web/
13+
COPY config/ config/
14+
COPY scripts/update-plugin-name.sh scripts/update-plugin-name.sh
1515
RUN make update-plugin-name
16-
1716
ENV I18N_NAMESPACE="plugin__monitoring-console-plugin"
18-
19-
RUN make install-frontend
2017
RUN make build-frontend
2118

22-
FROM registry.ci.openshift.org/ocp/builder:rhel-9-golang-1.24-openshift-4.20 as go-builder
19+
FROM brew.registry.redhat.io/rh-osbs/openshift-golang-builder:rhel_9_1.24 as go-builder
2320

2421
WORKDIR /opt/app-root
2522

2623
COPY Makefile Makefile
2724
COPY go.mod go.mod
2825
COPY go.sum go.sum
2926

30-
RUN go mod download
27+
RUN make install-backend
3128

3229
COPY cmd/ cmd/
3330
COPY pkg/ pkg/
3431

35-
RUN go build -mod=mod -o plugin-backend cmd/plugin-backend.go
32+
ENV GOOS=${TARGETOS:-linux}
33+
ENV GOARCH=${TARGETARCH}
34+
ENV GOEXPERIMENT=strictfipsruntime
35+
ENV GOFLAGS=-mod=readonly
36+
ENV CGO_ENABLED=1
37+
38+
RUN make build-backend
39+
40+
FROM registry.redhat.io/rhel9-4-els/rhel:9.4
3641

37-
FROM registry.access.redhat.com/ubi9/ubi-minimal
42+
RUN mkdir /licenses
43+
COPY LICENSE /licenses/.
3844

3945
USER 1001
4046

4147
COPY --from=web-builder /opt/app-root/web/dist /opt/app-root/web/dist
42-
COPY --from=web-builder /opt/app-root/web/package.json /opt/app-root/web/package.json
4348
COPY --from=go-builder /opt/app-root/plugin-backend /opt/app-root
44-
COPY config/ /opt/app-root/config
49+
COPY --from=web-builder /opt/app-root/config /opt/app-root/config
4550

46-
ENTRYPOINT ["/opt/app-root/plugin-backend", "-static-path", "/opt/app-root/web/dist", "-config-path", "/opt/app-root/config"]
51+
ENTRYPOINT ["/opt/app-root/plugin-backend", "-static-path", "/opt/app-root/web/dist"]

Makefile

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
VERSION ?= latest
2+
PLATFORMS ?= linux/arm64,linux/amd64
3+
ORG ?= openshift-observability-ui
4+
PLUGIN_NAME ?=monitoring-plugin
5+
IMAGE ?= quay.io/${ORG}/${PLUGIN_NAME}:${VERSION}
6+
FEATURES ?=incidents,perses-dashboards,dev-config
7+
18
.PHONY: install-frontend
29
install-frontend:
310
cd web && npm install
@@ -65,11 +72,6 @@ install:
6572
update-plugin-name:
6673
./scripts/update-plugin-name.sh
6774

68-
export REGISTRY_ORG?=openshift-observability-ui
69-
export TAG?=latest
70-
export PLUGIN_NAME?=monitoring-plugin
71-
IMAGE=quay.io/${REGISTRY_ORG}/monitoring-plugin:${TAG}
72-
7375
.PHONY: deploy
7476
deploy:
7577
make lint-backend
@@ -83,7 +85,7 @@ deploy-acm:
8385

8486
.PHONY: build-mcp-image
8587
build-mcp-image:
86-
DOCKER_FILE_NAME="Dockerfile.mcp" REPO="monitoring-console-plugin" scripts/build-image.sh
88+
DOCKER_FILE_NAME="Dockerfile.mcp" REPO="monitoring-console-plugin" scripts/build-image.sh
8789

8890
.PHONY: build-dev-mcp-image
8991
build-dev-mcp-image:
@@ -93,16 +95,14 @@ build-dev-mcp-image:
9395
start-feature-console:
9496
PLUGIN_PORT=9443 ./scripts/start-console.sh
9597

96-
export FEATURES?=incidents,perses-dashboards,dev-config
9798
.PHONY: start-feature-backend
9899
start-feature-backend:
99-
go run ./cmd/plugin-backend.go -port='9443' -config-path='./config' -static-path='./web/dist' -features='$(FEATURES)'
100+
go run ./cmd/plugin-backend.go -port='9443' -config-path='./config' -static-path='./web/dist' -features='${FEATURES}'
100101

101-
export PLATFORMS ?= linux/arm64,linux/amd64
102-
.PHONY: mcp-podman-cross-build
103-
mcp-podman-cross-build:
102+
.PHONY: podman-cross-build
103+
podman-cross-build:
104104
podman manifest create ${IMAGE}
105-
podman build --platform $(PLATFORMS) --manifest ${IMAGE} -f Dockerfile.mcp
105+
podman build --platform ${PLATFORMS} --manifest ${IMAGE} -f Dockerfile.mcp
106106
podman manifest push ${IMAGE}
107107

108108
.PHONY: test-translations

0 commit comments

Comments
 (0)