mirror of
https://github.com/buanet/ioBroker.docker.git
synced 2025-12-17 10:29:00 +02:00
add experimental node build
This commit is contained in:
222
.github/workflows/build-debian12-dev_sep.yml
vendored
222
.github/workflows/build-debian12-dev_sep.yml
vendored
@@ -6,6 +6,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
create-build-number:
|
create-build-number:
|
||||||
|
name: Create build number
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
outputs:
|
outputs:
|
||||||
build_number: ${{ steps.generate-build-number.outputs.build_number }}
|
build_number: ${{ steps.generate-build-number.outputs.build_number }}
|
||||||
@@ -24,7 +25,7 @@ jobs:
|
|||||||
echo "[LOG] Buildnumber: $BUILD"
|
echo "[LOG] Buildnumber: $BUILD"
|
||||||
|
|
||||||
build-dev-armv7-recommended-node:
|
build-dev-armv7-recommended-node:
|
||||||
name: Build dev armv7 image with recommended node version for buanet
|
name: Build dev armv7 image with recommended node version
|
||||||
needs: [create-build-number]
|
needs: [create-build-number]
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
@@ -82,7 +83,7 @@ jobs:
|
|||||||
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-dev,
|
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-dev,
|
||||||
|
|
||||||
build-dev-arm64v8-recommended-node:
|
build-dev-arm64v8-recommended-node:
|
||||||
name: Build dev armv64v8 image with recommended node version for buanet
|
name: Build dev armv64v8 image with recommended node version
|
||||||
needs: [create-build-number]
|
needs: [create-build-number]
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
@@ -140,7 +141,7 @@ jobs:
|
|||||||
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-dev,
|
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-dev,
|
||||||
|
|
||||||
build-dev-amd64-recommended-node:
|
build-dev-amd64-recommended-node:
|
||||||
name: Build dev amd64 image with recommended node version for buanet
|
name: Build dev amd64 image with recommended node version
|
||||||
needs: [create-build-number]
|
needs: [create-build-number]
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
@@ -195,6 +196,7 @@ jobs:
|
|||||||
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-dev,
|
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-dev,
|
||||||
|
|
||||||
create-multiarch-image-with-recommended-node:
|
create-multiarch-image-with-recommended-node:
|
||||||
|
name: Create multiarch image with recommended node version
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: [build-dev-armv7-recommended-node, build-dev-arm64v8-recommended-node, build-dev-amd64-recommended-node, create-build-number]
|
needs: [build-dev-armv7-recommended-node, build-dev-arm64v8-recommended-node, build-dev-amd64-recommended-node, create-build-number]
|
||||||
steps:
|
steps:
|
||||||
@@ -230,4 +232,216 @@ jobs:
|
|||||||
- name: Create and push multi-platform image
|
- name: Create and push multi-platform image
|
||||||
run: |
|
run: |
|
||||||
docker buildx imagetools create -t buanet/iobroker:dev buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-dev buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-dev buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-dev
|
docker buildx imagetools create -t buanet/iobroker:dev buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-dev buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-dev buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-dev
|
||||||
docker buildx imagetools create -t ghcr.io/buanet/iobroker:dev ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-dev ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-dev ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-dev
|
docker buildx imagetools create -t ghcr.io/buanet/iobroker:dev ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-dev ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-dev ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-dev
|
||||||
|
|
||||||
|
### experimental node version
|
||||||
|
|
||||||
|
build-dev-armv7-experimental-node:
|
||||||
|
name: Build dev 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'
|
||||||
|
|
||||||
|
- 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-dev/" -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-dev/" -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.2.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-dev-node${{ vars.EXPERIMENTAL_NODE_VERSION }},
|
||||||
|
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-dev-node${{ vars.EXPERIMENTAL_NODE_VERSION }},
|
||||||
|
|
||||||
|
build-dev-arm64v8-experimental-node:
|
||||||
|
name: Build dev 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'
|
||||||
|
|
||||||
|
- 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-dev/" -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-dev/" -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.2.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-dev-node${{ vars.EXPERIMENTAL_NODE_VERSION }},
|
||||||
|
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-dev-node${{ vars.EXPERIMENTAL_NODE_VERSION }},
|
||||||
|
|
||||||
|
build-dev-amd64-experimental-node:
|
||||||
|
name: Build dev 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'
|
||||||
|
|
||||||
|
- 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-dev/" -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-dev/" -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-dev-node${{ vars.EXPERIMENTAL_NODE_VERSION }},
|
||||||
|
ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-dev-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-dev-armv7-experimental-node, build-dev-arm64v8-experimental-node, build-dev-amd64-experimental-node, create-build-number]
|
||||||
|
steps:
|
||||||
|
- name: Checkout repo
|
||||||
|
uses: actions/checkout@v4.1.7
|
||||||
|
with:
|
||||||
|
repository: 'buanet/ioBroker.docker'
|
||||||
|
|
||||||
|
- 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:dev-node${{ vars.EXPERIMENTAL_NODE_VERSION }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-dev-node${{ vars.EXPERIMENTAL_NODE_VERSION }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-dev-node${{ vars.EXPERIMENTAL_NODE_VERSION }} buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-dev-node${{ vars.EXPERIMENTAL_NODE_VERSION }}
|
||||||
|
docker buildx imagetools create -t ghcr.io/buanet/iobroker:dev-node${{ vars.EXPERIMENTAL_NODE_VERSION }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-armv7-dev-node${{ vars.EXPERIMENTAL_NODE_VERSION }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-arm64v8-dev-node${{ vars.EXPERIMENTAL_NODE_VERSION }} ghcr.io/buanet/iobroker:${{ env.version }}-build.${{ env.build }}-amd64-dev-node${{ vars.EXPERIMENTAL_NODE_VERSION }}
|
||||||
Reference in New Issue
Block a user