summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgy95 <guoyao17@huawei.com>2022-06-20 11:45:50 +0800
committergy95 <guoyao17@huawei.com>2022-06-23 10:42:36 +0800
commitcfd511c00be7da4c3f2840cfeda4e6c04c4e57cd (patch)
treec722b3766046d8468fb82852c6cafb79185b8d35
parentMerge pull request #3948 from vincentgoat/automated-cherry-pick-of-#3899-upst... (diff)
downloadkubeedge-cfd511c00be7da4c3f2840cfeda4e6c04c4e57cd.tar.gz
add release ci
Signed-off-by: gy95 <guoyao17@huawei.com>
-rw-r--r--.github/workflows/release.yml81
-rw-r--r--Makefile9
2 files changed, 90 insertions, 0 deletions
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
new file mode 100644
index 000000000..558288c1a
--- /dev/null
+++ b/.github/workflows/release.yml
@@ -0,0 +1,81 @@
+name: build release, release image to DockerHub
+on:
+ release:
+ types:
+ - published
+env:
+ CONTAINER_RUN_OPTIONS: " "
+
+jobs:
+ release-assests:
+ name: release kubeedge components
+ runs-on: ubuntu-18.04
+ strategy:
+ matrix:
+ target:
+ - kubeedge
+ - edgesite
+ - keadm
+ os:
+ - linux
+ arch:
+ - amd64
+ - arm64
+ - arm
+ ARM_VERSION:
+ - GOARM7
+ - GOARM8
+ - ""
+ steps:
+ - name: checkout code
+ uses: actions/checkout@v2
+ with:
+ # fetch-depth:
+ # 0 indicates all history for all branches and tags.
+ # for `git describe --tags` in Makefile.
+ fetch-depth: 0
+ - name: Making and packaging
+ run: |
+ docker pull kubeedge/build-tools
+ make release ARM_VERSION=${{ matrix.ARM_VERSION }}
+ - name: Uploading assets...
+ if: ${{ !env.ACT }}
+ uses: softprops/action-gh-release@v1
+ with:
+ files: |
+ _output/release/${{ github.ref_name }}/${{ matrix.target }}-${{ github.ref_name }}-${{ matrix.os }}-${{ matrix.arch }}.tar.gz
+ _output/release/${{ github.ref_name }}/checksum_${{ matrix.target }}-${{ github.ref_name }}-${{ matrix.os }}-${{ matrix.arch }}.tar.gz.txt
+
+ publish-image-to-dockerhub:
+ name: publish to DockerHub
+ strategy:
+ matrix:
+ target:
+ - cloudcore
+ - admission
+ - edgesite-agent
+ - edgesite-server
+ - csidriver
+ - iptablesmanager
+
+ runs-on: ubuntu-18.04
+ steps:
+ - name: Install Go
+ uses: actions/setup-go@v2
+ with:
+ go-version: 1.16.x
+ - name: checkout code
+ uses: actions/checkout@v2
+ with:
+ # fetch-depth:
+ # 0 indicates all history for all branches and tags.
+ # for `git describe --tags` in Makefile.
+ fetch-depth: 0
+ - name: login to DockerHub
+ uses: docker/login-action@v1
+ with:
+ username: ${{ secrets.DOCKERHUB_USER_NAME }}
+ password: ${{ secrets.DOCKERHUB_TOKEN }}
+ - name: build and publish images
+ run: |
+ make upload-images
diff --git a/Makefile b/Makefile
index 457cea738..7ac904216 100644
--- a/Makefile
+++ b/Makefile
@@ -327,6 +327,15 @@ edgesite-server-image:
edgesite-agent-image:
docker build . --build-arg ARCH=${ARCH} -f build/edgesite/agent-build.Dockerfile -t kubeedge/edgesite-agent-${ARCH}:${IMAGE_TAG}
+.PHONY: upload-images
+upload-images: cloudimage admissionimage csidriverimage iptablesmgrimage edgesite-server-image edgesite-agent-image
+ docker push kubeedge/cloudcore:${IMAGE_TAG}
+ docker push kubeedge/admission:${IMAGE_TAG}
+ docker push kubeedge/csidriver:${IMAGE_TAG}
+ docker push kubeedge/iptables-manager:${IMAGE_TAG}
+ docker push kubeedge/edgesite-server-${ARCH}:${IMAGE_TAG}
+ docker push kubeedge/edgesite-agent-${ARCH}:${IMAGE_TAG}
+
define INSTALL_HELP_INFO
# install
#