[OpenStack-Infra] helping openstack-infra
Clark Boylan
cboylan at sapwetik.org
Mon Nov 25 17:48:20 UTC 2019
On Mon, Nov 25, 2019, at 4:15 AM, Sorin Sbarnea wrote:
> Hi!
>
> In response to
> https://governance.openstack.org/tc/reference/upstream-investment-opportunities/2019/community-infrastructure-sysadmins.html would like to state that I am more than willing to help the openstack-infra team with sysadmin tasks needed.
>
> I am fully aware this will require me investing more time on infra
> specific tasks but I am glad it do have the support from my
> organization for doing this.
>
> As I was really happy about my last year experience with others from
> infra and I valued a lot their help on various tasks, I want to also
> return the favor and help with other chores or features we may need do
> to make our CI even better.
>
> So mainly, just let me know what needs should be done?
Current priority efforts include OpenDev-ification of services and updating config management for puppet managed services to ansible and containers.
To opendevify services we are updating them to be hosted at opendev.org domains as well as updating theming if necessary to incorporate the opendev logo and color scheme. In many cases we want to install redirects from the old openstack.org names to the new opendev.org name. For services with SSL/TLS this is likely the trickiest bit of the conversion as our plan is to use LetsEncrypt for opendev.org names. Thankfully, we've sorted out a plan [0] for managing openstack.org names with LetsEncrypt certs as well.
For the config management updates we've been converting deployments of services from puppet to ansible and in many cases having ansible drive docker-compose to do the actual deployments. This process typically starts by determining if we can use an upstream image or not. If not we add a Dockerfile and corresponding image build jobs to the opendev/system-config repo. Then we can add jobs to test deployment of those containers and finally deploy to production via this method. The great thing about this process is we can fully test the deployment easily and there are many examples of that in system-config now (see Gitea).
Whether or not it makes more sense to convert a service to opendev or update its config management first, likely depends on how difficult it is to set up SSL/TLS for multiple domains. My hunch is that for most services doing the config management update with the SSL/TLS needs in mind is likely easiest.
If you'd like a concrete place to start I would suggest taking a service like ethercalc or etherpad, udpate its config management to ansible + docker-compose, implement test jobs as others have, then when all that is happy you can work with an infra root to replace our deployment of these services in production. Then if we haven't already done it in conjunction with the config management updates we can update the SSL/TLS setup and convert to an opendev service.
Another different but slightly related OpenDev topic is to start implementing tooling so that top level orgs can manage their repositories directly. At the PTG we discussed doing this via a meta project per repo that determines who is allowed to make those changes, then via ansible of some sort implement those updates when the appropriate approvers have ACKed the change. This likely needs a bit of design work just to be sure we are all in agreement of the plan. A lightweight spec would be helpful.
[0] https://opendev.org/opendev/infra-specs/src/branch/master/specs/retire-static.rst#opendev-infrastructure-migration
Hope this helps. Feel free to dig in or ask questions and I'll do my best to expand on this topic.
Clark
More information about the OpenStack-Infra
mailing list