-
Notifications
You must be signed in to change notification settings - Fork 170
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
FDF unreleased deployment support #11404
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall LGTM, just small suggestion about using existing default variable.
Signed-off-by: Coady LaCroix <[email protected]>
adfc955
to
dda4b9f
Compare
Disregard |
""" | ||
fdf_image_tag = config.DEPLOYMENT.get("fdf_image_tag") | ||
fdf_catalog_name = defaults.FUSION_CATALOG_NAME | ||
fdf_registry = config.DEPLOYMENT.get("fdf_pre_release_registry") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
where do we get/pass "fdf_pre_release_registry" to ocs-ci. didn't see this any yaml files.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this be:
fdf_pre_ga_registry?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This got mixed up in my commit somehow but I've refactored and have started using pre_release
instead of pre_ga
in all instances.
fdf_deployment: true | ||
channel: v2.0 | ||
fdf_pre_ga: true | ||
fdf_image_tag: v4.18 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you have somewhere usage of this file?
Or it's as an example?
If it's bounded to v4.18, I prefer to have also 4.18 in the name of the file, or the plan is to maintain this file and update the version here and keep it as latest?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've created a new directory similar to version specific files we are using for Fusion to maintain these. I'm not sure if we want to keep the config files in conf/ocsci
for pre-release or not but I can remove these if we don't need them here.
@@ -0,0 +1,12 @@ | |||
--- | |||
DEPLOYMENT: | |||
fusion_deployment: true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see none of the config values are documented in:
https://github.com/red-hat-storage/ocs-ci/blob/master/conf/README.md
Can we get them documented please as well?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All should be documented now.
DEPLOYMENT: | ||
fusion_deployment: true | ||
fdf_deployment: true | ||
channel: v2.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If this channel is related to Fusion or FDF I think we should rename it to some more specific value as this is too generic name it like channel
I prefer fusion_channel
if it's more related to fusion here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
""" | ||
fdf_image_tag = config.DEPLOYMENT.get("fdf_image_tag") | ||
fdf_catalog_name = defaults.FUSION_CATALOG_NAME | ||
fdf_registry = config.DEPLOYMENT.get("fdf_pre_release_registry") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this be:
fdf_pre_ga_registry?
@@ -16,9 +16,6 @@ spec: | |||
- mirrors: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not big fan of having this file statically defined as every change in build - we will get blocked and it will require us to send a PR - is there a possibility to get this extracted from FDF build?
I just tried to run this:
oc image extract --filter-by-os linux/amd64 --registry-config /Users/pbalogh/Code/OCS/ocs4-jenkins/secrets/pull-secret-ocs-ci docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/isf-data-foundation-catalog:v4.18 --confirm --path /idms.yaml:./
and I got this file back:
apiVersion: config.openshift.io/v1
kind: ImageDigestMirrorSet
metadata:
name: df-repo
spec:
imageDigestMirrors:
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/cephcsi-rhel9
source: cp.icr.io/cp/df/cephcsi-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/mcg-core-rhel9
source: cp.icr.io/cp/df/mcg-core-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/ocs-client-console-rhel9
source: cp.icr.io/cp/df/ocs-client-console-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/ocs-metrics-exporter-rhel9
source: cp.icr.io/cp/df/ocs-metrics-exporter-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/odf-console-rhel9
source: cp.icr.io/cp/df/odf-console-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/odf-cosi-sidecar-rhel9
source: cp.icr.io/cp/df/odf-cosi-sidecar-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/odf-csi-addons-sidecar-rhel9
source: cp.icr.io/cp/df/odf-csi-addons-sidecar-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/odf-multicluster-console-rhel9
source: cp.icr.io/cp/df/odf-multicluster-console-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/cephcsi-operator
source: icr.io/cpopen/cephcsi-operator
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/mcg-operator
source: icr.io/cpopen/mcg-operator
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/ocs-client-operator
source: icr.io/cpopen/ocs-client-operator
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/ocs-operator
source: icr.io/cpopen/ocs-operator
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/odf-csi-addons-operator
source: icr.io/cpopen/odf-csi-addons-operator
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/odf-multicluster-operator
source: icr.io/cpopen/odf-multicluster-operator
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/odf-must-gather
source: icr.io/cpopen/odf-must-gather
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/odf-operator
source: icr.io/cpopen/odf-operator
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/odr-operator
source: icr.io/cpopen/odr-operator
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/rook-ceph-operator
source: icr.io/cpopen/rook-ceph-operator
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/odf4/odf-cli-rhel9
source: registry.redhat.io/odf4/odf-cli-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-external-attacher-rhel9
source: registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-external-attacher-rhel9
source: registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-external-attacher-rhel9
source: registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-external-provisioner-rhel9
source: registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-external-provisioner-rhel9
source: registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-external-provisioner-rhel9
source: registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-external-resizer-rhel9
source: registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-external-resizer-rhel9
source: registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-external-resizer-rhel9
source: registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-external-snapshotter-rhel9
source: registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-external-snapshotter-rhel9
source: registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-external-snapshotter-rhel9
source: registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-node-driver-registrar-rhel9
source: registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-node-driver-registrar-rhel9
source: registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-csi-node-driver-registrar-rhel9
source: registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-kube-rbac-proxy-rhel9
source: registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-oauth-proxy-rhel9
source: registry.redhat.io/openshift4/ose-oauth-proxy-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-prometheus-alertmanager-rhel9
source: registry.redhat.io/openshift4/ose-prometheus-alertmanager-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-prometheus-config-reloader-rhel9
source: registry.redhat.io/openshift4/ose-prometheus-config-reloader-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-prometheus-rhel9-operator
source: registry.redhat.io/openshift4/ose-prometheus-rhel9-operator
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/openshift/ose-prometheus-rhel9
source: registry.redhat.io/openshift4/ose-prometheus-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/rhceph/rhceph-8-rhel9
source: registry.redhat.io/rhceph/rhceph-8-rhel9
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/rhel8/postgresql-12
source: registry.redhat.io/rhel8/postgresql-12
- mirrors:
- docker-na-public.artifactory.swg-devops.com/hyc-abell-devops-team-dev-docker-local/df/rhel9/postgresql-15
source: registry.redhat.io/rhel9/postgresql-15
So for unreleased builds created by build team we can use what I've described without need of maintaining it statically in our repo.
Just one note that to execute this command for me took like 2 minutes, probably it was pulling the image for me quite slowly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree. I asked about this but I was pointed to a static file so I wasn't sure if it was being packaged like this. I've updated the code to extract in the case where we are deploying a pre release image, otherwise we will use the static one we have defined.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@clacroix12 do we really need for released content to create IDMS?
This is usually used only when we point to some local registry where images are mirrored - e.g. content is not released yet, or disconnected deployment and so on.
GA content should come regularly from sources like:
cp.icr.io/cp/df/ocs-client-console-rhel9
icr.io/cpopen/odr-operator
registry.redhat.io/rhceph/rhceph-8-rhel9
So can you please double check if we really still need to apply it for GAed version - I guess we really don't - but not 100% sure.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Both the IDMS and ITMS are necessary for stable deployments as far as I know. I wasn't able to get a successful deployment without them.
Signed-off-by: Coady LaCroix <[email protected]>
Signed-off-by: Coady LaCroix <[email protected]>
Signed-off-by: Coady LaCroix <[email protected]>
Signed-off-by: Coady LaCroix <[email protected]>
New changes are detected. LGTM label has been removed. |
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: clacroix12 The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: clacroix12 The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Signed-off-by: Coady LaCroix <[email protected]>
Signed-off-by: Coady LaCroix <[email protected]>
Signed-off-by: Coady LaCroix <[email protected]>
Signed-off-by: Coady LaCroix <[email protected]>
Verified deployment here: https://url.corp.redhat.com/69ebc80 Failure was due to a temp issue with gitlab during the destroy job. |
Issue: https://url.corp.redhat.com/e2dde1d