# Add CI coverage to test "Removal of Swift service from undercloud" ###### tags: `Design` ## How to disable swift in undercloud? Add **enable_swift = False** in undercloud.conf and install undercloud ~~~ enable_swift = False ~~~ Note: Adding `enable_swift=False` will pass [environments/disable-swift.yaml](https://github.com/openstack/tripleo-heat-templates/blob/master/environments/disable-swift.yaml) during undercloud deploy. ## Where we can possibly test in CI? * Standalone jobs(Upstream CI)? * Need to check with Kevin if we have plan is to remove swift from Standalone as well, and explore if Standalone jobs can provide some coverage. * Multinode deployment(RDO Third Party jobs):- * 3 controller + 1 compute vanila ovb deployment (for eg: fs001) * 2 node multinode jobs (For eg: tripleo-ci-centos-8-multinode-1ctlr-featureset010) ## Ci patches and results * [DNM] Disable swift from undercloud by adding `enable_swift` = False in undercloud.conf https://review.opendev.org/c/openstack/tripleo-quickstart-extras/+/769245 **Failed during introspection** * Testproject https://review.rdoproject.org/r/#/c/28442/ **Failed during overcloud deploy** ## Issues & observations 1. Introspection failed in fs001 job https://logserver.rdoproject.org/45/769245/1/openstack-check/tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001/447ded1/logs/undercloud/var/log/containers/ironic-inspector/ironic-inspector.log.txt.gz ~~~ 2021-01-05 06:37:41.953 8 ERROR ironic_inspector.utils [-] Could not connect to the object storage service: ['internal', 'public'] endpoint for object-store service in regionOne region not found: . . 2021-01-05 06:37:41.954 8 ERROR ironic_inspector.process raise exceptions.EndpointNotFound(msg) 2021-01-05 06:37:41.954 8 ERROR ironic_inspector.process keystoneauth1.exceptions.catalog.EndpointNotFound: ['internal', 'public'] endpoint for object-store service in regionOne region not found ~~~ 2. Overcloud deployment failed in 2 nodes multinode job https://logserver.rdoproject.org/42/28442/11/check/periodic-tripleo-ci-centos-8-multinode-1ctlr-featureset010-master/f395d8e/logs/undercloud/home/zuul/overcloud_deploy.log.txt.gz ~~~ ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] Exception occured while running the command: keystoneauth1.exceptions.catalog.EndpointNotFound: public endpoint for object-store service not found ~~~ 3. May be we don't need `create_swift_temp_url_key` container when swift is disabled https://logserver.rdoproject.org/45/769245/1/openstack-check/tripleo-ci-centos-8-ovb-3ctlr_1comp-featureset001/447ded1/logs/undercloud/var/log/extra/podman/podman_allinfo.log.txt.gz ~~~ daafe38c3e24 192.168.24.1:8787/tripleomaster/openstack-ironic-conductor:5133d62a49a81fa0693a49067390b169-updated-20210105054322 /usr/bin/bootstra... 30 minutes ago Exited (0) 29 minutes ago create_swift_temp_url_key ~~~ 4. Ironic templates have some references to swift temp urls in tht. https://opendev.org/openstack/tripleo-heat-templates/src/branch/master/deployment/ironic/ironic-conductor-container-puppet.yaml#L546 ~~~ openstack object store account set --property "Temp-URL-Key=$SWIFT_TEMP_URL_KEY" ~~~ ## Questions:- * By the end of this wallaby cycle, Will we make swift optional(we can still enable swift) or we will completely remove swift and turning it off is essential? * Based on above answer we will decide on whether we need to remove swift from all the tripleo ci jobs for master. * Will standalone jobs provide some coverage to test this work? ## References * [Spec to remove swift from undercloud](https://specs.openstack.org/openstack/tripleo-specs/specs/wallaby/excise-swift.html) * [Etherpad with details](https://etherpad.opendev.org/p/tripleo-heat-swift-removal-undercloud) * [Gerrit topic](https://review.opendev.org/q/topic:%22config-download%252Fswift%22+(status:open%20OR%20status:merged))