Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
fc81966
feat(release): support installing into external Backstage apps; publi…
kaviththiranga May 12, 2026
3ec16a8
feat: add required workflows for release automation (#504)
mevan-karu May 12, 2026
dd5f1c5
refactor: remove Cilium feature flag and add DataPlane network policy…
akila-i May 12, 2026
6dc7e94
chore: update release pipelines to use client_id instead of app_id (#…
mevan-karu May 12, 2026
7830db7
chore: downgrade to 0.0.0 version to tryout release pipelines (#523)
mevan-karu May 13, 2026
52199d6
chore: update VERSION to next release version (#528)
mevan-karu May 13, 2026
2dbbbb3
chore: improve build and test pipeline and the release ochestrator (#…
mevan-karu May 13, 2026
5d3bd23
chore: cancel in progress build workflows for only pull requests (#532)
mevan-karu May 13, 2026
f5ab097
feat: add conditions to authz role binding creation/update wizard (#527)
binoyPeries May 13, 2026
5c52e2b
docs: update README with event driven catalog sync configuration for …
stefinie123 May 13, 2026
d9c189a
feat: show budget alerts, budget incidents and cost analysis reports …
nilushancosta May 14, 2026
54a2772
chore: update release-ochestrator to check build-and-test workflow st…
mevan-karu May 14, 2026
5dc0344
fix: use release branch head for patch releases (#537)
mevan-karu May 14, 2026
42b7b6f
feat: add Secrets edit dialog and secret-management feature flag (#536)
JanakaSandaruwan May 14, 2026
718036d
feat: add runtime topology integration to CellDiagram (#530)
akila-i May 14, 2026
9ea456e
feat: add openchoreo assistant perch (#511)
yashodgayashan May 14, 2026
7a94009
chore: sync openchoreo-api spec from openchoreo main (#540)
Mirage20 May 14, 2026
75a03e7
feat: migrate git secrets onto the generic secrets API (#541)
JanakaSandaruwan May 15, 2026
698627b
feat(authz): honor ABAC constraints in permission policy (#538)
kaviththiranga May 15, 2026
5a1f94c
fix: issue in tagging release by sha (#539)
mevan-karu May 15, 2026
107bfa9
feat: introduce capability to apply finOps agent recommendations auto…
nilushancosta May 15, 2026
eb7c9b5
feat: improve perch chat interface (#543)
yashodgayashan May 15, 2026
26f67f2
feat: ship OIDC sign-in and full entity-tab parity for external Backs…
kaviththiranga May 15, 2026
ea8d8b8
refactor: extract shared NamespaceScopeFilter and apply to Create Com…
stefinie123 May 15, 2026
f2eca8d
fix: harden git secret flow and preserve category label on update (#548)
JanakaSandaruwan May 15, 2026
980c226
refactor: update template list filters to conditionally render namesp…
stefinie123 May 15, 2026
1ebce57
fix(authz): bind eval cache key to user token so re-login forces re-e…
kaviththiranga May 15, 2026
9339c9a
feat(deploy): tone down "behind upstream" drift indicator (#550)
kaviththiranga May 15, 2026
b8e55b9
fix: expose perchAgent url (#551)
yashodgayashan May 15, 2026
17cd592
fix: support two different oauth clients for service and user auth (#…
mevan-karu May 15, 2026
9b241bf
fix: trigger metrics fetch on initial observability page load (#553)
rashadism May 15, 2026
15e3f40
fix(authz): skip env-scoped /evaluate-with-context when authz is disa…
kaviththiranga May 16, 2026
6d94027
fix(release-diff): swap orientation, fix scroll, rename promote actio…
kaviththiranga May 16, 2026
2e66cba
fix: improve entity reference extraction in CustomReviewStep (#555)
stefinie123 May 16, 2026
89ca4fe
feat: add Backstage UI for resource abstractions (#546)
Mirage20 May 18, 2026
b6f6d5f
fix: set credentials include for direct-mode cross-origin fetches (#558)
isala404 May 18, 2026
a632cd8
feat: rename perch agent to portal assistant (#559)
yashodgayashan May 18, 2026
e48f9f2
fix: update right drawer name to assistant agent (#561)
yashodgayashan May 18, 2026
fad76b0
fix(console): fix console UI text issues (#560)
kavishkafernando May 18, 2026
0346616
fix(authz): stop component-segment denies from hiding sibling Resourc…
stefinie123 May 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
11 changes: 10 additions & 1 deletion .changeset/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,16 @@
"@openchoreo/backstage-design-system",
"@openchoreo/openapi-client-generator-node",
"@openchoreo/openchoreo-auth",
"@openchoreo/openchoreo-client-node"
"@openchoreo/openchoreo-client-node",
"@openchoreo/backstage-plugin-auth-backend-module-openchoreo-auth",
"@openchoreo/backstage-plugin-openchoreo-observability",
"@openchoreo/backstage-plugin-openchoreo-observability-backend",
"@openchoreo/backstage-plugin-openchoreo-ci",
"@openchoreo/backstage-plugin-openchoreo-ci-backend",
"@openchoreo/backstage-plugin-openchoreo-workflows",
"@openchoreo/backstage-plugin-openchoreo-workflows-backend",
"@openchoreo/backstage-plugin-thunder-idp-client-node",
"@openchoreo/backstage-plugin-catalog-backend-module-openchoreo-users"
]
],
"access": "restricted",
Expand Down
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# Please refer https://help.github.com/articles/about-codeowners for the CODEOWNERS documentation
# Refer https://help.github.com/articles/about-codeowners for the CODEOWNERS documentation

* @sameerajayasoma @kaviththiranga @stefinie123
17 changes: 15 additions & 2 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ on:
- 'LICENSE'

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}

permissions:
contents: read
Expand Down Expand Up @@ -191,7 +191,20 @@ jobs:
fi
echo "TAGS=$TAGS" >> $GITHUB_OUTPUT

- name: Check if image already exists
id: check-image
run: |
SHA=$(git rev-parse --short=8 HEAD)
if docker buildx imagetools inspect "${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${SHA}" >/dev/null 2>&1; then
echo "Image ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${SHA} already exists. Skipping build."
echo "skip=true" >> $GITHUB_OUTPUT
else
echo "Image not found. Proceeding with build."
echo "skip=false" >> $GITHUB_OUTPUT
fi

- name: Build and push commit image
if: steps.check-image.outputs.skip != 'true'
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
with:
push: true
Expand Down
114 changes: 114 additions & 0 deletions .github/workflows/prepare-next-version.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
name: Prepare Next Version

on:
workflow_dispatch:
inputs:
major:
description: 'Next major version'
required: true
type: number
minor:
description: 'Next minor version'
required: true
type: number
patch:
description: 'Next patch version'
required: true
type: number
pre_release_id:
description: 'Prerelease identifier (e.g. rc.1, beta.2)'
required: false
type: string

concurrency:
group: prepare-next-version-${{ github.event.inputs.major }}-${{ github.event.inputs.minor }}
cancel-in-progress: false

permissions:
contents: write
pull-requests: write

env:
MAJOR: ${{ github.event.inputs.major }}
MINOR: ${{ github.event.inputs.minor }}
PATCH: ${{ github.event.inputs.patch }}
PRE_RELEASE_ID: ${{ github.event.inputs.pre_release_id }}

jobs:
prepare:
runs-on: ubuntu-24.04
steps:
- name: Generate GitHub App token
id: app-token
uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
with:
client-id: ${{ secrets.OC_RELEASE_APP_CLIENT_ID }}
private-key: ${{ secrets.OC_RELEASE_APP_PRIVATE_KEY }}

- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
token: ${{ steps.app-token.outputs.token }}
fetch-depth: 0

- name: Set git identity
run: |
git config user.name "${{ steps.app-token.outputs.app-slug }}[bot]"
git config user.email "${{ steps.app-token.outputs.app-slug }}[bot]@users.noreply.github.com"

- name: Resolve target branch and version
env:
MAJOR: ${{ github.event.inputs.major }}
MINOR: ${{ github.event.inputs.minor }}
PATCH: ${{ github.event.inputs.patch }}
PRE_RELEASE_ID: ${{ github.event.inputs.pre_release_id }}
run: |
if [[ ! "${MAJOR}" =~ ^[0-9]+$ ]] || [[ ! "${MINOR}" =~ ^[0-9]+$ ]] || [[ ! "${PATCH}" =~ ^[0-9]+$ ]]; then
echo "ERROR: major, minor, and patch must be non-negative integers"
exit 1
fi
if [ -n "${PRE_RELEASE_ID}" ] && [[ ! "${PRE_RELEASE_ID}" =~ ^[A-Za-z0-9.-]+$ ]]; then
echo "ERROR: invalid pre_release_id: ${PRE_RELEASE_ID}"
exit 1
fi

VER="${MAJOR}.${MINOR}.${PATCH}"
if [ -n "${PRE_RELEASE_ID}" ]; then
VER="${VER}-${PRE_RELEASE_ID}"
fi

if git ls-remote origin "refs/heads/release-v${MAJOR}.${MINOR}" | head -1 | grep -q .; then
echo "TARGET=release-v${MAJOR}.${MINOR}" >> $GITHUB_ENV
else
echo "TARGET=main" >> $GITHUB_ENV
fi
echo "VERSION=${VER}" >> $GITHUB_ENV

- name: Create version bump branch and PR
env:
GH_TOKEN: ${{ steps.app-token.outputs.token }}
run: |
BRANCH="release-next-v${{ env.VERSION }}"

git fetch origin "${{ env.TARGET }}"
git checkout -b "${BRANCH}" "origin/${{ env.TARGET }}"

echo "${{ env.VERSION }}" > VERSION
git add VERSION
git diff --staged --quiet || git commit -s -m "chore: bump version to ${{ env.VERSION }}"

git push --force-with-lease origin "${BRANCH}"

PR_TITLE="chore: bump version to ${{ env.VERSION }}"
# Check if a PR already exists for this branch before creating one
EXISTING_PR=$(gh pr list --head "${BRANCH}" --base "${{ env.TARGET }}" --json number --jq '.[0].number' 2>/dev/null)
if [ -n "$EXISTING_PR" ]; then
echo "PR #${EXISTING_PR} already exists for ${BRANCH} → ${{ env.TARGET }}. Skipping creation."
else
gh pr create \
--base "${{ env.TARGET }}" \
--head "${BRANCH}" \
--title "${PR_TITLE}" \
--body "Bump to next development version ${{ env.VERSION }}. Before merging, add a \`${{ env.VERSION }}\` section header to \`CHANGELOG.md\` if this is a new release." \
--label "type/release"
fi
Loading
Loading