Skip to content

Bump bundle to version '0.22.0' #49

Bump bundle to version '0.22.0'

Bump bundle to version '0.22.0' #49

Workflow file for this run

name: Release
on:
push:
tags:
- "*"
jobs:
version:
name: Version
runs-on: ubuntu-latest
outputs:
buid_date: ${{ steps.version.outputs.buid_date }}
version: ${{ steps.version.outputs.version }}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Fetch tags
run: git fetch --force --tags
- name: Get Version
id: version
run: |
VERSION=sha-${GITHUB_SHA::8}
if [[ $GITHUB_REF == refs/tags/* ]]; then
VERSION=${GITHUB_REF/refs\/tags\//}
fi
echo ::set-output name=buid_date::$(date -u +'%Y-%m-%dT%H:%M:%SZ')
echo ::set-output name=version::${VERSION}
check-diff:
name: Check diff
runs-on: ubuntu-latest
needs: version
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Generate bundle
run: make bundle
env:
VERSION: "${{ needs.version.outputs.version }}"
- name: Check diff
uses: mmontes11/diff-porcelain@v0.0.1
with:
message: Bundle is not up to date with the version '${{ needs.version.outputs.version }}'. Run 'make bundle' and commit the changes.
operator:
name: Operator
runs-on: ubuntu-latest
needs:
- version
- check-diff
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Fetch tags
run: git fetch --force --tags
- name: Setup QEMU
uses: docker/setup-qemu-action@v2
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v2
id: buildx
- name: Login to container Registry
uses: docker/login-action@v2
with:
username: ${{ github.repository_owner }}
password: ${{ secrets.GHA_TOKEN }}
registry: ghcr.io
- name: Sync chart
run: make sync-chart
env:
VERSION: "${{ needs.version.outputs.version }}"
- name: Publish operator image
uses: docker/build-push-action@v2
with:
push: true
builder: ${{ steps.buildx.outputs.name }}
context: .
file: ./Dockerfile
platforms: linux/arm64,linux/amd64
tags: |
ghcr.io/${{ github.repository_owner }}/mariadb-operator-helm:${{ needs.version.outputs.version }}
ghcr.io/${{ github.repository_owner }}/mariadb-operator-helm:latest
labels: |
org.opencontainers.image.title=${{ github.event.repository.name }}
org.opencontainers.image.description=${{ github.event.repository.description }}
org.opencontainers.image.source=${{ github.event.repository.html_url }}
org.opencontainers.image.url=${{ github.event.repository.html_url }}
org.opencontainers.image.revision=${{ github.sha }}
org.opencontainers.image.version=${{ needs.version.outputs.version }}
org.opencontainers.image.created=${{ needs.version.outputs.build_date }}
bundle:
name: Bundle
runs-on: ubuntu-latest
needs:
- version
- check-diff
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Fetch tags
run: git fetch --force --tags
- name: Setup QEMU
uses: docker/setup-qemu-action@v2
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v2
id: buildx
- name: Login to container Registry
uses: docker/login-action@v2
with:
username: ${{ github.repository_owner }}
password: ${{ secrets.GHA_TOKEN }}
registry: ghcr.io
- name: Publish operator image
uses: docker/build-push-action@v2
with:
push: true
builder: ${{ steps.buildx.outputs.name }}
context: .
file: ./bundle.Dockerfile
platforms: linux/arm64,linux/amd64
tags: |
ghcr.io/${{ github.repository_owner }}/mariadb-operator-helm-bundle:${{ needs.version.outputs.version }}
ghcr.io/${{ github.repository_owner }}/mariadb-operator-helm-bundle:latest
labels: |
org.opencontainers.image.title=${{ github.event.repository.name }}
org.opencontainers.image.description=${{ github.event.repository.description }}
org.opencontainers.image.source=${{ github.event.repository.html_url }}
org.opencontainers.image.url=${{ github.event.repository.html_url }}
org.opencontainers.image.revision=${{ github.sha }}
org.opencontainers.image.version=${{ needs.version.outputs.version }}
org.opencontainers.image.created=${{ needs.version.outputs.build_date }}
sync-repos:
name: Sync repos
runs-on: ubuntu-latest
needs:
- version
- check-diff
- bundle
- operator
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Checkout community-operators
uses: actions/checkout@v3
with:
fetch-depth: 0
repository: "mariadb-operator/community-operators"
path: "community-operators"
token: "${{ secrets.GHA_TOKEN }}"
- name: Checkout community-operators-prod
uses: actions/checkout@v3
with:
fetch-depth: 0
repository: "mariadb-operator/community-operators-prod"
path: "community-operators-prod"
token: "${{ secrets.GHA_TOKEN }}"
- name: Sync repos
run: make sync-upstream-repos
env:
VERSION: "${{ needs.version.outputs.version }}"
GITHUB_TOKEN: "${{ secrets.GHA_TOKEN }}"