Skip to content

Conversation

@rainest
Copy link
Contributor

@rainest rainest commented Oct 21, 2025

Description

Add a callable workflow that takes a Dockerfile, target, a registry, and desired platforms, builds images, and pushes them to the registry, and creates attestations.

Keeps some of the inputs from the Goreleaser workflow, but not all. I removed some stuff that looked unecessary (because it could be done in the Dockerfile instead) or where it looked like there were better options for reasonable defaults.

If the pushed ref is a tag, create a release for it, unless the release already exists.

Checklist

  • My code follows the style guidelines of this project
  • I have added/updated comments where needed
  • I have added tests that prove my fix is effective or my feature works
  • I have run make test (or equivalent) locally and all tests pass
  • DCO Sign-off: All commits are signed off (git commit -s) with my real name and email
  • REUSE Compliance:
    • Each new/modified source file has SPDX copyright and license headers
    • Any non-commentable files include a <filename>.license sidecar
    • All referenced licenses are present in the LICENSES/ directory

Not sure on the licensing stuff, there aren't many other examples in the other workflows.

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Documentation update

@rainest
Copy link
Contributor Author

rainest commented Oct 21, 2025

See chat discsussion at (for now) https://openchami.slack.com/archives/C099YK6M3A8/p1759448033651679 and https://openchami.slack.com/archives/C099YK6M3A8/p1760730373971579

https://github.com/rainest/power-control/actions/runs/18701210581 is an example run called from the PR branch, which created release https://github.com/rainest/power-control/releases/tag/v2.9.10.

There's no slack announcement of this (shouldn't be, it's a fork), though I'm not entirely sure how the slack announcements are running currently.

Add a workflow that takes a Dockerfile, target, a registry, and desired
platforms, builds images, and pushes them to the registry, and creates
attestations.

Keeps some of the inputs from the Goreleaser workflow, but not all. I
removed some stuff that looked unecessary (because it could be done in
the Dockerfile instead) or where it looked like there were better
options for reasonable defaults.

If the pushed ref is a tag, create a release for it, unless the release
already exists.

Signed-off-by: Travis Raines <571832+rainest@users.noreply.github.com>
@rainest
Copy link
Contributor Author

rainest commented Oct 22, 2025

Unsure how to make the linters happy. Some of that's complaints about existing code, some of it's complaints about the added stuff, but IDK how to fix it--shellcheck against embedded shell inside YAML is kinda confusing about the specifics of what it's complaining about, and it'll point to line number that don't make sense or that don't appear to have the problem it describes.

I want to add @taylorludwig as a reviewer but cannot for whatever reason.

@rainest rainest marked this pull request as ready for review October 22, 2025 00:32
@rainest rainest changed the title feat: add Docker build and release call workflow Action` feat: add Docker build and release call workflow Action Oct 23, 2025
Copy link
Member

@alexlovelltroy alexlovelltroy left a comment

Choose a reason for hiding this comment

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

I think this looks good. If you can give me write access on your fork, I can fix the linter stuff.

@rainest
Copy link
Contributor Author

rainest commented Nov 5, 2025

I may be able to use not a fork in the future (I often use them when I need to test Actions stuff, but I think it's fine to just call a branch or hash version of an action. Given the existing open PR here though, I've just added @alexlovelltroy to my fork as a collaborator to take a stab at making the linter happier if we wanna bother (main's currently broken anyway, so maybe we don't really care).

Signed-off-by: Alex Lovell-Troy <alex@lovelltroy.org>
@alexlovelltroy alexlovelltroy merged commit 8b72276 into OpenCHAMI:main Nov 5, 2025
2 of 3 checks passed
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