You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
2.5 KiB
65 lines
2.5 KiB
# 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: publish-helm-chart |
|
|
|
on: |
|
push: |
|
branches: |
|
- dev |
|
release: |
|
types: |
|
- released |
|
|
|
jobs: |
|
build: |
|
if: github.repository == 'apache/dolphinscheduler' |
|
runs-on: ubuntu-latest |
|
permissions: |
|
contents: read |
|
packages: write |
|
timeout-minutes: 30 |
|
steps: |
|
- uses: actions/checkout@v4 |
|
- name: Set environment variables |
|
run: | |
|
if [[ ${{ github.event_name }} == "release" ]]; then |
|
echo "HUB=registry-1.docker.io/apache" >> $GITHUB_ENV |
|
echo "DOCKER_REGISTRY=docker.io" >> $GITHUB_ENV |
|
echo "DOCKER_USERNAME=${{ secrets.DOCKERHUB_USER }}" >> $GITHUB_ENV |
|
echo "DOCKER_PASSWORD=${{ secrets.DOCKERHUB_TOKEN }}" >> $GITHUB_ENV |
|
else |
|
echo "HUB=ghcr.io/apache/dolphinscheduler" >> $GITHUB_ENV |
|
echo "DOCKER_REGISTRY=ghcr.io/apache/dolphinscheduler" >> $GITHUB_ENV |
|
echo "DOCKER_USERNAME=${{ github.actor }}" >> $GITHUB_ENV |
|
echo "DOCKER_PASSWORD=${{ secrets.GITHUB_TOKEN }}" >> $GITHUB_ENV |
|
fi |
|
- name: Log in to the Container registry |
|
uses: docker/login-action@v2 |
|
with: |
|
registry: ${{ env.DOCKER_REGISTRY }} |
|
username: ${{ env.DOCKER_USERNAME }} |
|
password: ${{ env.DOCKER_PASSWORD }} |
|
- name: Publish Helm Chart |
|
working-directory: deploy/kubernetes |
|
run: | |
|
if [[ ${{ env.HUB }} == "ghcr.io/apache/dolphinscheduler" ]]; then |
|
VERSION=0.0.0-$(git rev-parse --short HEAD) |
|
sed -i "s/^version: .*/version: $VERSION/" dolphinscheduler/Chart.yaml |
|
fi |
|
helm dep up dolphinscheduler |
|
helm package dolphinscheduler |
|
helm push dolphinscheduler-helm-*.tgz oci://${{ env.HUB }}
|
|
|