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

Split manifest and update CI #852

Merged
merged 3 commits into from
Jun 20, 2022
Merged

Conversation

travier
Copy link
Member

@travier travier commented Jun 17, 2022

ci: Add an explicitly named test entry for COSA CI

Adding an explicit test entry point will enable us to focus on tests
that matter for COSA CI (such as buildextends for all platforms) and not
on general RHCOS testing.


ci: Remove now unused test names


manifests: Split into common & RHEL 8.6 specific manifests


Add script to select which version to build


ci: Expllcitly select the version to build

@openshift-ci openshift-ci bot requested review from dustymabe and RishabhSaini June 17, 2022 12:18
@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 17, 2022
@travier
Copy link
Member Author

travier commented Jun 17, 2022

Based on #851 & #850

@travier
Copy link
Member Author

travier commented Jun 17, 2022

Initial version of this PR had no default manifest symlink but this does not work well with https://github.com/coreos/coreos-assembler/blob/main/src/cmd-init#L135 (from coreos/coreos-assembler@480c239 & coreos/coreos-assembler@4781e46)

@travier
Copy link
Member Author

travier commented Jun 17, 2022

/retest

@HuijingHei
Copy link
Contributor

/retest

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jun 20, 2022

@travier: all tests passed!

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@HuijingHei
Copy link
Contributor

/lgtm

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Jun 20, 2022
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jun 20, 2022

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: HuijingHei, travier

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot merged commit 06dc625 into openshift:master Jun 20, 2022
@travier
Copy link
Member Author

travier commented Jun 20, 2022

Hum, I should have added a hold here until the discussion had reached a consensus on this one vs the other alternative. Well, we can always redo the layout later if we decide to.

travier added a commit to travier/coreos-assembler that referenced this pull request Jun 20, 2022
Support for the logic introduced in [1]:
- Look for a default manifest
- If none found, look for a script to select the default manifest
- If not found, error out

Enable shipping openshift/os with no default manifest selected.

[1] openshift/os#852.

Partially revert: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Jun 20, 2022
Support for the logic introduced in [1]:
- Look for a default manifest
- If none found, look for a script to select the default manifest
- If not found, error out

Enable shipping openshift/os with no default manifest selected.

[1] openshift/os#852.

Partially revert: 480c239 init: Require specifying a config repository
@jlebon
Copy link
Member

jlebon commented Jun 20, 2022

Hmm, yeah I'm really not a fan of requiring running a script to set up the config dir. It makes things less declarative and more opaque.

If we need to fix cosa to handle symlinks correctly for some files, then can we do that instead?

@travier
Copy link
Member Author

travier commented Jun 20, 2022

Agree that this is not ideal but I don't have a better idea right now. The last workaround was basically to copy the entire repo into the subfolder which is even less ideal: https://github.com/openshift/os/pull/849/files#diff-cf4ac67e6195e36ef10dd53e72af30a0346517d3faf3857f88e74204c7373e3bR53-R66

@travier
Copy link
Member Author

travier commented Jun 20, 2022

See also coreos/coreos-assembler#2934

@travier
Copy link
Member Author

travier commented Jun 20, 2022

We could make cosa init run this script by default when found, thus removing this step. The version could be stored in a distinct file if needed.

@travier
Copy link
Member Author

travier commented Jun 20, 2022

And:

I have another bug with cosa replacing the config -> config-git symlink to an absolute symlink when buiding locally.

@jlebon
Copy link
Member

jlebon commented Jun 20, 2022

I opened coreos/coreos-assembler#2936 which should fix the symlinking issues that Micah was hitting in #803 (comment).

I'm cool with moving away from subdirs in the future, but short-term I'd still prefer that over a setup script.

@travier
Copy link
Member Author

travier commented Jun 20, 2022

Let's do coreos/coreos-assembler#2934 (comment) then and decide on an interface to select the variant/version from a file?

@travier
Copy link
Member Author

travier commented Jun 20, 2022

