Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
92 changes: 92 additions & 0 deletions .github/workflows/publish.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
name: publish
on:
push:
tags:
- v*
workflow_dispatch:
pull_request:


permissions:
packages: write

env:
OCI_URL: ghcr.io/openmcp-project

jobs:
release_tag:
name: Release version
runs-on: ubuntu-24.04
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
ssh-key: ${{ secrets.PUSH_KEY }}
fetch-tags: true
fetch-depth: 0

- name: Read and validate VERSION
id: version
run: |
VERSION=$(cat VERSION)
if [[ ! "$VERSION" =~ ^v[0-9]+\.[0-9]+\.[0-9]+(-dev)?$ ]]; then
echo "Invalid version format in VERSION file: $VERSION"
exit 1
fi
echo "New version: $VERSION"
echo "version=$VERSION" >> $GITHUB_ENV

- name: Skip release if version is a dev version
if: contains(env.version, '-dev')
run: |
echo "Skipping development version release: ${{ env.version }}"
echo "SKIP=true" >> $GITHUB_ENV
exit 0

- name: Set up QEMU
uses: docker/setup-qemu-action@v2

- name: Set up Docker Context for Buildx
id: buildx-context
run: |
docker context create builders

- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Set up Docker Buildx
timeout-minutes: 5
uses: docker/setup-buildx-action@v2
with:
version: latest

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version-file: go.mod

- name: Build the ${{ github.repository }}
run: |
make prepare-release
make build

- name: Build Images
run: |
IMAGE_REGISTRY=ghcr.io/openmcp-project make image-build

- name: setup OCM
uses: open-component-model/ocm-setup-action@main

- name: Create OCM CTF
run: |
ocm add componentversions --create \
--file ctf component-constructor.yaml \
--settings settings.yaml -- VERSION=${{ env.version }}

- name: Push CTF
run: |
ocm transfer ctf --overwrite ./ctf ${{ env.OCI_URL }}
6 changes: 3 additions & 3 deletions charts/project-workspace-operator/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
apiVersion: v2
name: btpflm-project-workspace-operator
name: project-workspace-operator
description: A Helm chart for the project-workspace-operator
type: application
version: v0.9.0
appVersion: v0.9.0
version: v0.10.0
appVersion: v0.10.0
4 changes: 2 additions & 2 deletions charts/project-workspace-operator/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@ deployment:
leaseNamespace: default

image:
repository: deploy-releases-hyperspace-docker.common.repositories.cloud.sap/openmcp/project-workspace-operator
repository: ghcr.io/openmcp-project/github.com/openmcp-project/project-workspace-operator/images/project-workspace-operator
pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion.
tag: v0.9.0
tag: v0.10.0

imagePullSecrets: []
nameOverride: ""
Expand Down
21 changes: 21 additions & 0 deletions component-constructor.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
components:
- name: ${COMPONENT_NAME_PREFIX}/${COMPONENT_NAME}
version: ${VERSION}
provider:
name: ${PROVIDER}
resources:
- name: ${COMPONENT_NAME}-chart
type: helmChart
input:
type: helm
path: ./charts/${COMPONENT_NAME}
repository: charts/${COMPONENT_NAME}

- name: ${COMPONENT_NAME}-image
type: ociImage
input:
type: dockermulti
repository: images/${COMPONENT_NAME}
variants:
- "${COMPONENT_REPO_PREFIX}:${VERSION}-linux-amd64"
- "${COMPONENT_REPO_PREFIX}:${VERSION}-linux-arm64"
3 changes: 2 additions & 1 deletion hack/common/get-registry.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@
set -euo pipefail

if [[ -z ${BASE_REGISTRY:-} ]]; then
BASE_REGISTRY=europe-docker.pkg.dev/sap-gcp-cp-k8s-stable-hub/openmcp
#FIXME: this is a place holder.
BASE_REGISTRY=ghcr.io/openmcp-project/
fi

if [[ -z ${IMAGE_REGISTRY:-} ]]; then
Expand Down
4 changes: 4 additions & 0 deletions settings.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
COMPONENT_NAME: project-workspace-operator
COMPONENT_NAME_PREFIX: github.com/openmcp-project
PROVIDER: openmcp-project
COMPONENT_REPO_PREFIX: ghcr.io/openmcp-project/project-workspace-operator
Loading