Docker containers I use in CI workflows, for AMD64, ARM64 (AARCH64) and RISC-V 64
1# SPDX-FileCopyrightText: Copyright (C) 2024 Roland Csaszar
2# SPDX-License-Identifier: EUPL-1.2
3#
4# Project: CI-Docker-Container
5# File: build.sh
6# Date: 01.Dec.2024
7# =============================================================================
8# Build and upload all docker images.
9
10VERSION=3.22.1
11
12REAL_ARCH=$(uname -m)
13ARCH="_"
14
15if [ "${REAL_ARCH}" == "x86_64" ]; then
16 ARCH="amd64"
17elif [ "${REAL_ARCH}" == "aarch64" ]; then
18 ARCH="arm64"
19elif [ "${REAL_ARCH}" == "riscv64" ]; then
20 ARCH="riscv64"
21else
22 echo "ERROR: unknown arch ${REAL_ARCH}"
23 exit 1
24fi
25
26docker build --label org.label-schema.build-date=$(date -u +"%Y-%m-%dT%H:%M:%SZ") --file Javascript.Dockerfile --tag codeberg.org/release-candidate/ci-js:${VERSION}-${ARCH} .
27
28docker build --label org.label-schema.build-date=$(date -u +"%Y-%m-%dT%H:%M:%SZ") --file System.Dockerfile --tag codeberg.org/release-candidate/ci-system:${VERSION}-${ARCH} .
29
30# Push to Codeberg
31docker image push codeberg.org/release-candidate/ci-system:${VERSION}-${ARCH}
32docker image push codeberg.org/release-candidate/ci-js:${VERSION}-${ARCH}
33
34# Tags for Docker-Hub
35docker image tag codeberg.org/release-candidate/ci-system:${VERSION}-${ARCH} releasecandidate/ci-system:${VERSION}-${ARCH}
36docker image tag codeberg.org/release-candidate/ci-js:${VERSION}-${ARCH} releasecandidate/ci-js:${VERSION}-${ARCH}
37
38# Push to Docker-Hub
39docker image push releasecandidate/ci-system:${VERSION}-${ARCH}
40docker image push releasecandidate/ci-js:${VERSION}-${ARCH}