name: Images on: push: branches: - main tags: - "v*" workflow_dispatch: {} jobs: push-image: if: github.event_name != 'pull_request' runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - uses: actions/setup-node@v1 with: node-version: "14.x" - name: Release to GitHub Pages env: USE_SSH: true GIT_USER: git DEPLOYMENT_BRANCH: gh-pages run: | git config --global user.email "actions@github.com" git config --global user.name "gh-actions" yarn add nodejieba if [ -e yarn.lock ]; then yarn install --frozen-lockfile elif [ -e package-lock.json ]; then npm ci else npm install fi npm run build - name: Get the version id: get_version run: | VERSION=${GITHUB_REF#refs/heads/} if [[ ${GITHUB_REF} == "refs/heads/main" ]]; then VERSION=latest fi echo ::set-output name=VERSION::${VERSION} - name: Get git revision id: vars shell: bash run: | echo "::set-output name=git_revision::$(git rev-parse --short HEAD)" - name: Login ghcr.io uses: docker/login-action@v1 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Login docker.io uses: docker/login-action@v1 with: registry: docker.io username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - uses: docker/setup-qemu-action@v1 - uses: docker/setup-buildx-action@v1 with: driver-opts: image=moby/buildkit:master - uses: docker/build-push-action@v2 name: Build & Pushing kubevela.io for Dockerhub and GHCR with: context: . file: Dockerfile.ci labels: |- org.opencontainers.image.source=https://github.com/${{ github.repository }} org.opencontainers.image.revision=${{ github.sha }} push: ${{ github.event_name != 'pull_request' }} tags: |- docker.io/oamdev/kubevela-io:${{ steps.get_version.outputs.VERSION }} ghcr.io/${{ github.repository_owner }}/oamdev/kubevela-io:${{ steps.get_version.outputs.VERSION }}