mirror of
https://github.com/buanet/ioBroker.docker.git
synced 2025-12-17 10:29:00 +02:00
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3.2.0 to 3.6.0. - [Release notes](https://github.com/docker/setup-qemu-action/releases) - [Commits](https://github.com/docker/setup-qemu-action/compare/v3.2.0...v3.6.0) --- updated-dependencies: - dependency-name: docker/setup-qemu-action dependency-version: 3.6.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
478 lines
23 KiB
YAML
478 lines
23 KiB
YAML
# Github action to build Debian12 image (Tag: beta)
|
|
name: Build Debian 12 Image (beta)
|
|
|
|
on:
|
|
release:
|
|
types: [prereleased]
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
create-build-number:
|
|
name: Create build number
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
build_number: ${{ steps.generate-build-number.outputs.build_number }}
|
|
release_tag: ${{ steps.fetch-prerelease-tag.outputs.release_tag }}
|
|
steps:
|
|
- name: Fetch latest prerelease tag
|
|
run: |
|
|
PRERELEASE_TAG=$(curl -sL "https://api.github.com/repos/buanet/ioBroker.docker/releases" | jq -r '[.[] | select(.prerelease)][0].tag_name')
|
|
if [ -z "$PRERELEASE_TAG" ]; then
|
|
echo "[LOG] No prerelease found!" >&2
|
|
exit 1
|
|
fi
|
|
echo "RELEASE_TAG=$PRERELEASE_TAG" >> $GITHUB_ENV
|
|
echo "release_tag=$PRERELEASE_TAG" >> $GITHUB_OUTPUT
|
|
echo "[LOG] Release tag: $PRERELEASE_TAG"
|
|
|
|
- name: Checkout repo
|
|
uses: actions/checkout@v4.1.7
|
|
with:
|
|
repository: 'buanet/ioBroker.docker'
|
|
ref: ${{ env.RELEASE_TAG }}
|
|
|
|
- name: Generate build number
|
|
id: generate-build-number
|
|
run: |
|
|
BUILD="$(date +"%Y%m%d.%H%M%S")"
|
|
echo "build_number=$BUILD" >> $GITHUB_OUTPUT
|
|
echo "[LOG] Buildnumber: $BUILD"
|
|
|
|
build-beta-armv7-recommended-node:
|
|
name: Build beta armv7 image with recommended node version
|
|
needs: [create-build-number]
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repo
|
|
uses: actions/checkout@v4.1.7
|
|
with:
|
|
repository: 'buanet/ioBroker.docker'
|
|
ref: ${{ needs.create-build-number.outputs.release_tag }}
|
|
|
|
- name: Set job variables
|
|
run: |
|
|
VERSION="$(cat .VERSION)"
|
|
BUILD="${{ needs.create-build-number.outputs.build_number }}"
|
|
# Log output and export as Github environment variable
|
|
echo "[LOG] Nodejs Version: ${{ vars.RECOMMENDED_NODE_VERSION }}"
|
|
echo "[LOG] Image Version: $VERSION"
|
|
echo "version=$VERSION" >> $GITHUB_ENV
|
|
echo "[LOG] Buildnumber: $BUILD"
|
|
echo "build=$BUILD" >> $GITHUB_ENV
|
|
# Set values in iobroker_startup.sh
|
|
sed -e "s/\${VERSION}/$VERSION/" -e "s/\${BUILD}/$BUILD/" ./debian12/scripts/iobroker_startup.sh > ./debian12/scripts/iobroker_startup.tmp
|
|
mv -f ./debian12/scripts/iobroker_startup.tmp ./debian12/scripts/iobroker_startup.sh
|
|
# Set values in Dockerfile
|
|
sed -e "s/\${VERSION}/$VERSION/" -e "s/\${DATI}/$BUILD/" -e "s/\${BUILD}/$BUILD/" -e "s/\${NODE}/${{ vars.RECOMMENDED_NODE_VERSION }}/" ./debian12/Dockerfile > ./debian12/Dockerfile.tmp
|
|
mv -f ./debian12/Dockerfile.tmp ./debian12/Dockerfile
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3.6.0
|
|
|
|
- name: Set up Docker Buildx
|
|
id: buildx
|
|
uses: docker/setup-buildx-action@v3.6.1
|
|
|
|
- name: Login to DockerHub (buanet)
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
username: ${{ secrets.DOCKER_USER }}
|
|
password: ${{ secrets.DOCKER_PASS }}
|
|
|
|
- name: Login to GitHub Container Registry
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ secrets.PACKAGES_USER }}
|
|
password: ${{ secrets.PACKAGES_PASS }}
|
|
|
|
- name: Build and push Docker image
|
|
uses: docker/build-push-action@v6.6.1
|
|
with:
|
|
context: ./debian12
|
|
file: ./debian12/Dockerfile
|
|
push: true
|
|
platforms: linux/arm/v7
|
|
tags: |
|
|
buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7,
|
|
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7,
|
|
|
|
build-beta-arm64v8-recommended-node:
|
|
name: Build beta armv64v8 image with recommended node version
|
|
needs: [create-build-number]
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repo
|
|
uses: actions/checkout@v4.1.7
|
|
with:
|
|
repository: 'buanet/ioBroker.docker'
|
|
ref: ${{ needs.create-build-number.outputs.release_tag }}
|
|
|
|
- name: Set job variables
|
|
run: |
|
|
VERSION="$(cat .VERSION)"
|
|
BUILD="${{ needs.create-build-number.outputs.build_number }}"
|
|
# Log output and export as Github environment variable
|
|
echo "[LOG] Nodejs Version: ${{ vars.RECOMMENDED_NODE_VERSION }}"
|
|
echo "[LOG] Image Version: $VERSION"
|
|
echo "version=$VERSION" >> $GITHUB_ENV
|
|
echo "[LOG] Buildnumber: $BUILD"
|
|
echo "build=$BUILD" >> $GITHUB_ENV
|
|
# Set values in iobroker_startup.sh
|
|
sed -e "s/\${VERSION}/$VERSION/" -e "s/\${BUILD}/$BUILD/" ./debian12/scripts/iobroker_startup.sh > ./debian12/scripts/iobroker_startup.tmp
|
|
mv -f ./debian12/scripts/iobroker_startup.tmp ./debian12/scripts/iobroker_startup.sh
|
|
# Set values in Dockerfile
|
|
sed -e "s/\${VERSION}/$VERSION/" -e "s/\${DATI}/$BUILD/" -e "s/\${BUILD}/$BUILD/" -e "s/\${NODE}/${{ vars.RECOMMENDED_NODE_VERSION }}/" ./debian12/Dockerfile > ./debian12/Dockerfile.tmp
|
|
mv -f ./debian12/Dockerfile.tmp ./debian12/Dockerfile
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3.6.0
|
|
|
|
- name: Set up Docker Buildx
|
|
id: buildx
|
|
uses: docker/setup-buildx-action@v3.6.1
|
|
|
|
- name: Login to DockerHub (buanet)
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
username: ${{ secrets.DOCKER_USER }}
|
|
password: ${{ secrets.DOCKER_PASS }}
|
|
|
|
- name: Login to GitHub Container Registry
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ secrets.PACKAGES_USER }}
|
|
password: ${{ secrets.PACKAGES_PASS }}
|
|
|
|
- name: Build and push Docker image
|
|
uses: docker/build-push-action@v6.6.1
|
|
with:
|
|
context: ./debian12
|
|
file: ./debian12/Dockerfile
|
|
push: true
|
|
platforms: linux/arm64/v8
|
|
tags: |
|
|
buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8,
|
|
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8,
|
|
|
|
build-beta-amd64-recommended-node:
|
|
name: Build beta amd64 image with recommended node version
|
|
needs: [create-build-number]
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repo
|
|
uses: actions/checkout@v4.1.7
|
|
with:
|
|
repository: 'buanet/ioBroker.docker'
|
|
ref: ${{ needs.create-build-number.outputs.release_tag }}
|
|
|
|
- name: Set job variables
|
|
run: |
|
|
VERSION="$(cat .VERSION)"
|
|
BUILD="${{ needs.create-build-number.outputs.build_number }}"
|
|
# Log output and export as Github environment variable
|
|
echo "[LOG] Nodejs Version: ${{ vars.RECOMMENDED_NODE_VERSION }}"
|
|
echo "[LOG] Image Version: $VERSION"
|
|
echo "version=$VERSION" >> $GITHUB_ENV
|
|
echo "[LOG] Buildnumber: $BUILD"
|
|
echo "build=$BUILD" >> $GITHUB_ENV
|
|
# Set values in iobroker_startup.sh
|
|
sed -e "s/\${VERSION}/$VERSION/" -e "s/\${BUILD}/$BUILD/" ./debian12/scripts/iobroker_startup.sh > ./debian12/scripts/iobroker_startup.tmp
|
|
mv -f ./debian12/scripts/iobroker_startup.tmp ./debian12/scripts/iobroker_startup.sh
|
|
# Set values in Dockerfile
|
|
sed -e "s/\${VERSION}/$VERSION/" -e "s/\${DATI}/$BUILD/" -e "s/\${BUILD}/$BUILD/" -e "s/\${NODE}/${{ vars.RECOMMENDED_NODE_VERSION }}/" ./debian12/Dockerfile > ./debian12/Dockerfile.tmp
|
|
mv -f ./debian12/Dockerfile.tmp ./debian12/Dockerfile
|
|
|
|
- name: Set up Docker Buildx
|
|
id: buildx
|
|
uses: docker/setup-buildx-action@v3.6.1
|
|
|
|
- name: Login to DockerHub (buanet)
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
username: ${{ secrets.DOCKER_USER }}
|
|
password: ${{ secrets.DOCKER_PASS }}
|
|
|
|
- name: Login to GitHub Container Registry
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ secrets.PACKAGES_USER }}
|
|
password: ${{ secrets.PACKAGES_PASS }}
|
|
|
|
- name: Build and push Docker image
|
|
uses: docker/build-push-action@v6.6.1
|
|
with:
|
|
context: ./debian12
|
|
file: ./debian12/Dockerfile
|
|
push: true
|
|
platforms: linux/amd64
|
|
tags: |
|
|
buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64,
|
|
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64,
|
|
|
|
create-multiarch-image-with-recommended-node:
|
|
name: Create multiarch image with recommended node version
|
|
runs-on: ubuntu-latest
|
|
needs: [build-beta-armv7-recommended-node, build-beta-arm64v8-recommended-node, build-beta-amd64-recommended-node]
|
|
steps:
|
|
- name: Checkout repo
|
|
uses: actions/checkout@v4.1.7
|
|
with:
|
|
repository: 'buanet/ioBroker.docker'
|
|
ref: ${{ needs.create-build-number.outputs.release_tag }}
|
|
|
|
- name: Set job variables
|
|
run: |
|
|
VERSION="$(cat .VERSION)"
|
|
BUILD="${{ needs.create-build-number.outputs.build_number }}"
|
|
# Log output and export as Github environment variable
|
|
echo "[LOG] Nodejs Version: ${{ vars.RECOMMENDED_NODE_VERSION }}"
|
|
echo "[LOG] Image Version: $VERSION"
|
|
echo "version=$VERSION" >> $GITHUB_ENV
|
|
echo "[LOG] Buildnumber: $BUILD"
|
|
echo "build=$BUILD" >> $GITHUB_ENV
|
|
|
|
- name: Login to DockerHub (buanet)
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
username: ${{ secrets.DOCKER_USER }}
|
|
password: ${{ secrets.DOCKER_PASS }}
|
|
|
|
- name: Login to GitHub Container Registry
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ secrets.PACKAGES_USER }}
|
|
password: ${{ secrets.PACKAGES_PASS }}
|
|
|
|
- name: Create and push multi-platform image
|
|
run: |
|
|
docker buildx imagetools create -t buanet/iobroker:beta buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7 buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8 buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64
|
|
docker buildx imagetools create -t ghcr.io/buanet/iobroker:beta ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7 ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8 ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64
|
|
docker buildx imagetools create -t buanet/iobroker:${{ env.version }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7 buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8 buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64
|
|
docker buildx imagetools create -t ghcr.io/buanet/iobroker:${{ env.version }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7 ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8 ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64
|
|
docker buildx imagetools create -t buanet/iobroker:${{ env.version }}-build.${{ env.build }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7 buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8 buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64
|
|
docker buildx imagetools create -t ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7 ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8 ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64
|
|
|
|
### experimental node version
|
|
|
|
build-beta-armv7-experimental-node:
|
|
name: Build beta armv7 image with experimental node version
|
|
needs: [create-build-number]
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repo
|
|
uses: actions/checkout@v4.1.7
|
|
with:
|
|
repository: 'buanet/ioBroker.docker'
|
|
ref: ${{ needs.create-build-number.outputs.release_tag }}
|
|
|
|
- name: Set job variables
|
|
run: |
|
|
VERSION="$(cat .VERSION)"
|
|
BUILD="${{ needs.create-build-number.outputs.build_number }}"
|
|
# Log output and export as Github environment variable
|
|
echo "[LOG] Nodejs Version: ${{ vars.EXPERIMENTAL_NODE_VERSION }}"
|
|
echo "[LOG] Image Version: $VERSION"
|
|
echo "version=$VERSION" >> $GITHUB_ENV
|
|
echo "[LOG] Buildnumber: $BUILD"
|
|
echo "build=$BUILD" >> $GITHUB_ENV
|
|
# Set values in iobroker_startup.sh
|
|
sed -e "s/\${VERSION}/$VERSION/" -e "s/\${BUILD}/$BUILD/" ./debian12/scripts/iobroker_startup.sh > ./debian12/scripts/iobroker_startup.tmp
|
|
mv -f ./debian12/scripts/iobroker_startup.tmp ./debian12/scripts/iobroker_startup.sh
|
|
# Set values in Dockerfile
|
|
sed -e "s/\${VERSION}/$VERSION/" -e "s/\${DATI}/$BUILD/" -e "s/\${BUILD}/$BUILD/" -e "s/\${NODE}/${{ vars.EXPERIMENTAL_NODE_VERSION }}/" ./debian12/Dockerfile > ./debian12/Dockerfile.tmp
|
|
mv -f ./debian12/Dockerfile.tmp ./debian12/Dockerfile
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3.6.0
|
|
|
|
- name: Set up Docker Buildx
|
|
id: buildx
|
|
uses: docker/setup-buildx-action@v3.6.1
|
|
|
|
- name: Login to DockerHub (buanet)
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
username: ${{ secrets.DOCKER_USER }}
|
|
password: ${{ secrets.DOCKER_PASS }}
|
|
|
|
- name: Login to GitHub Container Registry
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ secrets.PACKAGES_USER }}
|
|
password: ${{ secrets.PACKAGES_PASS }}
|
|
|
|
- name: Build and push Docker image
|
|
uses: docker/build-push-action@v6.6.1
|
|
with:
|
|
context: ./debian12
|
|
file: ./debian12/Dockerfile
|
|
push: true
|
|
platforms: linux/arm/v7
|
|
tags: |
|
|
buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-node${{ vars.EXPERIMENTAL_NODE_VERSION }},
|
|
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-node${{ vars.EXPERIMENTAL_NODE_VERSION }},
|
|
|
|
build-beta-arm64v8-experimental-node:
|
|
name: Build beta armv64v8 image with experimental node version
|
|
needs: [create-build-number]
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repo
|
|
uses: actions/checkout@v4.1.7
|
|
with:
|
|
repository: 'buanet/ioBroker.docker'
|
|
ref: ${{ needs.create-build-number.outputs.release_tag }}
|
|
|
|
- name: Set job variables
|
|
run: |
|
|
VERSION="$(cat .VERSION)"
|
|
BUILD="${{ needs.create-build-number.outputs.build_number }}"
|
|
# Log output and export as Github environment variable
|
|
echo "[LOG] Nodejs Version: ${{ vars.EXPERIMENTAL_NODE_VERSION }}"
|
|
echo "[LOG] Image Version: $VERSION"
|
|
echo "version=$VERSION" >> $GITHUB_ENV
|
|
echo "[LOG] Buildnumber: $BUILD"
|
|
echo "build=$BUILD" >> $GITHUB_ENV
|
|
# Set values in iobroker_startup.sh
|
|
sed -e "s/\${VERSION}/$VERSION/" -e "s/\${BUILD}/$BUILD/" ./debian12/scripts/iobroker_startup.sh > ./debian12/scripts/iobroker_startup.tmp
|
|
mv -f ./debian12/scripts/iobroker_startup.tmp ./debian12/scripts/iobroker_startup.sh
|
|
# Set values in Dockerfile
|
|
sed -e "s/\${VERSION}/$VERSION/" -e "s/\${DATI}/$BUILD/" -e "s/\${BUILD}/$BUILD/" -e "s/\${NODE}/${{ vars.EXPERIMENTAL_NODE_VERSION }}/" ./debian12/Dockerfile > ./debian12/Dockerfile.tmp
|
|
mv -f ./debian12/Dockerfile.tmp ./debian12/Dockerfile
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3.6.0
|
|
|
|
- name: Set up Docker Buildx
|
|
id: buildx
|
|
uses: docker/setup-buildx-action@v3.6.1
|
|
|
|
- name: Login to DockerHub (buanet)
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
username: ${{ secrets.DOCKER_USER }}
|
|
password: ${{ secrets.DOCKER_PASS }}
|
|
|
|
- name: Login to GitHub Container Registry
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ secrets.PACKAGES_USER }}
|
|
password: ${{ secrets.PACKAGES_PASS }}
|
|
|
|
- name: Build and push Docker image
|
|
uses: docker/build-push-action@v6.6.1
|
|
with:
|
|
context: ./debian12
|
|
file: ./debian12/Dockerfile
|
|
push: true
|
|
platforms: linux/arm64/v8
|
|
tags: |
|
|
buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-node${{ vars.EXPERIMENTAL_NODE_VERSION }},
|
|
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-node${{ vars.EXPERIMENTAL_NODE_VERSION }},
|
|
|
|
build-beta-amd64-experimental-node:
|
|
name: Build beta amd64 image with experimental node version
|
|
needs: [create-build-number]
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repo
|
|
uses: actions/checkout@v4.1.7
|
|
with:
|
|
repository: 'buanet/ioBroker.docker'
|
|
ref: ${{ needs.create-build-number.outputs.release_tag }}
|
|
|
|
- name: Set job variables
|
|
run: |
|
|
VERSION="$(cat .VERSION)"
|
|
BUILD="${{ needs.create-build-number.outputs.build_number }}"
|
|
# Log output and export as Github environment variable
|
|
echo "[LOG] Nodejs Version: ${{ vars.EXPERIMENTAL_NODE_VERSION }}"
|
|
echo "[LOG] Image Version: $VERSION"
|
|
echo "version=$VERSION" >> $GITHUB_ENV
|
|
echo "[LOG] Buildnumber: $BUILD"
|
|
echo "build=$BUILD" >> $GITHUB_ENV
|
|
# Set values in iobroker_startup.sh
|
|
sed -e "s/\${VERSION}/$VERSION/" -e "s/\${BUILD}/$BUILD/" ./debian12/scripts/iobroker_startup.sh > ./debian12/scripts/iobroker_startup.tmp
|
|
mv -f ./debian12/scripts/iobroker_startup.tmp ./debian12/scripts/iobroker_startup.sh
|
|
# Set values in Dockerfile
|
|
sed -e "s/\${VERSION}/$VERSION/" -e "s/\${DATI}/$BUILD/" -e "s/\${BUILD}/$BUILD/" -e "s/\${NODE}/${{ vars.EXPERIMENTAL_NODE_VERSION }}/" ./debian12/Dockerfile > ./debian12/Dockerfile.tmp
|
|
mv -f ./debian12/Dockerfile.tmp ./debian12/Dockerfile
|
|
|
|
- name: Set up Docker Buildx
|
|
id: buildx
|
|
uses: docker/setup-buildx-action@v3.6.1
|
|
|
|
- name: Login to DockerHub (buanet)
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
username: ${{ secrets.DOCKER_USER }}
|
|
password: ${{ secrets.DOCKER_PASS }}
|
|
|
|
- name: Login to GitHub Container Registry
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ secrets.PACKAGES_USER }}
|
|
password: ${{ secrets.PACKAGES_PASS }}
|
|
|
|
- name: Build and push Docker image
|
|
uses: docker/build-push-action@v6.6.1
|
|
with:
|
|
context: ./debian12
|
|
file: ./debian12/Dockerfile
|
|
push: true
|
|
platforms: linux/amd64
|
|
tags: |
|
|
buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-node${{ vars.EXPERIMENTAL_NODE_VERSION }},
|
|
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-node${{ vars.EXPERIMENTAL_NODE_VERSION }},
|
|
|
|
create-multiarch-image-with-experimental-node:
|
|
name: Create multiarch image with experimental node version
|
|
runs-on: ubuntu-latest
|
|
needs: [build-beta-armv7-experimental-node, build-beta-arm64v8-experimental-node, build-beta-amd64-experimental-node]
|
|
steps:
|
|
- name: Checkout repo
|
|
uses: actions/checkout@v4.1.7
|
|
with:
|
|
repository: 'buanet/ioBroker.docker'
|
|
ref: ${{ needs.create-build-number.outputs.release_tag }}
|
|
|
|
- name: Set job variables
|
|
run: |
|
|
VERSION="$(cat .VERSION)"
|
|
BUILD="${{ needs.create-build-number.outputs.build_number }}"
|
|
# Log output and export as Github environment variable
|
|
echo "[LOG] Nodejs Version: ${{ vars.EXPERIMENTAL_NODE_VERSION }}"
|
|
echo "[LOG] Image Version: $VERSION"
|
|
echo "version=$VERSION" >> $GITHUB_ENV
|
|
echo "[LOG] Buildnumber: $BUILD"
|
|
echo "build=$BUILD" >> $GITHUB_ENV
|
|
|
|
- name: Login to DockerHub (buanet)
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
username: ${{ secrets.DOCKER_USER }}
|
|
password: ${{ secrets.DOCKER_PASS }}
|
|
|
|
- name: Login to GitHub Container Registry
|
|
uses: docker/login-action@v3.3.0
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ secrets.PACKAGES_USER }}
|
|
password: ${{ secrets.PACKAGES_PASS }}
|
|
|
|
- name: Create and push multi-platform image
|
|
run: |
|
|
docker buildx imagetools create -t buanet/iobroker:beta-node${{ vars.EXPERIMENTAL_NODE_VERSION }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-node${{ vars.EXPERIMENTAL_NODE_VERSION }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-node${{ vars.EXPERIMENTAL_NODE_VERSION }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-node${{ vars.EXPERIMENTAL_NODE_VERSION }}
|
|
docker buildx imagetools create -t ghcr.io/buanet/iobroker:beta-node${{ vars.EXPERIMENTAL_NODE_VERSION }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-node${{ vars.EXPERIMENTAL_NODE_VERSION }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-node${{ vars.EXPERIMENTAL_NODE_VERSION }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-node${{ vars.EXPERIMENTAL_NODE_VERSION }}
|
|
docker buildx imagetools create -t buanet/iobroker:${{ env.version }}-node${{ vars.EXPERIMENTAL_NODE_VERSION }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-node${{ vars.EXPERIMENTAL_NODE_VERSION }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-node${{ vars.EXPERIMENTAL_NODE_VERSION }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-node${{ vars.EXPERIMENTAL_NODE_VERSION }}
|
|
docker buildx imagetools create -t ghcr.io/buanet/iobroker:${{ env.version }}-node${{ vars.EXPERIMENTAL_NODE_VERSION }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-node${{ vars.EXPERIMENTAL_NODE_VERSION }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-node${{ vars.EXPERIMENTAL_NODE_VERSION }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-node${{ vars.EXPERIMENTAL_NODE_VERSION }}
|
|
docker buildx imagetools create -t buanet/iobroker:${{ env.version }}-build.${{ env.build }}-node${{ vars.EXPERIMENTAL_NODE_VERSION }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-node${{ vars.EXPERIMENTAL_NODE_VERSION }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-node${{ vars.EXPERIMENTAL_NODE_VERSION }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-node${{ vars.EXPERIMENTAL_NODE_VERSION }}
|
|
docker buildx imagetools create -t ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-node${{ vars.EXPERIMENTAL_NODE_VERSION }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-node${{ vars.EXPERIMENTAL_NODE_VERSION }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-node${{ vars.EXPERIMENTAL_NODE_VERSION }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-node${{ vars.EXPERIMENTAL_NODE_VERSION }}
|