Skip to content

[API] Add endpoint to patch Kafka resource pause annotation (#1103) #211

[API] Add endpoint to patch Kafka resource pause annotation (#1103)

[API] Add endpoint to patch Kafka resource pause annotation (#1103) #211

Workflow file for this run

name: Publish Snapshot
on:
push:
branches:
- 'main'
- '[0-9]+.[0-9]+.x'
paths-ignore:
- '.github/project.yml'
jobs:
release:
runs-on: ubuntu-latest
name: snapshot
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Retrieve Project Metadata
uses: radcortez/project-metadata-action@603060a0627d4f04d37d20331ebd472377fd088b
id: metadata
with:
github-token: ${{secrets.GITHUB_TOKEN}}
metadata-file-path: '.github/project.yml'
local-file: 'true'
- name: Set Image Tag Env
run: echo "NEXT_VERSION=$(echo ${{steps.metadata.outputs.next-version}} | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV
- name: Setup JDK
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'adopt'
- name: Cache Maven Packages
uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- 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 API and Operator Image
run: |
export QUARKUS_CONTAINER_IMAGE_REGISTRY="${{ secrets.IMAGE_REPO_HOSTNAME }}"
export QUARKUS_CONTAINER_IMAGE_GROUP="${{ secrets.IMAGE_REPO_NAMESPACE }}"
export QUARKUS_CONTAINER_IMAGE_USERNAME="${{ secrets.IMAGE_REPO_USERNAME }}"
export QUARKUS_CONTAINER_IMAGE_PASSWORD="${{ secrets.IMAGE_REPO_PASSWORD }}"
export QUARKUS_CONTAINER_IMAGE_PUSH="true"
export QUARKUS_CONTAINER_IMAGE_TAG="${{ env.NEXT_VERSION }}"
export QUARKUS_CONTAINER_IMAGE_ADDITIONAL_TAGS=snapshot-${{github.ref_name}}
export QUARKUS_KUBERNETES_VERSION="${{ env.NEXT_VERSION }}"
export GIT_REVISION=$(git rev-parse --short HEAD)
# Build and push the snapshot images
mvn -B -P container-image verify --no-transfer-progress -DskipTests \
-Dquarkus.kubernetes.namespace='$${NAMESPACE}' \
-Dquarkus.docker.buildx.platform=linux/amd64,linux/arm64
- name: Login to Quay
uses: docker/login-action@v3
with:
registry: "${{ secrets.IMAGE_REPO_HOSTNAME }}"
username: "${{ secrets.IMAGE_REPO_USERNAME }}"
password: "${{ secrets.IMAGE_REPO_PASSWORD }}"
- name: Modify CSV Annotation
run: ./operator/bin/modify-bundle-metadata.sh "SKIP_RANGE=>=0.0.1 <${{ env.NEXT_VERSION }}"
- name: Build and Push Operator Bundle Image
uses: docker/build-push-action@v6
with:
context: operator/target/bundle/console-operator/
platforms: linux/amd64,linux/arm64
provenance: false
push: true
file: operator/target/bundle/console-operator/bundle.Dockerfile
tags: |
${{ secrets.IMAGE_REPO_HOSTNAME }}/${{ secrets.IMAGE_REPO_NAMESPACE }}/console-operator-bundle:${{ env.NEXT_VERSION }}
${{ secrets.IMAGE_REPO_HOSTNAME }}/${{ secrets.IMAGE_REPO_NAMESPACE }}/console-operator-bundle:snapshot-${{github.ref_name}}
- name: Build Operator Catalog
run: |
curl -L -o opm https://github.com/operator-framework/operator-registry/releases/download/v1.43.1/linux-amd64-opm
chmod +x opm
sudo cp -v opm /usr/bin/
rm -vf opm
operator/bin/generate-catalog.sh ${{ env.NEXT_VERSION }}
- name: Build and Push Operator Catalog Image
uses: docker/build-push-action@v6
with:
context: operator/target/
platforms: linux/amd64,linux/arm64
provenance: false
push: true
file: operator/target/catalog.Dockerfile
tags: |
${{ secrets.IMAGE_REPO_HOSTNAME }}/${{ secrets.IMAGE_REPO_NAMESPACE }}/console-operator-catalog:${{ env.NEXT_VERSION }}
${{ secrets.IMAGE_REPO_HOSTNAME }}/${{ secrets.IMAGE_REPO_NAMESPACE }}/console-operator-catalog:snapshot-${{github.ref_name}}
- name: Attach Kubernetes Resources
uses: actions/upload-artifact@v4
with:
name: k8s-resources
path: |
operator/target/bundle/
operator/target/catalog/
operator/target/kubernetes/*.yml
- name: Build UI
working-directory: ui
run: |
npm ci --omit=dev
export BACKEND_URL=http://example
export CONSOLE_METRICS_PROMETHEUS_URL=http://example
export NEXTAUTH_SECRET=examplesecret
export LOG_LEVEL=info
export CONSOLE_MODE=read-only
npm run build
- name: Build and Push UI Image
uses: docker/build-push-action@v6
with:
context: ui/
platforms: linux/amd64,linux/arm64
provenance: false
push: true
tags: |
${{ secrets.IMAGE_REPO_HOSTNAME }}/${{ secrets.IMAGE_REPO_NAMESPACE }}/console-ui:${{ env.NEXT_VERSION }}
${{ secrets.IMAGE_REPO_HOSTNAME }}/${{ secrets.IMAGE_REPO_NAMESPACE }}/console-ui:snapshot-${{github.ref_name}}