Otherwise we would be changing the layout to use sub dirs to then change it again to remove the sub dir.

@jlebon
Copy link
Member

jlebon commented Jun 20, 2022

I'm OK with that if others prefer, but would be more comfortable just reverting this and fixing up the subdirs approach. Then we can take our time to design something better.

@travier
Copy link
Member Author

travier commented Jun 21, 2022

If we decide to move forward to using subdirs then I can make a PR to move the current state to that as the manifests are now ready and split. Reverting this one will have us re-review the split for nothing.

travier added a commit to travier/coreos-assembler that referenced this pull request Jun 21, 2022
Several variants may be provided from a single Git config repo:
- If no variant is explicitely selected then the default `manifest.yaml`
  will be used.
- If there is no `manifest.yaml` file provided by default in the repo,
  then COSA will read the `variant_default` file to figure out which
  variant to use by default.
- If you explicitely specify a variant as parameter then COSA will read
  the corresponding `variant_$VARIANT` file and use that as default
  instead, overriding any default set in the repo.

See: openshift/os#852.
Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Jun 21, 2022
Several variants may be provided from a single Git config repo:
- If no variant is explicitly selected then the default `manifest.yaml`
  will be used.
- If there is no `manifest.yaml` file provided by default in the repo,
  then COSA will read the `variant_default` file to figure out which
  variant to use by default.
- If you explicitly specify a variant as parameter then COSA will read
  the corresponding `variant_$VARIANT` file and use that as default
  instead, overriding any default set in the repo.

See: openshift/os#852.
Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/os that referenced this pull request Jul 7, 2022
Remove the current multi-version setup that was merged in
openshift#852 as we are moving to a COSA
based setup.
@travier travier deleted the splitmanifest2 branch July 7, 2022 17:51
travier added a commit to travier/coreos-assembler that referenced this pull request Jul 29, 2022
Several variants may be provided from a single Git config repo:
- If no variant is explicitly selected then the default `manifest.yaml`
  will be used.
- If there is no `manifest.yaml` file provided by default in the repo,
  then COSA will read the `variant_default` file to figure out which
  variant to use by default.
- If you explicitly specify a variant as parameter then COSA will read
  the corresponding `variant_$VARIANT` file and use that as default
  instead, overriding any default set in the repo.

See:
- openshift/os#852
- openshift/os#901

Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Jul 29, 2022
Several variants may be provided from a single Git config repo:
- If no variant is explicitly selected then the default `manifest.yaml`
  will be used.
- If there is no `manifest.yaml` file provided by default in the repo,
  then COSA will read the `variant_default` file to figure out which
  variant to use by default.
- If you explicitly specify a variant as parameter then COSA will read
  the corresponding `variant_$VARIANT` file and use that as default
  instead, overriding any default set in the repo.

See:
- openshift/os#852
- openshift/os#901

Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Jul 29, 2022
Several variants may be provided from a single Git config repo:
- If no variant is explicitly selected then the default `manifest.yaml`
  will be used.
- If there is no `manifest.yaml` file provided by default in the repo,
  then COSA will read the `variant_default` file to figure out which
  variant to use by default.
- If you explicitly specify a variant as parameter then COSA will read
  the corresponding `variant_$VARIANT` file and use that as default
  instead, overriding any default set in the repo.

See:
- openshift/os#852
- openshift/os#901

Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Aug 2, 2022
Several variants may be provided from a single Git config repo:
- If no variant is explicitly selected then the default `manifest.yaml`
  will be used.
- If there is no `manifest.yaml` file provided by default in the repo,
  then COSA will read the `variant_default` file to figure out which
  variant to use by default.
- If you explicitly specify a variant as parameter then COSA will read
  the corresponding `variant_$VARIANT` file and use that as default
  instead, overriding any default set in the repo.

See:
- openshift/os#852
- openshift/os#901

Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Aug 4, 2022
Several variants may be provided from a single Git config repo:
- If no variant is explicitly selected then the default `manifest.yaml`
  will be used.
- If there is no `manifest.yaml` file provided by default in the repo,
  then COSA will read the `variant_default` file to figure out which
  variant to use by default.
- If you explicitly specify a variant as parameter then COSA will read
  the corresponding `variant_$VARIANT` file and use that as default
  instead, overriding any default set in the repo.

See:
- openshift/os#852
- openshift/os#901

Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Aug 22, 2022
Several variants may be provided from a single Git config repo:
- If no variant is explicitly selected then the default `manifest.yaml`
  will be used.
- If there is no `manifest.yaml` file provided by default in the repo,
  then COSA will read the `variant_default` file to figure out which
  variant to use by default.
- If you explicitly specify a variant as parameter then COSA will read
  the corresponding `variant_$VARIANT` file and use that as default
  instead, overriding any default set in the repo.

See:
- openshift/os#852
- openshift/os#901

Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Aug 23, 2022
Several variants may be provided from a single Git config repo:
- If no variant is explicitly selected then the default `manifest.yaml`
  will be used.
- If there is no `manifest.yaml` file provided by default in the repo,
  then COSA will read the `variant_default` file to figure out which
  variant to use by default.
- If you explicitly specify a variant as parameter then COSA will read
  the corresponding `variant_$VARIANT` file and use that as default
  instead, overriding any default set in the repo.

See:
- openshift/os#852
- openshift/os#901

Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Aug 23, 2022
Several variants may be provided from a single Git config repo:
- If no variant is explicitly selected then the default `manifest.yaml`
  will be used.
- If there is no `manifest.yaml` file provided by default in the repo,
  then COSA will read the `variant_default` file to figure out which
  variant to use by default.
- If you explicitly specify a variant as parameter then COSA will read
  the corresponding `variant_$VARIANT` file and use that as default
  instead, overriding any default set in the repo.

See:
- openshift/os#852
- openshift/os#901

Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Aug 25, 2022
On top of the defaut variant, a config repo may include aditional
optional variants.

The variant used is selected at `cosa init` with the `--variant` option
and the value is recorded locally in `src/config.json`.

See:
- openshift/os#852
- openshift/os#901
- https://github.com/openshift/os/pull/XYZ # TODO

Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Aug 25, 2022
On top of the defaut variant, a config repo may include aditional
optional variants.

The variant used is selected at `cosa init` with the `--variant` option
and the value is recorded locally in `src/config.json`.

See:
- openshift/os#852
- openshift/os#901
- openshift/os#958

Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Aug 26, 2022
On top of the defaut variant, a config repo may include aditional
optional variants.

The variant used is selected at `cosa init` with the `--variant` option
and the value is recorded locally in `src/config.json`.

See:
- openshift/os#852
- openshift/os#901
- openshift/os#958

Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Aug 26, 2022
On top of the defaut variant, a config repo may include aditional
optional variants.

The variant used is selected at `cosa init` with the `--variant` option
and the value is recorded locally in `src/config.json`.

See:
- openshift/os#852
- openshift/os#901
- openshift/os#958

Reworks: 480c239 init: Require specifying a config repository
travier added a commit to travier/coreos-assembler that referenced this pull request Aug 26, 2022
On top of the defaut variant, a config repo may include aditional
optional variants.

The variant used is selected at `cosa init` with the `--variant` option
and the value is recorded locally in `src/config.json`.

See:
- openshift/os#852
- openshift/os#901
- openshift/os#958

Reworks: 480c239 init: Require specifying a config repository
travier added a commit to coreos/coreos-assembler that referenced this pull request Aug 29, 2022
On top of the defaut variant, a config repo may include aditional
optional variants.

The variant used is selected at `cosa init` with the `--variant` option
and the value is recorded locally in `src/config.json`.

See:
- openshift/os#852
- openshift/os#901
- openshift/os#958

Reworks: 480c239 init: Require specifying a config repository
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm Indicates that a PR is ready to be merged.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants