Add support for s390x (#1142)
* installing docker and jq Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * added support for s390x Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * adding back newline at end of file Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * adding back newline at end of file Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * updated release workflows Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * Running build and publish flow on fork Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * corrected typo Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * installing docker and jq Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * adding back newline at end of file Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * adding back newline at end of file Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * updated release workflows Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * corrected typo Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * reverting docker repo to buildpacksio Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * seperated s390x job to different file Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * removing hard coded values to secret Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * removed s390x conditon Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * adding s390x conditon Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> * correcting alignment in build.yml Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> --------- Signed-off-by: Dilip Gowda Bhagavan <dilip.bhagavan@ibm.com> Signed-off-by: Dilip Gowda Bhagavan <110233170+dilipgb@users.noreply.github.com>
This commit is contained in:
parent
7ce5b70299
commit
292aa492a7
|
|
@ -160,6 +160,14 @@ jobs:
|
|||
name: lifecycle-linux-arm64-sha256
|
||||
path: out/lifecycle-v*+linux.arm64.tgz.sha256
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: lifecycle-linux-s390x
|
||||
path: out/lifecycle-v*+linux.s390x.tgz
|
||||
- uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: lifecycle-linux-s390x-sha256
|
||||
path: out/lifecycle-v*+linux.s390x.tgz.sha256
|
||||
- uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: lifecycle-windows-x86-64
|
||||
path: out/lifecycle-v*+windows.x86-64.tgz
|
||||
|
|
@ -206,12 +214,16 @@ jobs:
|
|||
LINUX_ARM64_SHA=$(go run ./tools/image/main.go -lifecyclePath ./out/lifecycle-v*+linux.arm64.tgz -tag buildpacksio/lifecycle:${LIFECYCLE_IMAGE_TAG}-linux-arm64 -arch arm64 | awk '{print $NF}')
|
||||
echo "LINUX_ARM64_SHA: $LINUX_ARM64_SHA"
|
||||
|
||||
LINUX_S390X_SHA=$(go run ./tools/image/main.go -lifecyclePath ./out/lifecycle-v*+linux.s390x.tgz -tag buildpacksio/lifecycle:${LIFECYCLE_IMAGE_TAG}-linux-s390x -arch s390x | awk '{print $NF}')
|
||||
echo "LINUX_S390X_SHA: $LINUX_S390X_SHA"
|
||||
|
||||
WINDOWS_AMD64_SHA=$(go run ./tools/image/main.go -lifecyclePath ./out/lifecycle-v*+windows.x86-64.tgz -tag buildpacksio/lifecycle:${LIFECYCLE_IMAGE_TAG}-windows -os windows | awk '{print $NF}')
|
||||
echo "WINDOWS_AMD64_SHA: $WINDOWS_AMD64_SHA"
|
||||
|
||||
docker manifest create buildpacksio/lifecycle:${LIFECYCLE_IMAGE_TAG} \
|
||||
buildpacksio/lifecycle:${LIFECYCLE_IMAGE_TAG}-linux-x86-64@${LINUX_AMD64_SHA} \
|
||||
buildpacksio/lifecycle:${LIFECYCLE_IMAGE_TAG}-linux-arm64@${LINUX_ARM64_SHA} \
|
||||
buildpacksio/lifecycle:${LIFECYCLE_IMAGE_TAG}-linux-s390x@${LINUX_S390X_SHA} \
|
||||
buildpacksio/lifecycle:${LIFECYCLE_IMAGE_TAG}-windows@${WINDOWS_AMD64_SHA}
|
||||
|
||||
MANIFEST_SHA=$(docker manifest push buildpacksio/lifecycle:${LIFECYCLE_IMAGE_TAG})
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ jobs:
|
|||
exit 1
|
||||
fi
|
||||
echo "LIFECYCLE_VERSION=$version" >> $GITHUB_ENV
|
||||
- name: Determine download urls for linux-x86-64, linux-arm64, and windows
|
||||
- name: Determine download urls for linux-x86-64, linux-arm64, linux-s390x, and windows
|
||||
id: artifact-urls
|
||||
# FIXME: this script should be updated to work with actions/github-script@v6
|
||||
uses: actions/github-script@v3
|
||||
|
|
@ -82,8 +82,8 @@ jobs:
|
|||
if (urlList.length === 0) {
|
||||
throw "no artifacts found"
|
||||
}
|
||||
if (urlList.length != 8) {
|
||||
throw "there should be exactly 8 artifacts"
|
||||
if (urlList.length != 10) {
|
||||
throw "there should be exactly 10 artifacts"
|
||||
}
|
||||
return urlList.join(",")
|
||||
})
|
||||
|
|
|
|||
|
|
@ -54,11 +54,13 @@ jobs:
|
|||
|
||||
crane tag buildpacksio/lifecycle:${{ env.LIFECYCLE_IMAGE_TAG }}-linux-x86-64@${{ env.LINUX_AMD64_SHA }} ${{ env.LIFECYCLE_VERSION }}-linux-x86-64
|
||||
crane tag buildpacksio/lifecycle:${{ env.LIFECYCLE_IMAGE_TAG }}-linux-arm64@${{ env.LINUX_ARM64_SHA }} ${{ env.LIFECYCLE_VERSION }}-linux-arm64
|
||||
crane tag buildpacksio/lifecycle:${{ env.LIFECYCLE_IMAGE_TAG }}-linux-s390x@${{ env.LINUX_S390X_SHA }} ${{ env.LIFECYCLE_VERSION }}-linux-s390x
|
||||
crane tag buildpacksio/lifecycle:${{ env.LIFECYCLE_IMAGE_TAG }}-windows@${{ env.WINDOWS_AMD64_SHA }} ${{ env.LIFECYCLE_VERSION }}-windows
|
||||
|
||||
docker manifest create buildpacksio/lifecycle:${{ env.LIFECYCLE_VERSION }} \
|
||||
buildpacksio/lifecycle:${{ env.LIFECYCLE_VERSION }}-linux-x86-64@${{ env.LINUX_AMD64_SHA }} \
|
||||
buildpacksio/lifecycle:${{ env.LIFECYCLE_VERSION }}-linux-arm64@${{ env.LINUX_ARM64_SHA }} \
|
||||
buildpacksio/lifecycle:${{ env.LIFECYCLE_VERSION }}-linux-s390x@${{ env.LINUX_S390X_SHA }} \
|
||||
buildpacksio/lifecycle:${{ env.LIFECYCLE_VERSION }}-windows@${{ env.WINDOWS_AMD64_SHA }}
|
||||
|
||||
MANIFEST_SHA=$(docker manifest push buildpacksio/lifecycle:${{ env.LIFECYCLE_VERSION }})
|
||||
|
|
@ -89,11 +91,13 @@ jobs:
|
|||
|
||||
crane tag buildpacksio/lifecycle:${{ env.LIFECYCLE_IMAGE_TAG }}-linux-x86-64@${{ env.LINUX_AMD64_SHA }} latest-linux-x86-64
|
||||
crane tag buildpacksio/lifecycle:${{ env.LIFECYCLE_IMAGE_TAG }}-linux-arm64@${{ env.LINUX_ARM64_SHA }} latest-linux-arm64
|
||||
crane tag buildpacksio/lifecycle:${{ env.LIFECYCLE_IMAGE_TAG }}-linux-s390x@${{ env.LINUX_S390X_SHA }} latest-linux-s390x
|
||||
crane tag buildpacksio/lifecycle:${{ env.LIFECYCLE_IMAGE_TAG }}-windows@${{ env.WINDOWS_AMD64_SHA }} latest-windows
|
||||
|
||||
docker manifest create buildpacksio/lifecycle:latest \
|
||||
buildpacksio/lifecycle:latest-linux-x86-64@${{ env.LINUX_AMD64_SHA }} \
|
||||
buildpacksio/lifecycle:latest-linux-arm64@${{ env.LINUX_ARM64_SHA }} \
|
||||
buildpacksio/lifecycle:latest-linux-s390x@${{ env.LINUX_S390X_SHA }} \
|
||||
buildpacksio/lifecycle:latest-windows@${{ env.WINDOWS_AMD64_SHA }}
|
||||
|
||||
MANIFEST_SHA=$(docker manifest push buildpacksio/lifecycle:latest)
|
||||
|
|
|
|||
|
|
@ -0,0 +1,87 @@
|
|||
name: test-s390x
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
- 'release/**'
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
- 'release/**'
|
||||
|
||||
jobs:
|
||||
test-linux-s390x:
|
||||
if: (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/release*')
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
ZVSI_FP_NAME: bp-floating-ci-${{ github.run_id }}
|
||||
ZVSI_INSTANCE_NAME: bp-zvsi-ci-${{ github.run_id }}
|
||||
ZVSI_ZONE_NAME: ca-tor-1
|
||||
ZVSI_PROFILE_NAME: bz2-4x16
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: install ibmcli and setup ibm login
|
||||
run: |
|
||||
curl -fsSL https://clis.cloud.ibm.com/install/linux | sh
|
||||
ibmcloud login -q --apikey ${{ secrets.IBMCLOUD_API_KEY }} -r ca-tor
|
||||
ibmcloud plugin install vpc-infrastructure
|
||||
- name: Creation of ZVSI
|
||||
id: ZVSI
|
||||
run: |
|
||||
#creation of zvsi
|
||||
ibmcloud is instance-create $ZVSI_INSTANCE_NAME ${{ secrets.ZVSI_VPC }} $ZVSI_ZONE_NAME $ZVSI_PROFILE_NAME ${{ secrets.ZVSI_SUBNET }} --image ${{ secrets.ZVSI_IMAGE }} --keys ${{ secrets.ZVSI_KEY }} --resource-group-id ${{ secrets.ZVSI_RG_ID }} --sgs ${{ secrets.ZVSI_SG }}
|
||||
#Reserving a floating ip to the ZVSI
|
||||
ibmcloud is floating-ip-reserve $ZVSI_FP_NAME --zone $ZVSI_ZONE_NAME --resource-group-id ${{ secrets.ZVSI_RG_ID }} --in $ZVSI_INSTANCE_NAME
|
||||
#Bouding the Floating ip to the ZVSI
|
||||
ibmcloud is floating-ip-update $ZVSI_FP_NAME --nic primary --in $ZVSI_INSTANCE_NAME
|
||||
sleep 60
|
||||
#Saving the Floating IP to login ZVSI
|
||||
ZVSI_HOST=$(ibmcloud is floating-ip $ZVSI_FP_NAME | awk '/Address/{print $2}')
|
||||
echo $ZVSI_HOST
|
||||
echo "IP=${ZVSI_HOST}" >> $GITHUB_OUTPUT
|
||||
- name: Status of ZVSI
|
||||
run: |
|
||||
check=$(ibmcloud is ins| awk '/'$ZVSI_INSTANCE_NAME'/{print $3}')
|
||||
while [[ $check != "running" ]]
|
||||
do
|
||||
check=$(ibmcloud is ins | awk '/'$ZVSI_INSTANCE_NAME'/{print $3}')
|
||||
if [[ $check == 'failed' ]]
|
||||
then
|
||||
echo "Failed to run the ZVSI"
|
||||
break
|
||||
fi
|
||||
done
|
||||
- name: Install dependencies and run all tests on s390x ZVSI
|
||||
uses: appleboy/ssh-action@v0.1.10
|
||||
env:
|
||||
GH_REPOSITORY: ${{ github.server_url }}/${{ github.repository }}
|
||||
GH_REF: ${{ github.ref }}
|
||||
with:
|
||||
host: ${{ steps.ZVSI.outputs.IP }}
|
||||
username: ${{ secrets.ZVSI_SSH_USER }}
|
||||
key: ${{ secrets.ZVSI_PR_KEY }}
|
||||
envs: GH_REPOSITORY,GH_REF
|
||||
command_timeout: 100m
|
||||
script: |
|
||||
apt-get update -y
|
||||
apt-get install -y wget curl git make gcc jq docker.io
|
||||
wget https://go.dev/dl/go1.20.6.linux-s390x.tar.gz
|
||||
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.20.6.linux-s390x.tar.gz
|
||||
export PATH=$PATH:/usr/local/go/bin
|
||||
git clone ${GH_REPOSITORY} lifecycle
|
||||
cd lifecycle && git checkout ${GH_REF}
|
||||
go env
|
||||
export PATH=$PATH:~/go/bin
|
||||
make format || true
|
||||
make test
|
||||
- name: Cleanup ZVSI
|
||||
if: ${{ steps.ZVSI.conclusion == 'success' && always() }}
|
||||
run: |
|
||||
#Delete the created ZVSI
|
||||
ibmcloud is instance-delete $ZVSI_INSTANCE_NAME --force
|
||||
sleep 20
|
||||
#Release the created FP
|
||||
ibmcloud is floating-ip-release $ZVSI_FP_NAME --force
|
||||
66
Makefile
66
Makefile
|
|
@ -39,11 +39,12 @@ GOFILES := $(shell $(GOCMD) run tools$/lister$/main.go)
|
|||
|
||||
all: test build package
|
||||
|
||||
build: build-linux-amd64 build-linux-arm64 build-windows-amd64
|
||||
build: build-linux-amd64 build-linux-arm64 build-windows-amd64 build-linux-s390x
|
||||
|
||||
build-linux-amd64: build-linux-amd64-lifecycle build-linux-amd64-symlinks build-linux-amd64-launcher
|
||||
build-linux-arm64: build-linux-arm64-lifecycle build-linux-arm64-symlinks build-linux-arm64-launcher
|
||||
build-windows-amd64: build-windows-amd64-lifecycle build-windows-amd64-symlinks build-windows-amd64-launcher
|
||||
build-linux-s390x: build-linux-s390x-lifecycle build-linux-s390x-symlinks build-linux-s390x-launcher
|
||||
|
||||
build-image-linux-amd64: build-linux-amd64 package-linux-amd64
|
||||
build-image-linux-amd64: ARCHIVE_PATH=$(BUILD_DIR)/lifecycle-v$(LIFECYCLE_VERSION)+linux.x86-64.tgz
|
||||
|
|
@ -60,10 +61,17 @@ build-image-windows-amd64: ARCHIVE_PATH=$(BUILD_DIR)/lifecycle-v$(LIFECYCLE_VERS
|
|||
build-image-windows-amd64:
|
||||
$(GOCMD) run ./tools/image/main.go -daemon -lifecyclePath $(ARCHIVE_PATH) -os windows -arch amd64 -tag lifecycle:$(LIFECYCLE_IMAGE_TAG)
|
||||
|
||||
build-image-linux-s390x: build-linux-s390x package-linux-s390x
|
||||
build-image-linux-s390x: ARCHIVE_PATH=$(BUILD_DIR)/lifecycle-v$(LIFECYCLE_VERSION)+linux.s390x.tgz
|
||||
build-image-linux-s390x:
|
||||
$(GOCMD) run ./tools/image/main.go -daemon -lifecyclePath $(ARCHIVE_PATH) -os linux -arch s390x -tag lifecycle:$(LIFECYCLE_IMAGE_TAG)
|
||||
|
||||
build-linux-amd64-lifecycle: $(BUILD_DIR)/linux-amd64/lifecycle/lifecycle
|
||||
|
||||
build-linux-arm64-lifecycle: $(BUILD_DIR)/linux-arm64/lifecycle/lifecycle
|
||||
|
||||
build-linux-s390x-lifecycle: $(BUILD_DIR)/linux-s390x/lifecycle/lifecycle
|
||||
|
||||
$(BUILD_DIR)/linux-amd64/lifecycle/lifecycle: export GOOS:=linux
|
||||
$(BUILD_DIR)/linux-amd64/lifecycle/lifecycle: export GOARCH:=amd64
|
||||
$(BUILD_DIR)/linux-amd64/lifecycle/lifecycle: OUT_DIR?=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle
|
||||
|
|
@ -82,6 +90,15 @@ $(BUILD_DIR)/linux-arm64/lifecycle/lifecycle:
|
|||
mkdir -p $(OUT_DIR)
|
||||
$(GOENV) $(GOBUILD) -o $(OUT_DIR)/lifecycle -a ./cmd/lifecycle
|
||||
|
||||
$(BUILD_DIR)/linux-s390x/lifecycle/lifecycle: export GOOS:=linux
|
||||
$(BUILD_DIR)/linux-s390x/lifecycle/lifecycle: export GOARCH:=s390x
|
||||
$(BUILD_DIR)/linux-s390x/lifecycle/lifecycle: OUT_DIR?=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle
|
||||
$(BUILD_DIR)/linux-s390x/lifecycle/lifecycle: $(GOFILES)
|
||||
$(BUILD_DIR)/linux-s390x/lifecycle/lifecycle:
|
||||
@echo "> Building lifecycle/lifecycle for $(GOOS)/$(GOARCH)..."
|
||||
mkdir -p $(OUT_DIR)
|
||||
$(GOENV) $(GOBUILD) -o $(OUT_DIR)/lifecycle -a ./cmd/lifecycle
|
||||
|
||||
build-linux-amd64-launcher: $(BUILD_DIR)/linux-amd64/lifecycle/launcher
|
||||
|
||||
$(BUILD_DIR)/linux-amd64/lifecycle/launcher: export GOOS:=linux
|
||||
|
|
@ -106,6 +123,18 @@ $(BUILD_DIR)/linux-arm64/lifecycle/launcher:
|
|||
$(GOENV) $(GOBUILD) -o $(OUT_DIR)/launcher -a ./cmd/launcher
|
||||
test $$(du -m $(OUT_DIR)/launcher|cut -f 1) -le 3
|
||||
|
||||
build-linux-s390x-launcher: $(BUILD_DIR)/linux-s390x/lifecycle/launcher
|
||||
|
||||
$(BUILD_DIR)/linux-s390x/lifecycle/launcher: export GOOS:=linux
|
||||
$(BUILD_DIR)/linux-s390x/lifecycle/launcher: export GOARCH:=s390x
|
||||
$(BUILD_DIR)/linux-s390x/lifecycle/launcher: OUT_DIR?=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle
|
||||
$(BUILD_DIR)/linux-s390x/lifecycle/launcher: $(GOFILES)
|
||||
$(BUILD_DIR)/linux-s390x/lifecycle/launcher:
|
||||
@echo "> Building lifecycle/launcher for $(GOOS)/$(GOARCH)..."
|
||||
mkdir -p $(OUT_DIR)
|
||||
$(GOENV) $(GOBUILD) -o $(OUT_DIR)/launcher -a ./cmd/launcher
|
||||
test $$(du -m $(OUT_DIR)/launcher|cut -f 1) -le 3
|
||||
|
||||
build-linux-amd64-symlinks: export GOOS:=linux
|
||||
build-linux-amd64-symlinks: export GOARCH:=amd64
|
||||
build-linux-amd64-symlinks: OUT_DIR?=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle
|
||||
|
|
@ -134,6 +163,20 @@ build-linux-arm64-symlinks:
|
|||
ln -sf lifecycle $(OUT_DIR)/creator
|
||||
ln -sf lifecycle $(OUT_DIR)/extender
|
||||
|
||||
build-linux-s390x-symlinks: export GOOS:=linux
|
||||
build-linux-s390x-symlinks: export GOARCH:=s390x
|
||||
build-linux-s390x-symlinks: OUT_DIR?=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle
|
||||
build-linux-s390x-symlinks:
|
||||
@echo "> Creating phase symlinks for $(GOOS)/$(GOARCH)..."
|
||||
ln -sf lifecycle $(OUT_DIR)/detector
|
||||
ln -sf lifecycle $(OUT_DIR)/analyzer
|
||||
ln -sf lifecycle $(OUT_DIR)/restorer
|
||||
ln -sf lifecycle $(OUT_DIR)/builder
|
||||
ln -sf lifecycle $(OUT_DIR)/exporter
|
||||
ln -sf lifecycle $(OUT_DIR)/rebaser
|
||||
ln -sf lifecycle $(OUT_DIR)/creator
|
||||
ln -sf lifecycle $(OUT_DIR)/extender
|
||||
|
||||
build-windows-amd64-lifecycle: $(BUILD_DIR)/windows-amd64/lifecycle/lifecycle.exe
|
||||
|
||||
$(BUILD_DIR)/windows-amd64/lifecycle/lifecycle.exe: export GOOS:=windows
|
||||
|
|
@ -211,7 +254,7 @@ build-darwin-amd64-launcher:
|
|||
$(eval OUT_DIR := $(BUILD_DIR)/$(TARGET)/lifecycle)
|
||||
$(call build_launcher)
|
||||
|
||||
generate-sbom: run-syft-windows run-syft-linux-amd64 run-syft-linux-arm64
|
||||
generate-sbom: run-syft-windows run-syft-linux-amd64 run-syft-linux-arm64 run-syft-linux-s390x
|
||||
|
||||
run-syft-windows: install-syft
|
||||
run-syft-windows: export GOOS:=windows
|
||||
|
|
@ -237,6 +280,14 @@ run-syft-linux-arm64:
|
|||
syft $(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/lifecycle -o json=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/lifecycle.sbom.syft.json -o spdx-json=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/lifecycle.sbom.spdx.json -o cyclonedx-json=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/lifecycle.sbom.cdx.json
|
||||
syft $(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/launcher -o json=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/launcher.sbom.syft.json -o spdx-json=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/launcher.sbom.spdx.json -o cyclonedx-json=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/launcher.sbom.cdx.json
|
||||
|
||||
run-syft-linux-s390x: install-syft
|
||||
run-syft-linux-s390x: export GOOS:=linux
|
||||
run-syft-linux-s390x: export GOARCH:=s390x
|
||||
run-syft-linux-s390x:
|
||||
@echo "> Running syft..."
|
||||
syft $(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/lifecycle -o json=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/lifecycle.sbom.syft.json -o spdx-json=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/lifecycle.sbom.spdx.json -o cyclonedx-json=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/lifecycle.sbom.cdx.json
|
||||
syft $(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/launcher -o json=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/launcher.sbom.syft.json -o spdx-json=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/launcher.sbom.spdx.json -o cyclonedx-json=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle/launcher.sbom.cdx.json
|
||||
|
||||
install-syft:
|
||||
@echo "> Installing syft..."
|
||||
curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh -s -- -b /usr/local/bin
|
||||
|
|
@ -298,7 +349,7 @@ clean:
|
|||
@echo "> Cleaning workspace..."
|
||||
rm -rf $(BUILD_DIR)
|
||||
|
||||
package: generate-sbom package-linux-amd64 package-linux-arm64 package-windows-amd64
|
||||
package: generate-sbom package-linux-amd64 package-linux-arm64 package-windows-amd64 package-linux-s390x
|
||||
|
||||
package-linux-amd64: GOOS:=linux
|
||||
package-linux-amd64: GOARCH:=amd64
|
||||
|
|
@ -318,6 +369,15 @@ package-linux-arm64:
|
|||
@echo "> Packaging lifecycle for $(GOOS)/$(GOARCH)..."
|
||||
$(GOCMD) run $(PACKAGER) --inputDir $(INPUT_DIR) -archivePath $(ARCHIVE_PATH) -descriptorPath $(LIFECYCLE_DESCRIPTOR_PATH) -version $(LIFECYCLE_VERSION)
|
||||
|
||||
package-linux-s390x: GOOS:=linux
|
||||
package-linux-s390x: GOARCH:=s390x
|
||||
package-linux-s390x: INPUT_DIR:=$(BUILD_DIR)/$(GOOS)-$(GOARCH)/lifecycle
|
||||
package-linux-s390x: ARCHIVE_PATH=$(BUILD_DIR)/lifecycle-v$(LIFECYCLE_VERSION)+$(GOOS).s390x.tgz
|
||||
package-linux-s390x: PACKAGER=./tools/packager/main.go
|
||||
package-linux-s390x:
|
||||
@echo "> Packaging lifecycle for $(GOOS)/$(GOARCH)..."
|
||||
$(GOCMD) run $(PACKAGER) --inputDir $(INPUT_DIR) -archivePath $(ARCHIVE_PATH) -descriptorPath $(LIFECYCLE_DESCRIPTOR_PATH) -version $(LIFECYCLE_VERSION)
|
||||
|
||||
package-windows-amd64: GOOS:=windows
|
||||
package-windows-amd64: GOARCH:=amd64
|
||||
package-windows-amd64: INPUT_DIR:=$(BUILD_DIR)$/$(GOOS)-$(GOARCH)$/lifecycle
|
||||
|
|
|
|||
Loading…
Reference in New Issue