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

add: okd-rpms buildconfig and tools:fedora37 istag; change: fedora-coreos buidconfig to point to git ref release-4.12, build-from-scrathc and full-rebuild pipeline to include okd-rpms build #36

Closed
wants to merge 3 commits into from

Conversation

dsevost
Copy link
Contributor

@dsevost dsevost commented Apr 25, 2023

hello dear okd-team, please review pull-req

tldr:
added ability to build okd-rpms as a part of the pipeline build-from-scratch

details:

  • at the moment, the assisted service is still looking for the okd-rpms image tag in the registry/okd/okd-release:4.12.0, so its added variants/fcos/40-okd-rpms.yaml, with refers to istag tools:fedora37
  • to be able to build okd-rpms in the main pipeline (sorry not able to find better way at the moment than refer of array indices like 3 and 0 via hardcoded style), it needs to be fixed build-from-scratch pipeline (task batch-03), also i'm not sure the pipeline full-rebuild is not out of date, since i've not found machine-os-content buildconfig, although found `machine-os-content' istag
  • all buildconfigs (except 03-forked-dockerfiles.yaml, 04-builder.yaml, 10-branding.yaml, 30-fedora-coreos.yaml) reffer to git branch release-4.12 and it has some side effetcs for the bc fedora-coreos (30-fedora-coreos.yaml) which belogs of tools:fedora-coreos, wich points to quay.io/coreos-assembler/fcos:next-devel; and i'm not sure that fedora-coreos:next-devel is the best choice for 4.12 (cri-o 1.28), it seems fedora-coreos:stable most suitable at the moment? lets fix this by changing ref attribute of 30-fedora-coreos.yaml builconfig to git ref release-4.12

change: fedora-coreos buidconfig to point to git ref release-4.12, build-from-scrathc and full-rebuild pipeline to include okd-rpms build
@dsevost dsevost requested a review from vrutkovs April 25, 2023 11:36
@@ -0,0 +1,17 @@
FROM release:artifacts as artifacts
FROM release:machine-config-operator as mcd
Copy link
Member

Choose a reason for hiding this comment

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

why do we need this layer?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

mcd layer might be unnecessary, it was introduced just for "backward compatibility" and used for

# TODO: check: is it really needed
COPY --from=mcd /usr/bin/machine-config-daemon /binaries/machine-config-daemon


RUN \
mkdir -p /rpms && \
mv -v /tmp/rpms/$([ -d /tmp/rpms/$(uname -m) ] && echo $(uname -m)/)*.rpm /rpms/ && \
Copy link
Member

Choose a reason for hiding this comment

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

is it worth adding the rpms in the artifacts and adding an imagestreamtag referencing it with name okd-rpms?

In future, the two names should converge.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

wouldn't like to break any builds which depend on original quay.io/coreos-assembler/fcos:next-devel, if any

Copy link
Contributor Author

Choose a reason for hiding this comment

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

as i understand correctly scos would be like rhel coreos and it will contain any necessary rpms (including crio), its a reason when fcos variant is a little separated at the momemnt (or opposite)

Copy link
Member

Choose a reason for hiding this comment

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

The artifacts image is not part of the payload but an auxiliary image.

Adding the cri-o rpms and using some symbolic links to refer the rpms where they are currently stored should be enough if I understand correctly the use case. The consumers of the rpms will use the rpms at need...

https://github.com/okd-project/okd-payload-pipeline/blob/main/forks/artifacts/Dockerfile.centos9

Copy link
Contributor Author

@dsevost dsevost Apr 26, 2023

Choose a reason for hiding this comment

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

there are still some references to GetOKDRPMSImage within assisted service codebase:

https://github.com/openshift/assisted-service/blob/99125bfa925143394e32f785e104c63624d1f601/internal/oc/release.go#L45
https://github.com/openshift/assisted-service/blob/99125bfa925143394e32f785e104c63624d1f601/internal/ignition/ignition.go#L1627

finally the GetOKDRPMSImage refers to okdRPMSImageName = "okd-rpms" as tag for registry/okd/okd-contents:4.12.0-0.okd-xxxx-okd-rpms
and this is a point where scos might be more suitable: full control for OS version/build and ostree (including crio, kubelet, cli, ncat, etc) without temporary rpm overlaying on bootkube/bootstrap procedure

@dsevost
Copy link
Contributor Author

dsevost commented Jun 11, 2023

included into #39 (comment)

@dsevost dsevost closed this Jun 11, 2023
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.

3 participants