# 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))