At eNovance we have a lot of devs and engineers at the current OpenStack summit in Hong Kong and we are striving to share with you the discussion going on here, today we bring you the summit view from Chmouel, the discussions he had with the other OpenStackers at the design summit.
After a ~12 hours flight I have arrived with the eNovance team to Hong Kong, this is a great place for the conference and after a bit of visit and discovering, today was the day to start to get hand on with the session. Here are the sessions I got into with trying to fight the jet-lag, but at least this year Americans and Europeans are on the same level of dizziness/happiness 🙂
Devstack new bit’s
This morning we had a discussion talking about devstack with the current state of affair and the evolution where we want to have the direction heading.
Dean Troyer went over all the new things that has been added lately, making it more flexible for all the different configuration that it needs to run.
There is now a new customization facility called local.conf which differs itself from the former way in local.sh. It allows you to configure most of the locally installed files in a very flexible way at different steps of devstack via configuration controls. Note that this new feature doesn’t remove the local.sh way and is backward compatible with it if the file is present. More info about local.conf is already documented here http://devstack.org/configuration.html.
We went over the plugins system and extensions of what we currently have with the extras feature, it’s different from the extras since it’s pretty much a drop on that can be run with hooks into the services installs. The new incubated projects Marconi, Savannah are actually using that already and you can find more infos is available here http://devstack.org/plugins.html.
Documentation was another area to work on and working to get it moved inside devstack (instead of using the github pages like done currently) like done for tempest.
Sean introduced with the tool called bash8 which does what pep8 for python to bash to ‘lint’ the shell code. bash8 is currently simple and will see a lot of new checks in the future until stable enough to get to its own pypi repository.
The full etherpad in this session is located here:
Defining Supported Distros / Projects
Devstack is the gate for every commits and more and more distributions want to be there to get validated on the projects.
It’s not easy to add a distro since the support can be pretty intrusive (like it was tried to be added for gentoo) inside the main code and need to have a very strong support from devs which have a large adoption of users before it gets agreed to be supported.
OpenStack Policy board have set a policy in general to support only the latest Ubuntu and Fedora and try not to break the LTS Ubuntu and RHEL versions.
To support a distro the discussion was around what should be required to be supported.
One of the hard requirement making it hard for other distro to get into it is to have an image inside the public cloud used by the infra team to spin up gating. Since there is no image uploads inside the RAX and HP public clouds it gets difficult for other distros to get supported.
One solution to it is to have third party gating of the distro from an outside distro directly on the devstack commits.
The discussion went to projects to know how this can be accepted inside devstack.
One requirement would be to have a pre-incubation requirement (plugins for devstack and devstack-gate) and some job running.
Projects can use plugins to implement it in a non intrusive way like done currently for Savannah and Marconi currently to get this as example.
One other thing that devstack requires to have bunch is to make sure the project would have a fully implemented functional tests in tempest.
The full etherpad of the session is here:
We had a session about OpenstackClient and how we want to go from there. OpenstackClient is one CLI (and maybe libraries) to rule all the others CLI which basically gives you a common interface for all the CLI using the native libraries. In a certain way it’s the ‘horizon’ of the OpenStack CLI.
There was slow but steady update and Dean has released a 0.2 version.
The Object API support was added to support Swift but was using a restclient in python instead of using swiftclient to get it implemented.
An API version detection started to get added, starting with keystone to detect dynamically which API is supported.
We talked as well if that something useful to have is multiple creds management if the user has the desire to connect to different type of clouds. One suggestion was to have all of those using python-keyring which can get this supported securely.
The full etherpad of the session is here: