Skip to content

OLM-2608: revamped artifacts to give better UX to the flow #1

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

Merged
merged 1 commit into from
Sep 16, 2022

Conversation

grokspawn
Copy link
Collaborator

updated to

  • use opm instead of shell scripts
  • support both current veneer types
  • give a good lifecycle experience in the make targets

Signed-off-by: Jordan Keister [email protected]

@grokspawn grokspawn changed the title revamped artifacts to give good UX to the flow revamped artifacts to give better UX to the flow Sep 8, 2022
@grokspawn grokspawn changed the title revamped artifacts to give better UX to the flow WIP: revamped artifacts to give better UX to the flow Sep 9, 2022
@grokspawn grokspawn changed the title WIP: revamped artifacts to give better UX to the flow revamped artifacts to give better UX to the flow Sep 13, 2022
Makefile Outdated
.PHONY: push
push: build
docker push $(INDEX_IMAGE)
sanity: bin/opm $(OPERATOR_CATALOG_CONTRIBUTION) preverify

Choose a reason for hiding this comment

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

is it better to call make sanity for the validation step in CI? could there be skew b/w here and there?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

We don't call make sanity because we have the Validate step in CI which covers that, doing the equivalent.

Copy link

@michaelryanpeter michaelryanpeter left a comment

Choose a reason for hiding this comment

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

Reads well. I left a few nits/suggestions.

Makefile Outdated


# sanity target illustrates FBC validation
# all FBC must pass opm validation in order to be able to be used in a catalog
.PHONY: sanity

Choose a reason for hiding this comment

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

It might not be worth addressing now, but sanity is a problem term according to the IBM style guide (you can use your RH SSO). The Google developer docs also advise against it.

Like I said, it might not be important at this stage, but it could cause downstream documentation issues later.

README.md Outdated
@@ -1,6 +1,96 @@
# example-operator-index
Welcome! This repository serves to give a good starting point for those interested in maintaining the catalog information for their operator, and illustrating how that information contributes to an overall catalog ecosystem.

Choose a reason for hiding this comment

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

Suggested change
Welcome! This repository serves to give a good starting point for those interested in maintaining the catalog information for their operator, and illustrating how that information contributes to an overall catalog ecosystem.
Welcome! This repository gives a good starting point for maintaining the catalog information in your operator and illustrates how that information contributes to an overall catalog ecosystem.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Rephrased.

README.md Outdated
Comment on lines 6 to 12
1. fork this repository
2. adjust destination fields in .github/workflows/ci.yaml as necessary, commit and push changes
3. adjust Makefile $OPERATOR_NAME for your operator's name
2. decide on an approach: basic veneer, semver veneer, custom veneers, raw FBC, etc. and adjust the 'catalog' target in Makefile to generate your desired FBC
4. run local tests (`make catalog`, `make sanity`, etc.) until happy with the generated FBC.
6. add, commit, and push the changes
7. verify that CI passes and opens a PR in the catalog repository

Choose a reason for hiding this comment

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

Since these are complete sentences, I would put a period at the end (optional, as long as it is consistent) and capitalize the first word.

README.md Outdated


### Lifecycle
This repository models a single operator author contributing their FBC to a catalog. This repository comes configured ready with github actions to deliver the FBC to an example [catalog github repository](https://github.com/grokspawn/cool-catalog/). Github actions are preconfigured to generate the FBC from this repository and open a pull request on the catalog repository to merge them. (See that repository for more information about the lifecycle steps after creating the pull request.)

Choose a reason for hiding this comment

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

Suggested change
This repository models a single operator author contributing their FBC to a catalog. This repository comes configured ready with github actions to deliver the FBC to an example [catalog github repository](https://github.com/grokspawn/cool-catalog/). Github actions are preconfigured to generate the FBC from this repository and open a pull request on the catalog repository to merge them. (See that repository for more information about the lifecycle steps after creating the pull request.)
This repository models a single operator author contributing their FBC to a catalog. This repository is configured with GitHub actions to deliver the FBC to an example [catalog GitHub repository](https://github.com/grokspawn/cool-catalog/). GitHub actions are preconfigured to generate the FBC from this repository and open a pull request on the catalog repository to merge them. (See that repository for more information about the lifecycle steps after creating the pull request.)

README.md Outdated
```

1. Fork and Clone Remote Repository
IMPORTANT! Skip this step, and any changes will be ignored.

Choose a reason for hiding this comment

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

Suggested change
IMPORTANT! Skip this step, and any changes will be ignored.
IMPORTANT! If you skip this step, your changes will be ignored.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I have callouses over scar tissue that is triggered by informal second-person writing. :)
I rephrased... please see if it flows better for you.

README.md Outdated
IMPORTANT! Skip this step, and any changes will be ignored.

2. Update CI Destination
Customize ci.yaml in .github/workflows/ci.yaml to your needs, setting the destination_repo to the URI of your catalog repository.

Choose a reason for hiding this comment

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

Suggested change
Customize ci.yaml in .github/workflows/ci.yaml to your needs, setting the destination_repo to the URI of your catalog repository.
Customize ci.yaml in .github/workflows/ci.yaml to your needs, setting the destination_repo to the URI of your catalog repository.
Suggested change
Customize ci.yaml in .github/workflows/ci.yaml to your needs, setting the destination_repo to the URI of your catalog repository.
Customize the `.github/workflows/ci.yaml` file to your needs by setting the `destination_repo` to the URI of your catalog repository.

Copy link
Collaborator Author

@grokspawn grokspawn Sep 14, 2022

Choose a reason for hiding this comment

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

The reason for the "... needs, setting..." phrasing was because they may wish to make other customization, including the possibility of multiple, discrete versioned deliveries to different targets.
It's only going to be as simple as changing that one variable if their needs precisely align with the example.
Rephrased. Please see if it works better.

README.md Outdated
Customize ci.yaml in .github/workflows/ci.yaml to your needs, setting the destination_repo to the URI of your catalog repository.

3. Push Changes to Remote
Push the CI changes to the remote branch so they will be ready/able to trigger when you later push catalog contributions

Choose a reason for hiding this comment

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

Suggested change
Push the CI changes to the remote branch so they will be ready/able to trigger when you later push catalog contributions
Push the CI changes to the remote branch so they will trigger when you push catalog contributions.

README.md Outdated
2. semver veneer generates FBC
3. compound veneer generates and post-processes FBC
5. Push Changes to Remote
Once happy with the state of the `catalog` make target and the resulting FBC, push the changes to the remote repository. This will trigger the remote actions to generate a pull request against the destination catalog repository as specified in #2.

Choose a reason for hiding this comment

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

Suggested change
Once happy with the state of the `catalog` make target and the resulting FBC, push the changes to the remote repository. This will trigger the remote actions to generate a pull request against the destination catalog repository as specified in #2.
Once your are happy with the state of the `catalog` make target and the resulting FBC, push the changes to the remote repository. This will trigger the remote actions to generate a pull request against the destination catalog repository as specified in #2.

@grokspawn grokspawn changed the title revamped artifacts to give better UX to the flow OLM-2608: revamped artifacts to give better UX to the flow Sep 14, 2022
@grokspawn grokspawn merged commit 30bfe95 into main Sep 16, 2022
@grokspawn grokspawn deleted the channel-veneer branch September 16, 2022 20:16
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.

4 participants