diff --git a/.github/workflows/release-helm.yml b/.github/workflows/release-helm.yml new file mode 100644 index 000000000..3d00105e1 --- /dev/null +++ b/.github/workflows/release-helm.yml @@ -0,0 +1,35 @@ +name: Release Charts + +on: + push: + tags: + - 'helm-v[0-9]+\.[0-9]+\.[0-9]+' + +env: + DOCKER_REPO: automqinc/automq-for-rocketmq + +jobs: + release_helm_chart: + permissions: + contents: write + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Configure Git + run: | + git config user.name "$GITHUB_ACTOR" + git config user.email "$GITHUB_ACTOR@users.noreply.github.com" + + - name: Install Helm + uses: azure/setup-helm@v3 + + - name: Run chart-releaser + uses: helm/chart-releaser-action@v1.6.0 + with: + charts_dir: distribution/helm/charts + env: + CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}" \ No newline at end of file diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ebce5cbdd..4aca0312c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -5,28 +5,44 @@ on: tags: - 'v[0-9]+\.[0-9]+\.[0-9]+' +env: + DOCKER_REPO: automqinc/automq-for-rocketmq + jobs: - release: - permissions: - contents: write + build_images: runs-on: ubuntu-latest + if: always() + timeout-minutes: 30 steps: - - name: Checkout - uses: actions/checkout@v3 + - uses: actions/checkout@v3 with: - fetch-depth: 0 - - - name: Configure Git + submodules: true + - name: Install flatc + run: sudo bash install_flatc.sh + - uses: actions/setup-java@v3 + with: + distribution: "temurin" + java-version: "17" + cache: "maven" + - name: Build with Maven run: | - git config user.name "$GITHUB_ACTOR" - git config user.email "$GITHUB_ACTOR@users.noreply.github.com" - - - name: Install Helm - uses: azure/setup-helm@v3 - - - name: Run chart-releaser - uses: helm/chart-releaser-action@v1.6.0 + mvn -Prelease-all clean install -U + - name: docker-login + uses: docker/login-action@v2 with: - charts_dir: distribution/helm/charts + registry: ${{ env.REGISTRY }} + username: ${{ secrets.DOCKERHUB_USER }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Build and save docker images + id: build_images + working-directory: ./distribution/docker env: - CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}" \ No newline at end of file + DOCKER_REPO: ${{ env.DOCKER_REPO }} + DOCKER_NIGHTLY_VERSION: ${{ env.DOCKER_NIGHTLY_VERSION }} + run: | + FULL_NODE_VERSION=$(git ls-remote --tags | awk -F '/' 'END{print $3}') + VERSION=${FULL_NODE_VERSION} + sh build-ci.sh ${DOCKER_REPO} ${VERSION} + docker tag ${DOCKER_REPO}:${VERSION} ${DOCKER_REPO}:latest + docker push ${DOCKER_REPO}:${VERSION} + docker push ${DOCKER_REPO}:latest \ No newline at end of file diff --git a/distribution/helm/charts/automq-for-rocketmq/Chart.yaml b/distribution/helm/charts/automq-for-rocketmq/Chart.yaml index a056b7888..49ad3c2c0 100644 --- a/distribution/helm/charts/automq-for-rocketmq/Chart.yaml +++ b/distribution/helm/charts/automq-for-rocketmq/Chart.yaml @@ -31,10 +31,10 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. # Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.0.2 +version: 0.0.3 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. Versions are not expected to # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. -appVersion: "0.0.2" +appVersion: "0.0.3"