File tree Expand file tree Collapse file tree 5 files changed +44
-1
lines changed Expand file tree Collapse file tree 5 files changed +44
-1
lines changed Original file line number Diff line number Diff line change @@ -151,6 +151,8 @@ jobs:
151
151
retry_wait_seconds : 300
152
152
continue_on_error : true
153
153
command : VERSION="${GRID_VERSION}" BUILD_DATE=${BUILD_DATE} make release_latest
154
+ - name : Update package versions
155
+ run : make generate_latest_sbom
154
156
- name : Tag browser images
155
157
if : github.event.inputs.skip-build-push-image != 'true'
156
158
uses : nick-invision/retry@master
@@ -201,4 +203,6 @@ jobs:
201
203
prerelease : ${{ env.PRERELEASE }}
202
204
draft : false
203
205
append_body : false
204
- files : ${{ env.PUBLISH_YAML_MANIFESTS }}
206
+ files : |
207
+ package_versions.txt
208
+ ${{ env.PUBLISH_YAML_MANIFESTS }}
Original file line number Diff line number Diff line change @@ -113,6 +113,8 @@ jobs:
113
113
max_attempts : 3
114
114
retry_wait_seconds : 120
115
115
command : VERSION="${GRID_VERSION}" BUILD_DATE=${BUILD_DATE} make release_nightly
116
+ - name : Update package versions
117
+ run : make generate_nightly_sbom
116
118
- name : Push Helm chart to registry
117
119
uses : nick-invision/retry@master
118
120
with :
@@ -151,6 +153,7 @@ jobs:
151
153
name : " Nightly"
152
154
body_path : " release_notes.md"
153
155
files : |
156
+ package_versions.txt
154
157
${{ env.CHART_PACKAGE_PATH }}
155
158
generate_release_notes : true
156
159
draft : false
Original file line number Diff line number Diff line change @@ -25,6 +25,7 @@ CURRENT_PLATFORM := $(shell if [ `arch` = "aarch64" ]; then echo "linux/arm64";
25
25
PLATFORMS := $(or $(PLATFORMS ) ,$(shell echo $$PLATFORMS) ,$(CURRENT_PLATFORM ) )
26
26
SEL_PASSWD := $(or $(SEL_PASSWD ) ,$(SEL_PASSWD ) ,secret)
27
27
CHROMIUM_VERSION := $(or $(CHROMIUM_VERSION ) ,$(CHROMIUM_VERSION ) ,latest)
28
+ SBOM_OUTPUT := $(or $(SBOM_OUTPUT ) ,$(SBOM_OUTPUT ) ,package_versions.txt)
28
29
29
30
all : hub \
30
31
distributor \
@@ -341,6 +342,9 @@ release_latest:
341
342
docker push $(NAME ) /standalone-docker:latest
342
343
docker push $(NAME ) /video:latest
343
344
345
+ generate_latest_sbom :
346
+ NAME=$(NAME ) FILTER_IMAGE_TAG=latest OUTPUT_FILE=$(SBOM_OUTPUT ) ./generate_sbom.sh
347
+
344
348
tag_nightly :
345
349
docker tag $(NAME ) /base:$(TAG_VERSION ) $(NAME ) /base:nightly
346
350
docker tag $(NAME ) /hub:$(TAG_VERSION ) $(NAME ) /hub:nightly
@@ -383,6 +387,9 @@ release_nightly:
383
387
docker push $(NAME ) /standalone-docker:nightly
384
388
docker push $(NAME ) /video:nightly
385
389
390
+ generate_nightly_sbom :
391
+ NAME=$(NAME ) FILTER_IMAGE_TAG=nightly OUTPUT_FILE=$(SBOM_OUTPUT ) ./generate_sbom.sh
392
+
386
393
tag_major_minor :
387
394
docker tag $(NAME ) /base:$(TAG_VERSION ) $(NAME ) /base:$(MAJOR )
388
395
docker tag $(NAME ) /hub:$(TAG_VERSION ) $(NAME ) /hub:$(MAJOR )
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ NAMESPACE=${NAME:- selenium}
4
+ FILTER_IMAGE_TAG=${FILTER_IMAGE_TAG:- " *" }
5
+ OUTPUT_FILE=${OUTPUT_FILE:- " package_versions.txt" }
6
+
7
+ # List all Docker images matching tag
8
+ images=$( docker images --filter=reference=${NAMESPACE} ' /*:' ${FILTER_IMAGE_TAG} --format " {{.Repository}}:{{.Tag}}" )
9
+
10
+ # Check if there are any images
11
+ if [ -z " $images " ]; then
12
+ echo " No Docker images found."
13
+ exit 1
14
+ fi
15
+
16
+ echo -n " " > ${OUTPUT_FILE}
17
+ # Iterate through each image and generate SBOM
18
+ for image in $images ; do
19
+ echo " Generating SBOM for image: $image "
20
+ echo " ==================== $image ====================" >> ${OUTPUT_FILE}
21
+ docker sbom $image >> ${OUTPUT_FILE}
22
+ echo " " >> ${OUTPUT_FILE}
23
+ done
24
+
25
+ echo " SBOM generation completed for all images."
Original file line number Diff line number Diff line change @@ -57,6 +57,10 @@ chmod +x ./docker-compose
57
57
sudo mv ./docker-compose /usr/libexec/docker/cli-plugins
58
58
docker compose version
59
59
echo " ==============================="
60
+ echo " Install Docker SBOMs plugin"
61
+ curl -sSfL https://raw.githubusercontent.com/docker/sbom-cli-plugin/main/install.sh | sh -s --
62
+ docker sbom --version
63
+ echo " ==============================="
60
64
if [ " ${CLUSTER} " = " kind" ]; then
61
65
echo " Installing kind for AMD64 / ARM64"
62
66
curl -fsSL -o ./kind https://kind.sigs.k8s.io/dl/latest/kind-linux-$( dpkg --print-architecture)
You can’t perform that action at this time.
0 commit comments