Skip to content

Add GitHub Actions workflow for plugin release - #79

Open
cthtrifork wants to merge 7 commits into
cloudnative-pg:mainfrom
cthtrifork:cthtrifork-patch-1
Open

cthtrifork wants to merge 7 commits into
cloudnative-pg:mainfrom
cthtrifork:cthtrifork-patch-1

Conversation

@cthtrifork

@cthtrifork cthtrifork commented Oct 1, 2026 •

Copy link
Copy Markdown

Implement a GitHub Actions workflow to automate the build and publishing of the plugin container image.

Logs from successful run in fork:
logs_99858471065.zip

@cthtrifork
cthtrifork marked this pull request as ready for review October 1, 2026 14:14
@cthtrifork
cthtrifork requested a review from a team as a code owner October 1, 2026 14:14

@leonardoce leonardoce left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is in a good shape. I added a few comments. Also, we could add improve our README.md file illustrating how this image should be used.

Comment on lines +34 to +37
- name: Checkout main
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 #v7.0.1
with:
ref: main

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can't hard-code ref: main here. On the manual path we may have been dispatched against a specific version, and on the automatic path we may be releasing a tagged version.

In those cases main could have diverged, so building from main but tagging as vX.Y.Z would be wrong. Do you agree?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah I was confused about this part. It was done as I copied the workflow from the normal plugin release which also checkouts main:
https://github.com/cloudnative-pg/cnpg-headlamp-plugin/blob/main/.github/workflows/release-plugin.yaml#L32

Comment thread .dockerignore Outdated
Comment thread Dockerfile Outdated
inputs:
version:
description: "The plugin version (without a v prefix e.g., 0.1.0) - if not provided, will use version from package.json"
required: false

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe having version as optional is fragile: when empty we read package.json, which may not match the real release version.

What about making it required: true for workflow_dispatch and using github.event.release.tag_name for the release path, dropping the package.json fallback entirely?

Also, I believe it would be best for us to have the same UX as the workflow in release-plugin.yaml. That would be a required tag parameter.

Comment thread .github/workflows/release-plugin-oci.yaml Outdated
Comment thread Dockerfile Outdated
Comment thread .github/workflows/release-plugin-oci.yaml Outdated
@cthtrifork

Copy link
Copy Markdown
Author

@leonardoce Thanks for the feedback. I am slightly confused about the release UX in the existing workflow, but I agree we should align them

cthtrifork and others added 6 commits October 13, 2026 08:52
Signed-off-by: Casper Thygesen <cth@trifork.com>
Signed-off-by: Casper Thygesen <cth@trifork.com>
Signed-off-by: Casper Thygesen <cth@trifork.com>
…rkflow

Signed-off-by: Casper Thygesen <cth@trifork.com>
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [cronstrue](https://redirect.github.com/bradymholt/cronstrue)
([source](https://redirect.github.com/bradymholt/cRonstrue)) | [`3.31.0`
→ `3.32.0`](https://renovatebot.com/diffs/npm/cronstrue/3.31.0/3.32.0) |
![age](https://developer.mend.io/api/mc/badges/age/npm/cronstrue/3.32.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/cronstrue/3.31.0/3.32.0?slim=true)
|

---

### Release Notes

<details>
<summary>bradymholt/cRonstrue (cronstrue)</summary>

###
[`v3.32.0`](https://redirect.github.com/bradymholt/cRonstrue/releases/tag/v3.32.0)

[Compare
Source](https://redirect.github.com/bradymholt/cRonstrue/compare/v3.31.0...v3.32.0)

#### What's Changed

- Bump handlebars from 4.7.9 to 4.7.10 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;424](https://redirect.github.com/bradymholt/cRonstrue/pull/424)

**Full Changelog**:
<bradymholt/cRonstrue@v3.31.0...v3.32.0>

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/cloudnative-pg/cnpg-headlamp-plugin).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMzQuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjEzNC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Signed-off-by: Casper Thygesen <cth@trifork.com>
…plugin

Signed-off-by: Casper Thygesen <cth@trifork.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants