Skip to content

add metrics-server extension (#11) #8

add metrics-server extension (#11)

add metrics-server extension (#11) #8

name: BuildExtensionsMuseum
on:
workflow_dispatch: # Manual trigger
push:
branches:
- main
tags:
- 'v*'
jobs:
build-multiarch:
runs-on: ubuntu-latest
if: github.repository == 'kubesphere-extensions/ks-extensions'
steps:
- name: Prepare
id: prepare
run: |
VERSION=latest
if [[ $GITHUB_REF == refs/tags/* ]]; then
VERSION=${GITHUB_REF#refs/tags/}
fi
echo "version=${VERSION}" >> "$GITHUB_OUTPUT"
- name: Checkout code
uses: actions/checkout@v3
- name: Login to Aliyun
uses: docker/login-action@v3
with:
registry: registry.cn-beijing.aliyuncs.com
username: ${{ secrets.ALIYUNCS_USERNAME }}
password: ${{ secrets.ALIYUNCS_PASSWORD }}
- name: Login to DOCKER
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker buildx
uses: docker/setup-buildx-action@v3
- name: Build and push Docker images
run: |
ARCH=$(uname -m)
if [ "$ARCH" == "x86_64" ]; then
ARCH="amd64"
elif [ "$ARCH" == "aarch64" ]; then
ARCH="arm64"
fi
# package to charts use ksbuilder
LATEST_RELEASE=$(curl -sH "Accept: application/vnd.github.v3+json" "https://api.github.com/repos/kubesphere/ksbuilder/releases/latest" | jq -r '.tag_name')
KSBUILDER_VERSION=$LATEST_RELEASE;ARCH=$ARCH make package-all-charts
- name: Build and push ks-controller-manager dev images
uses: docker/build-push-action@v6
with:
context: ${{ github.workspace }}
platforms: linux/amd64,linux/arm64
push: true
tags: |
docker.io/kubesphere/ks-extensions-museum:${{ steps.prepare.outputs.version }}
registry.cn-beijing.aliyuncs.com/kubesphereio/ks-extensions-museum:${{ steps.prepare.outputs.version }}