Here is my proposal for the StarlingX docker repository.
Docker repository location
- hub.docker.com, as a public set of repositories under the
organization 'starlingx'
Build frequency
- On demand for release/milestone branches
- Will probably start with daily for master branch. Perhaps when things stabilize we'll reduce build frequency, or even use commit driven builds.
Retention policy
- Perhaps two weeks for master branch builds? but always one
'stable' build (see below)
- Will start with daily for master branch. Perhaps when things stabilize we'll reduce build frequency, or even use commit driven builds.
Image naming schema
<image-name>=<org>/<image>:<tag>
<org>=starlingx
<image>=stx-<os>-<openstack-release>-<component> <tag>=<git-tag> | <git-branch>[-<qualifier>] <os>=centos | ubuntu | clear-linux <openstack-release>=pike | queens | rocky ...
<component>=aodh | ceilometer| cinder | glance | gnocchi | heat | horizon | ironic | keystone | libvirt | magnum | murano | neutron | nova-api-proxy | nova | panko ... <qualifier>=<timestamp> | latest | stable <git-tag-or-branch>=master | r2018.10 | r2018.10.0 | ...Note: we can't have the '/' or ':' character in a branch name. So r/2018.10 would have to be shortened to 'r2018.10'.
Note: the 'latest' or 'stable' qualifiers would be aliases to the timestamped image. 'Stable' might be over selling it on master branch... perhaps some other term... 'tested', 'usable'?
e.g.
starlingx/stx-centos-pike-nova:master-20181201 starlingx/stx-centos-pike-nova:master-20181202 starlingx/stx-centos-pike-nova:master-20181203 starlingx/stx-centos-pike-nova:master-latest -> master-20181203 starlingx/stx-centos-pike-nova:master-stable -> master-20181201 starlingx/stx-centos-pike-nova:r2018.10.0 starlingx/stx-centos-pike-nova:r2018.10.1 starlingx/stx-centos-pike-nova:r2018.10-latest -> r2018.10.1