This is an automated email from the ASF dual-hosted git repository. gongchao pushed a commit to branch nightly-build in repository https://gitbox.apache.org/repos/asf/hertzbeat.git
commit 210cdb5486fa7f2673fb9d1e528f93376d942e8c Author: tomsun28 <[email protected]> AuthorDate: Mon Aug 12 22:32:21 2024 +0800 [infra] support build and push docker image to hub nightly everyday Signed-off-by: tomsun28 <[email protected]> --- .github/workflows/nightly-build.yml | 61 +++++++++++++++++++++++++++++++++++++ script/docker/server/build.sh | 7 +++-- 2 files changed, 65 insertions(+), 3 deletions(-) diff --git a/.github/workflows/nightly-build.yml b/.github/workflows/nightly-build.yml new file mode 100644 index 000000000..0709d2df0 --- /dev/null +++ b/.github/workflows/nightly-build.yml @@ -0,0 +1,61 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +name: Nightly CI + +on: + schedule: + # trigger at 00:00 everyday + - cron: '0 0 * * *' + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: docker/setup-qemu-action@v3 + - name: Set up JDK 17 + uses: actions/setup-java@v1 + with: + java-version: 17 + - name: Build with Maven + run: mvn clean -B package -Prelease --file pom.xml + + - name: Build Image + env: + IMAGE_PUSH: false + IMAGE_LOAD: true + IMAGE_PLATFORM: linux/amd64 + $IMAGE_VERSION: nightly + run: | + docker buildx create --use --name myBuilder --driver docker-container + docker buildx use myBuilder + + ./script/docker/server/build.sh + + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Build and Push + uses: docker/build-push-action@v6 + with: + context: . + push: true + tags: apache/hertzbeat:nightly diff --git a/script/docker/server/build.sh b/script/docker/server/build.sh index 658b0f86c..2a71872ae 100755 --- a/script/docker/server/build.sh +++ b/script/docker/server/build.sh @@ -23,9 +23,10 @@ CURRENT_DIR=`pwd` cd ../../../dist # auto detect hertzbeat version VERSION=`ls apache-hertzbeat-*-incubating-docker-compose.tar.gz| awk -F"-" '{print $3}'` -# use the version param -if [ -n "$1" ]; then - VERSION="$1"; + +# when env IMAGE_VERSION is set, use it as version +if [ -n "$IMAGE_VERSION" ]; then + VERSION="$IMAGE_VERSION"; fi # compile context dir --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
