Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ci/automated releasing #5

Merged

Conversation

everettraven
Copy link
Collaborator

@everettraven everettraven commented Aug 17, 2023

Description of the change:

  • Adds a .goreleaser.yml file to use GoReleaser to automate the binary+image build/push process for a release
  • Adds a GitHub Action for automatically triggering a release and running GoReleaser on a tag push. It will also verify that image builds will pass on PRs as a check.
  • Updates the Makefile as necessary to install and run GoReleaser and provide the needed environment variables for releases. Also needed to update the ansible-operator binary build target so the image build works appropriately when using the make image-build command to build the ansible-operator image locally.
  • Removes the separate base.Dockerfile in favor of having a single Dockerfile that does everything via multi-stage builds (this makes it significantly easier to have a fully automated release process

Motivation for the change:

  • Enable automated releases for this repo that are triggered on a tag push

Open Question:

  • The plugin uses to determine the tag to use in the FROM directive when scaffolding the Dockerfile. Any thoughts on how we can adapt this such that we don't have to manually update this as a pre-release step? Typically this would be set as part of building the binary but the current intention is that this is used as a library by Operator-SDK so it will be whatever the string literal is. I'm having trouble with coming up with a way to resolve this without having to have a manual pre-release step of updating this.

Checklist

If the pull request includes user-facing changes, extra documentation is required:

@everettraven
Copy link
Collaborator Author

currently e2e tests are expected to fail. We should probably get #4 merged prior to this PR so we can have passing e2e with new samples being properly generated.

/hold

@openshift-ci openshift-ci bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Aug 17, 2023
Signed-off-by: Bryce Palmer <bpalmer@redhat.com>
Signed-off-by: Bryce Palmer <bpalmer@redhat.com>
Signed-off-by: Bryce Palmer <bpalmer@redhat.com>
…bilities

Signed-off-by: Bryce Palmer <bpalmer@redhat.com>
Signed-off-by: Bryce Palmer <bpalmer@redhat.com>
Signed-off-by: Bryce Palmer <bpalmer@redhat.com>
 '

Signed-off-by: Bryce Palmer <bpalmer@redhat.com>
Signed-off-by: Bryce Palmer <bpalmer@redhat.com>
@everettraven
Copy link
Collaborator Author

/hold cancel

@openshift-ci openshift-ci bot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Aug 24, 2023
Signed-off-by: Bryce Palmer <bpalmer@redhat.com>
Signed-off-by: Bryce Palmer <bpalmer@redhat.com>
@oceanc80
Copy link
Contributor

/lgtm

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Aug 24, 2023
@everettraven everettraven merged commit 6f2d762 into operator-framework:main Aug 24, 2023
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lgtm Indicates that a PR is ready to be merged.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants