Skip to content

Commit a0ab017

Browse files
NickChungSUSEBinX-Suse
authored andcommitted
refactore: markfile and release.yml adjustments for SLSA.
1 parent 0f814fb commit a0ab017

File tree

4 files changed

+40
-103
lines changed

4 files changed

+40
-103
lines changed

.github/workflows/release.yml

Lines changed: 14 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -19,56 +19,30 @@ jobs:
1919
steps:
2020
- name: Checkout code
2121
uses: actions/checkout@v4
22-
- name: Read secrets
23-
env:
24-
DOCKER_REPO: ${{ secrets.DOCKER_REPO }}
25-
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
26-
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
27-
PRIME_REGISTRY: ${{ secrets.PRIME_REGISTRY }}
28-
PRIME_REPO: ${{ secrets.PRIME_REPO }}
29-
PRIME_REGISTRY_USERNAME: ${{ secrets.PRIME_REGISTRY_USERNAME }}
30-
PRIME_REGISTRY_PASSWORD: ${{ secrets.PRIME_REGISTRY_PASSWORD }}
31-
run: |
32-
echo "DOCKER_REPO=$DOCKER_REPO" >> $GITHUB_ENV
33-
echo "DOCKER_USERNAME=$DOCKER_USERNAME" >> $GITHUB_ENV
34-
echo "DOCKER_PASSWORD=$DOCKER_PASSWORD" >> $GITHUB_ENV
35-
echo "PRIME_REGISTRY=$PRIME_REGISTRY" >> $GITHUB_ENV
36-
echo "PRIME_REPO=$PRIME_REPO" >> $GITHUB_ENV
37-
echo "PRIME_REGISTRY_USERNAME=$PRIME_REGISTRY_USERNAME" >> $GITHUB_ENV
38-
echo "PRIME_REGISTRY_PASSWORD=$PRIME_REGISTRY_PASSWORD" >> $GITHUB_ENV
22+
23+
- name: Load Secrets from Vault
24+
uses: rancher-eio/read-vault-secrets@main
25+
with:
26+
secrets: |
27+
secret/data/github/repo/${{ github.repository }}/dockerhub/neuvector/credentials username | DOCKER_USERNAME ;
28+
secret/data/github/repo/${{ github.repository }}/dockerhub/neuvector/credentials password | DOCKER_PASSWORD ;
29+
secret/data/github/repo/${{ github.repository }}/rancher-prime-registry/credentials registry | PRIME_REGISTRY ;
30+
secret/data/github/repo/${{ github.repository }}/rancher-prime-registry/credentials username | PRIME_REGISTRY_USERNAME ;
31+
secret/data/github/repo/${{ github.repository }}/rancher-prime-registry/credentials password | PRIME_REGISTRY_PASSWORD
3932
4033
- name: Publish manifest
4134
uses: rancher/ecm-distro-tools/actions/publish-image@master
4235
with:
43-
image: manager
36+
image: registry-adapter
4437
tag: ${{ github.ref_name }}
4538
platforms: linux/amd64,linux/arm64
4639

4740
public-registry: docker.io
48-
public-repo: ${{ env.DOCKER_REPO }}
41+
public-repo: neuvector
4942
public-username: ${{ env.DOCKER_USERNAME }}
5043
public-password: ${{ env.DOCKER_PASSWORD }}
5144

5245
prime-registry: ${{ env.PRIME_REGISTRY }}
53-
prime-repo: ${{ env.PRIME_REPO }}
46+
prime-repo: rancher
5447
prime-username: ${{ env.PRIME_REGISTRY_USERNAME }}
55-
prime-password: ${{ env.PRIME_REGISTRY_PASSWORD }}
56-
57-
# TODO: For experiment only
58-
- name: Login to registry [Public]
59-
uses: docker/login-action@v3
60-
with:
61-
registry: docker.io
62-
username: nickchungsuse
63-
password: ${{ secrets.DOCKER_PASSWORD }}
64-
- name: Login to registry [Prime]
65-
uses: docker/login-action@v3
66-
with:
67-
registry: docker.io
68-
username: nickchungsuse
69-
password: ${{ secrets.PRIME_REGISTRY_PASSWORD }}
70-
- name: Retag
71-
shell: bash
72-
run: |
73-
docker buildx imagetools create -t nickchungsuse/manager:latest nickchungsuse/manager:${{ github.ref_name }}
74-
docker buildx imagetools create -t nickchungsuse/manager:1 nickchungsuse/manager:${{ github.ref_name }}
48+
prime-password: ${{ env.PRIME_REGISTRY_PASSWORD }}

Makefile

Lines changed: 24 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -36,21 +36,7 @@ jar:
3636
RUNNER := docker
3737
IMAGE_BUILDER := $(RUNNER) buildx
3838
MACHINE := neuvector
39-
BUILDX_ARGS ?= --sbom=true --attest type=provenance,mode=max --cache-to type=gha --cache-from type=gha
4039
DEFAULT_PLATFORMS := linux/amd64,linux/arm64,linux/x390s,linux/riscv64
41-
TARGET_PLATFORMS ?= linux/amd64
42-
43-
CURRENT_OS := $(shell uname -s | tr '[:upper:]' '[:lower:]')
44-
CURRENT_ARCH := $(shell uname -m)
45-
46-
# Convert architecture names to match Docker's convention
47-
ifeq ($(CURRENT_ARCH),x86_64)
48-
CURRENT_ARCH := amd64
49-
else ifeq ($(CURRENT_ARCH),aarch64)
50-
CURRENT_ARCH := arm64
51-
endif
52-
53-
REPO ?= nickchungsuse
5440

5541
COMMIT = $(shell git rev-parse --short HEAD)
5642
ifeq ($(VERSION),)
@@ -90,11 +76,35 @@ ifeq ($(TAG),)
9076
endif
9177
endif
9278

79+
TARGET_PLATFORMS ?= linux/amd64,linux/arm64
80+
STAGE_DIR=stage
81+
REPO ?= neuvector
82+
IMAGE = $(REPO)/manager:$(TAG)
83+
BUILD_ACTION = --load
84+
BUILDX_ARGS ?= --sbom=true --attest type=provenance,mode=max --cache-to type=gha --cache-from type=gha
85+
86+
stage_init:
87+
rm -rf ${STAGE_DIR}; mkdir -p ${STAGE_DIR}
88+
mkdir -p ${STAGE_DIR}/usr/local/bin/
89+
mkdir -p ${STAGE_DIR}/licenses/
90+
mkdir -p ${STAGE_DIR}/usr/lib/jvm/java-17-openjdk/lib/security/
91+
9392
buildx-machine:
9493
docker buildx ls
9594
@docker buildx ls | grep $(MACHINE) || \
9695
docker buildx create --name=$(MACHINE) --platform=$(DEFAULT_PLATFORMS)
9796

97+
test-image:
98+
# Instead of loading image, target all platforms, effectivelly testing
99+
# the build for the target architectures.
100+
$(MAKE) build-image BUILD_ACTION="--platform=$(TARGET_PLATFORMS)"
101+
102+
build-image: buildx-machine ## build (and load) the container image targeting the current platform.
103+
$(IMAGE_BUILDER) build -f build/Dockerfile \
104+
--builder $(MACHINE) $(IMAGE_ARGS) \
105+
--build-arg VERSION=$(VERSION) -t "$(IMAGE)" $(BUILD_ACTION) .
106+
@echo "Built $(IMAGE)"
107+
98108
push-image: stage_init buildx-machine
99109
$(IMAGE_BUILDER) build -f build/Dockerfile \
100110
--builder $(MACHINE) $(IMAGE_ARGS) $(IID_FILE_FLAG) $(BUILDX_ARGS) \

build/Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
# Builder image
22
FROM registry.suse.com/bci/openjdk:17 AS builder
33

4-
ARG VERSION
5-
ARG COMMIT
64
ARG TARGETOS
75
ARG TARGETARCH
86

@@ -74,6 +72,8 @@ RUN cd /chroot/usr/bin/ && \
7472
unlink watch
7573

7674
FROM micro
75+
ARG VERSION
76+
ARG COMMIT
7777
WORKDIR /
7878
COPY --from=base /chroot/ /
7979
COPY --from=base /usr/sbin/useradd /usr/sbin

make_jar.sh

Lines changed: 0 additions & 47 deletions
This file was deleted.

0 commit comments

Comments
 (0)