You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dolphinscheduler.apache.org by ch...@apache.org on 2022/09/20 03:44:08 UTC

[dolphinscheduler-operator] 31/44: Publish docker images

This is an automated email from the ASF dual-hosted git repository.

chufenggao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler-operator.git

commit c7704e34a819fd59ae72f9563d8c6f9118f9608f
Author: kezhenxu94 <ke...@apache.org>
AuthorDate: Fri Jul 22 13:39:02 2022 +0800

    Publish docker images
---
 .github/workflows/publish-docker.yaml | 63 +++++++++++++++++++++++++++++++++++
 Makefile                              |  2 +-
 2 files changed, 64 insertions(+), 1 deletion(-)

diff --git a/.github/workflows/publish-docker.yaml b/.github/workflows/publish-docker.yaml
new file mode 100644
index 0000000..6013469
--- /dev/null
+++ b/.github/workflows/publish-docker.yaml
@@ -0,0 +1,63 @@
+# 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-docker
+
+on:
+  push:
+    branches:
+      - master
+
+env:
+  HUB: ghcr.io/apache/dolphinscheduler-operator
+
+jobs:
+  build:
+    if: github.repository == 'apache/dolphinscheduler-operator'
+    runs-on: ubuntu-latest
+    permissions:
+      contents: read
+      packages: write
+    timeout-minutes: 30
+    env:
+      TAG: ${{ github.sha }}
+    steps:
+      - uses: actions/checkout@v3
+        with:
+          submodules: true
+      - name: Cache local Maven repository
+        uses: actions/cache@v2
+        with:
+          path: ~/.m2/repository
+          key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
+          restore-keys: |
+            ${{ runner.os }}-maven-
+      - name: Log in to the Container registry
+        uses: docker/login-action@v1.10.0
+        with:
+          registry: ${{ env.HUB }}
+          username: ${{ github.actor }}
+          password: ${{ secrets.GITHUB_TOKEN }}
+      - name: Build and push docker images
+        env:
+          IMG: ${{ env.HUB }}/controller:${{ env.TAG }}
+        run: make docker-build docker-push
+      - name: Tag with latest
+        env:
+          IMG: $HUB/controller:latest
+        run: |
+          docker tag $HUB/controller:$TAG $HUB/controller:latest
+          make docker-push IMG=$HUB/controller:latest
diff --git a/Makefile b/Makefile
index 5592f2c..5d49862 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 
 # Image URL to use all building/pushing image targets
-IMG ?= controller:latest
+IMG ?= apache/dolphinscheduler-operator:latest
 # ENVTEST_K8S_VERSION refers to the version of kubebuilder assets to be downloaded by envtest binary.
 ENVTEST_K8S_VERSION = 1.23