Skip to content

Commit 76f44a2

Browse files
committed
Build works
Signed-off-by: Pierangelo Di Pilato <pierdipi@redhat.com>
1 parent cc35262 commit 76f44a2

File tree

5 files changed

+32
-14
lines changed

5 files changed

+32
-14
lines changed

hack/build.sh

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,22 @@
22

33
source "$(dirname $0)/common.sh"
44

5+
err_report() {
6+
echo "!!! Error on line $1 !!!"
7+
exit 1
8+
}
9+
10+
set -T # inherit DEBUG and RETURN trap for functions
11+
set -C # prevent file overwrite by > &> <>
12+
set -E # inherit -e
13+
set -e # exit immediately on errors
14+
set -u # exit on not assigned variables
15+
set -o pipefail # exit on pipe failure
16+
17+
trap 'err_report $LINENO' ERR
18+
519
export KO_DOCKER_REPO="${KO_DOCKER_REPO:-kind.local}"
620

721
build_transform_jsonata_image || exit $?
8-
push_transform_jsonata_image || exit $?
922

10-
#build_integration_images || exit $?
23+
build_integration_images || exit $?

hack/common.sh

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ set -euo pipefail
44

55
export TAG=${TAG:-$(git rev-parse HEAD)}
66

7+
export KO_DOCKER_REPO="${KO_DOCKER_REPO:-kind.local}"
78
export TRANSFORM_JSONATA_IMAGE_WITH_TAG="${KO_DOCKER_REPO}/transform-jsonata:${TAG}"
89

910
[[ ! -v REPO_ROOT_DIR ]] && REPO_ROOT_DIR="$(git rev-parse --show-toplevel)"
@@ -12,19 +13,18 @@ readonly REPO_ROOT_DIR
1213
function build_transform_jsonata_image() {
1314

1415
docker version
16+
docker buildx version
1517

16-
docker buildx build \
18+
docker buildx build --debug \
1719
--platform "linux/amd64" \
1820
-t "${TRANSFORM_JSONATA_IMAGE_WITH_TAG}-amd64" \
1921
-f "${REPO_ROOT_DIR}/transform-jsonata/Dockerfile" \
20-
--output=type=docker \
2122
"${REPO_ROOT_DIR}/transform-jsonata" || return $?
2223

23-
docker buildx build \
24+
docker buildx build --debug \
2425
--platform "linux/arm64" \
2526
-t "${TRANSFORM_JSONATA_IMAGE_WITH_TAG}-arm64" \
2627
-f "${REPO_ROOT_DIR}/transform-jsonata/Dockerfile" \
27-
--output=type=docker \
2828
"${REPO_ROOT_DIR}/transform-jsonata" || return $?
2929
}
3030

@@ -33,15 +33,18 @@ function push_transform_jsonata_image() {
3333
docker push "${TRANSFORM_JSONATA_IMAGE_WITH_TAG}-arm64" || return $?
3434

3535
echo "Creating manifest ${TRANSFORM_JSONATA_IMAGE_WITH_TAG}"
36-
docker manifest create "${TRANSFORM_JSONATA_IMAGE_WITH_TAG}" \
36+
docker manifest create --amend "${TRANSFORM_JSONATA_IMAGE_WITH_TAG}" \
3737
"${TRANSFORM_JSONATA_IMAGE_WITH_TAG}-amd64" \
3838
"${TRANSFORM_JSONATA_IMAGE_WITH_TAG}-arm64" || return $?
3939

4040
echo "Pushing manifest ${TRANSFORM_JSONATA_IMAGE_WITH_TAG}"
4141
docker manifest push "${TRANSFORM_JSONATA_IMAGE_WITH_TAG}" || return $?
42-
# TODO figure out digest properly
43-
# TRANSFORM_JSONATA_IMAGE=$(docker inspect --format '{{index .RepoDigests 0}}' "${image}")
44-
# export TRANSFORM_JSONATA_IMAGE
42+
43+
digest=$(docker buildx imagetools inspect "${TRANSFORM_JSONATA_IMAGE_WITH_TAG}" --format "{{json .Manifest.Digest }}" | tr -d '"')
44+
TRANSFORM_JSONATA_IMAGE="${TRANSFORM_JSONATA_IMAGE_WITH_TAG}@${digest}"
45+
export TRANSFORM_JSONATA_IMAGE
46+
47+
echo "TRANSFORM_JSONATA_IMAGE=${TRANSFORM_JSONATA_IMAGE}"
4548
}
4649

4750
function build_integration_images() {

transform-jsonata/Dockerfile

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
FROM registry.access.redhat.com/ubi9/nodejs-20 AS builder
1+
FROM --platform=$TARGETPLATFORM registry.access.redhat.com/ubi9/nodejs-20 AS builder
2+
3+
ARG TARGETPLATFORM
24

35
# Set working directory
46
WORKDIR /app
@@ -22,7 +24,7 @@ COPY . .
2224
RUN pnpm build || echo "No build step found, skipping"
2325

2426
# Use a minimal base image for runtime
25-
FROM registry.access.redhat.com/ubi9/nodejs-20
27+
FROM --platform=$TARGETPLATFORM registry.access.redhat.com/ubi9/nodejs-20
2628

2729
ENV NODE_ENV=production
2830

transform-jsonata/jsonata.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ const jsonata_response_transform_file_name = process.env.JSONATA_RESPONSE_TRANSF
4040

4141
const jsonata_discard_response_body = process.env.JSONATA_DISCARD_RESPONSE_BODY === "true" || false;
4242

43-
const jsonata_config_tracing = JSON.parse(process.env.JSONATA_CONFIG_TRACING || '{}')
43+
const jsonata_config_tracing = JSON.parse(process.env.K_TRACING_CONFIG || '{}')
4444

4545
const oidc_token_file = process.env.OIDC_TOKEN_FILE || undefined
4646
if (oidc_token_file && !fs.existsSync(oidc_token_file)) {

transform-jsonata/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"scripts": {
55
"dev": "NODE_ENV=development OIDC_TOKEN_FILE=./examples/example-token.txt JSONATA_TRANSFORM_FILE_NAME=./examples/jsonata_transform_identity.jsonata nodemon ./jsonata.js",
66
"dev-kubevirt": "NODE_ENV=development OIDC_TOKEN_FILE=./examples/example-token.txt JSONATA_TRANSFORM_FILE_NAME=./examples/ce_apiserversource_kubevirt.jsonata nodemon ./jsonata.js",
7-
"dev-zipkin": "NODE_ENV=development JSONATA_CONFIG_TRACING='{\"backend\":\"zipkin\", \"zipkin-endpoint\": \"http://localhost:9411/api/v2/spans\", \"sample-rate\":\"1\"}' OIDC_TOKEN_FILE=./examples/example-token.txt JSONATA_TRANSFORM_FILE_NAME=./examples/jsonata_transform_identity.jsonata nodemon ./jsonata.js"
7+
"dev-zipkin": "NODE_ENV=development K_TRACING_CONFIG='{\"backend\":\"zipkin\", \"zipkin-endpoint\": \"http://localhost:9411/api/v2/spans\", \"sample-rate\":\"1\"}' OIDC_TOKEN_FILE=./examples/example-token.txt JSONATA_TRANSFORM_FILE_NAME=./examples/jsonata_transform_identity.jsonata nodemon ./jsonata.js"
88
},
99
"dependencies": {
1010
"jsonata": "^2.0.6",

0 commit comments

Comments
 (0)