Centralize setting default branch for stable branching
One of the steps when we create a new stable branch is to branch devstack, then update the default branch for most repos to use the new stable branch for each repo. This requires making multiple updates throughout stackrc, and to further complicate things, there are some repo branch variables for branchless repos that should not be updated along with the others. This can be error prone if not fully aware of these exceptions. To simplify this process a little, this patch adds two common variables - one that can be set to the new stable branch name for all of the repos that should be branched, and one that can be used for all of the branchless repos to make it explicit that those values should be left alone. The cycle-trailing repos have until two weeks after final release to branch, so also adding another variable for those to make it easy to update them at a later time, separately from the other repos. Change-Id: I82aa19e739eeda3721bac1cb5153ad0bf2d1125a
This commit is contained in:
parent
e46d6ad2b7
commit
a492206700
154
stackrc
154
stackrc
@ -13,6 +13,18 @@ RC_DIR=$(cd $(dirname "${BASH_SOURCE:-$0}") && pwd)
|
|||||||
# Source required DevStack functions and globals
|
# Source required DevStack functions and globals
|
||||||
source $RC_DIR/functions
|
source $RC_DIR/functions
|
||||||
|
|
||||||
|
# Set the target branch. This is used so that stable branching
|
||||||
|
# does not need to update each repo below.
|
||||||
|
TARGET_BRANCH=master
|
||||||
|
|
||||||
|
# Cycle trailing projects need to branch later than the others.
|
||||||
|
TRAILING_TARGET_BRANCH=master
|
||||||
|
|
||||||
|
# And some repos do not create stable branches, so this is used
|
||||||
|
# to make it explicit and avoid accidentally setting to a stable
|
||||||
|
# branch.
|
||||||
|
BRANCHLESS_TARGET_BRANCH=master
|
||||||
|
|
||||||
# Destination path for installation
|
# Destination path for installation
|
||||||
DEST=/opt/stack
|
DEST=/opt/stack
|
||||||
|
|
||||||
@ -256,35 +268,35 @@ DEVSTACK_SERIES="queens"
|
|||||||
|
|
||||||
# block storage service
|
# block storage service
|
||||||
CINDER_REPO=${CINDER_REPO:-${GIT_BASE}/openstack/cinder.git}
|
CINDER_REPO=${CINDER_REPO:-${GIT_BASE}/openstack/cinder.git}
|
||||||
CINDER_BRANCH=${CINDER_BRANCH:-master}
|
CINDER_BRANCH=${CINDER_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# image catalog service
|
# image catalog service
|
||||||
GLANCE_REPO=${GLANCE_REPO:-${GIT_BASE}/openstack/glance.git}
|
GLANCE_REPO=${GLANCE_REPO:-${GIT_BASE}/openstack/glance.git}
|
||||||
GLANCE_BRANCH=${GLANCE_BRANCH:-master}
|
GLANCE_BRANCH=${GLANCE_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# django powered web control panel for openstack
|
# django powered web control panel for openstack
|
||||||
HORIZON_REPO=${HORIZON_REPO:-${GIT_BASE}/openstack/horizon.git}
|
HORIZON_REPO=${HORIZON_REPO:-${GIT_BASE}/openstack/horizon.git}
|
||||||
HORIZON_BRANCH=${HORIZON_BRANCH:-master}
|
HORIZON_BRANCH=${HORIZON_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# unified auth system (manages accounts/tokens)
|
# unified auth system (manages accounts/tokens)
|
||||||
KEYSTONE_REPO=${KEYSTONE_REPO:-${GIT_BASE}/openstack/keystone.git}
|
KEYSTONE_REPO=${KEYSTONE_REPO:-${GIT_BASE}/openstack/keystone.git}
|
||||||
KEYSTONE_BRANCH=${KEYSTONE_BRANCH:-master}
|
KEYSTONE_BRANCH=${KEYSTONE_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# neutron service
|
# neutron service
|
||||||
NEUTRON_REPO=${NEUTRON_REPO:-${GIT_BASE}/openstack/neutron.git}
|
NEUTRON_REPO=${NEUTRON_REPO:-${GIT_BASE}/openstack/neutron.git}
|
||||||
NEUTRON_BRANCH=${NEUTRON_BRANCH:-master}
|
NEUTRON_BRANCH=${NEUTRON_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# neutron fwaas service
|
# neutron fwaas service
|
||||||
NEUTRON_FWAAS_REPO=${NEUTRON_FWAAS_REPO:-${GIT_BASE}/openstack/neutron-fwaas.git}
|
NEUTRON_FWAAS_REPO=${NEUTRON_FWAAS_REPO:-${GIT_BASE}/openstack/neutron-fwaas.git}
|
||||||
NEUTRON_FWAAS_BRANCH=${NEUTRON_FWAAS_BRANCH:-master}
|
NEUTRON_FWAAS_BRANCH=${NEUTRON_FWAAS_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# compute service
|
# compute service
|
||||||
NOVA_REPO=${NOVA_REPO:-${GIT_BASE}/openstack/nova.git}
|
NOVA_REPO=${NOVA_REPO:-${GIT_BASE}/openstack/nova.git}
|
||||||
NOVA_BRANCH=${NOVA_BRANCH:-master}
|
NOVA_BRANCH=${NOVA_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# object storage service
|
# object storage service
|
||||||
SWIFT_REPO=${SWIFT_REPO:-${GIT_BASE}/openstack/swift.git}
|
SWIFT_REPO=${SWIFT_REPO:-${GIT_BASE}/openstack/swift.git}
|
||||||
SWIFT_BRANCH=${SWIFT_BRANCH:-master}
|
SWIFT_BRANCH=${SWIFT_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
##############
|
##############
|
||||||
#
|
#
|
||||||
@ -294,11 +306,11 @@ SWIFT_BRANCH=${SWIFT_BRANCH:-master}
|
|||||||
|
|
||||||
# consolidated openstack requirements
|
# consolidated openstack requirements
|
||||||
REQUIREMENTS_REPO=${REQUIREMENTS_REPO:-${GIT_BASE}/openstack/requirements.git}
|
REQUIREMENTS_REPO=${REQUIREMENTS_REPO:-${GIT_BASE}/openstack/requirements.git}
|
||||||
REQUIREMENTS_BRANCH=${REQUIREMENTS_BRANCH:-master}
|
REQUIREMENTS_BRANCH=${REQUIREMENTS_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# Tempest test suite
|
# Tempest test suite
|
||||||
TEMPEST_REPO=${TEMPEST_REPO:-${GIT_BASE}/openstack/tempest.git}
|
TEMPEST_REPO=${TEMPEST_REPO:-${GIT_BASE}/openstack/tempest.git}
|
||||||
TEMPEST_BRANCH=${TEMPEST_BRANCH:-master}
|
TEMPEST_BRANCH=${TEMPEST_BRANCH:-$BRANCHLESS_TARGET_BRANCH}
|
||||||
|
|
||||||
|
|
||||||
##############
|
##############
|
||||||
@ -310,56 +322,56 @@ TEMPEST_BRANCH=${TEMPEST_BRANCH:-master}
|
|||||||
|
|
||||||
# volume client
|
# volume client
|
||||||
GITREPO["python-cinderclient"]=${CINDERCLIENT_REPO:-${GIT_BASE}/openstack/python-cinderclient.git}
|
GITREPO["python-cinderclient"]=${CINDERCLIENT_REPO:-${GIT_BASE}/openstack/python-cinderclient.git}
|
||||||
GITBRANCH["python-cinderclient"]=${CINDERCLIENT_BRANCH:-master}
|
GITBRANCH["python-cinderclient"]=${CINDERCLIENT_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# os-brick client for local volume attachement
|
# os-brick client for local volume attachement
|
||||||
GITREPO["python-brick-cinderclient-ext"]=${BRICK_CINDERCLIENT_REPO:-${GIT_BASE}/openstack/python-brick-cinderclient-ext.git}
|
GITREPO["python-brick-cinderclient-ext"]=${BRICK_CINDERCLIENT_REPO:-${GIT_BASE}/openstack/python-brick-cinderclient-ext.git}
|
||||||
GITBRANCH["python-brick-cinderclient-ext"]=${BRICK_CINDERCLIENT_BRANCH:-master}
|
GITBRANCH["python-brick-cinderclient-ext"]=${BRICK_CINDERCLIENT_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# python barbican client library
|
# python barbican client library
|
||||||
GITREPO["python-barbicanclient"]=${BARBICANCLIENT_REPO:-${GIT_BASE}/openstack/python-barbicanclient.git}
|
GITREPO["python-barbicanclient"]=${BARBICANCLIENT_REPO:-${GIT_BASE}/openstack/python-barbicanclient.git}
|
||||||
GITBRANCH["python-barbicanclient"]=${BARBICANCLIENT_BRANCH:-master}
|
GITBRANCH["python-barbicanclient"]=${BARBICANCLIENT_BRANCH:-$TARGET_BRANCH}
|
||||||
GITDIR["python-barbicanclient"]=$DEST/python-barbicanclient
|
GITDIR["python-barbicanclient"]=$DEST/python-barbicanclient
|
||||||
|
|
||||||
# python glance client library
|
# python glance client library
|
||||||
GITREPO["python-glanceclient"]=${GLANCECLIENT_REPO:-${GIT_BASE}/openstack/python-glanceclient.git}
|
GITREPO["python-glanceclient"]=${GLANCECLIENT_REPO:-${GIT_BASE}/openstack/python-glanceclient.git}
|
||||||
GITBRANCH["python-glanceclient"]=${GLANCECLIENT_BRANCH:-master}
|
GITBRANCH["python-glanceclient"]=${GLANCECLIENT_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# ironic client
|
# ironic client
|
||||||
GITREPO["python-ironicclient"]=${IRONICCLIENT_REPO:-${GIT_BASE}/openstack/python-ironicclient.git}
|
GITREPO["python-ironicclient"]=${IRONICCLIENT_REPO:-${GIT_BASE}/openstack/python-ironicclient.git}
|
||||||
GITBRANCH["python-ironicclient"]=${IRONICCLIENT_BRANCH:-master}
|
GITBRANCH["python-ironicclient"]=${IRONICCLIENT_BRANCH:-$TARGET_BRANCH}
|
||||||
# ironic plugin is out of tree, but nova uses it. set GITDIR here.
|
# ironic plugin is out of tree, but nova uses it. set GITDIR here.
|
||||||
GITDIR["python-ironicclient"]=$DEST/python-ironicclient
|
GITDIR["python-ironicclient"]=$DEST/python-ironicclient
|
||||||
|
|
||||||
# the base authentication plugins that clients use to authenticate
|
# the base authentication plugins that clients use to authenticate
|
||||||
GITREPO["keystoneauth"]=${KEYSTONEAUTH_REPO:-${GIT_BASE}/openstack/keystoneauth.git}
|
GITREPO["keystoneauth"]=${KEYSTONEAUTH_REPO:-${GIT_BASE}/openstack/keystoneauth.git}
|
||||||
GITBRANCH["keystoneauth"]=${KEYSTONEAUTH_BRANCH:-master}
|
GITBRANCH["keystoneauth"]=${KEYSTONEAUTH_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# python keystone client library to nova that horizon uses
|
# python keystone client library to nova that horizon uses
|
||||||
GITREPO["python-keystoneclient"]=${KEYSTONECLIENT_REPO:-${GIT_BASE}/openstack/python-keystoneclient.git}
|
GITREPO["python-keystoneclient"]=${KEYSTONECLIENT_REPO:-${GIT_BASE}/openstack/python-keystoneclient.git}
|
||||||
GITBRANCH["python-keystoneclient"]=${KEYSTONECLIENT_BRANCH:-master}
|
GITBRANCH["python-keystoneclient"]=${KEYSTONECLIENT_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# neutron client
|
# neutron client
|
||||||
GITREPO["python-neutronclient"]=${NEUTRONCLIENT_REPO:-${GIT_BASE}/openstack/python-neutronclient.git}
|
GITREPO["python-neutronclient"]=${NEUTRONCLIENT_REPO:-${GIT_BASE}/openstack/python-neutronclient.git}
|
||||||
GITBRANCH["python-neutronclient"]=${NEUTRONCLIENT_BRANCH:-master}
|
GITBRANCH["python-neutronclient"]=${NEUTRONCLIENT_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# python client library to nova that horizon (and others) use
|
# python client library to nova that horizon (and others) use
|
||||||
GITREPO["python-novaclient"]=${NOVACLIENT_REPO:-${GIT_BASE}/openstack/python-novaclient.git}
|
GITREPO["python-novaclient"]=${NOVACLIENT_REPO:-${GIT_BASE}/openstack/python-novaclient.git}
|
||||||
GITBRANCH["python-novaclient"]=${NOVACLIENT_BRANCH:-master}
|
GITBRANCH["python-novaclient"]=${NOVACLIENT_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# python swift client library
|
# python swift client library
|
||||||
GITREPO["python-swiftclient"]=${SWIFTCLIENT_REPO:-${GIT_BASE}/openstack/python-swiftclient.git}
|
GITREPO["python-swiftclient"]=${SWIFTCLIENT_REPO:-${GIT_BASE}/openstack/python-swiftclient.git}
|
||||||
GITBRANCH["python-swiftclient"]=${SWIFTCLIENT_BRANCH:-master}
|
GITBRANCH["python-swiftclient"]=${SWIFTCLIENT_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# consolidated openstack python client
|
# consolidated openstack python client
|
||||||
GITREPO["python-openstackclient"]=${OPENSTACKCLIENT_REPO:-${GIT_BASE}/openstack/python-openstackclient.git}
|
GITREPO["python-openstackclient"]=${OPENSTACKCLIENT_REPO:-${GIT_BASE}/openstack/python-openstackclient.git}
|
||||||
GITBRANCH["python-openstackclient"]=${OPENSTACKCLIENT_BRANCH:-master}
|
GITBRANCH["python-openstackclient"]=${OPENSTACKCLIENT_BRANCH:-$TARGET_BRANCH}
|
||||||
# this doesn't exist in a lib file, so set it here
|
# this doesn't exist in a lib file, so set it here
|
||||||
GITDIR["python-openstackclient"]=$DEST/python-openstackclient
|
GITDIR["python-openstackclient"]=$DEST/python-openstackclient
|
||||||
|
|
||||||
# placement-api CLI
|
# placement-api CLI
|
||||||
GITREPO["osc-placement"]=${OSC_PLACEMENT_REPO:-${GIT_BASE}/openstack/osc-placement.git}
|
GITREPO["osc-placement"]=${OSC_PLACEMENT_REPO:-${GIT_BASE}/openstack/osc-placement.git}
|
||||||
GITBRANCH["osc-placement"]=${OSC_PLACEMENT_BRANCH:-master}
|
GITBRANCH["osc-placement"]=${OSC_PLACEMENT_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
|
|
||||||
###################
|
###################
|
||||||
@ -371,119 +383,119 @@ GITBRANCH["osc-placement"]=${OSC_PLACEMENT_BRANCH:-master}
|
|||||||
|
|
||||||
# castellan key manager interface
|
# castellan key manager interface
|
||||||
GITREPO["castellan"]=${CASTELLAN_REPO:-${GIT_BASE}/openstack/castellan.git}
|
GITREPO["castellan"]=${CASTELLAN_REPO:-${GIT_BASE}/openstack/castellan.git}
|
||||||
GITBRANCH["castellan"]=${CASTELLAN_BRANCH:-master}
|
GITBRANCH["castellan"]=${CASTELLAN_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# cliff command line framework
|
# cliff command line framework
|
||||||
GITREPO["cliff"]=${CLIFF_REPO:-${GIT_BASE}/openstack/cliff.git}
|
GITREPO["cliff"]=${CLIFF_REPO:-${GIT_BASE}/openstack/cliff.git}
|
||||||
GITBRANCH["cliff"]=${CLIFF_BRANCH:-master}
|
GITBRANCH["cliff"]=${CLIFF_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# async framework/helpers
|
# async framework/helpers
|
||||||
GITREPO["futurist"]=${FUTURIST_REPO:-${GIT_BASE}/openstack/futurist.git}
|
GITREPO["futurist"]=${FUTURIST_REPO:-${GIT_BASE}/openstack/futurist.git}
|
||||||
GITBRANCH["futurist"]=${FUTURIST_BRANCH:-master}
|
GITBRANCH["futurist"]=${FUTURIST_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# debtcollector deprecation framework/helpers
|
# debtcollector deprecation framework/helpers
|
||||||
GITREPO["debtcollector"]=${DEBTCOLLECTOR_REPO:-${GIT_BASE}/openstack/debtcollector.git}
|
GITREPO["debtcollector"]=${DEBTCOLLECTOR_REPO:-${GIT_BASE}/openstack/debtcollector.git}
|
||||||
GITBRANCH["debtcollector"]=${DEBTCOLLECTOR_BRANCH:-master}
|
GITBRANCH["debtcollector"]=${DEBTCOLLECTOR_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# helpful state machines
|
# helpful state machines
|
||||||
GITREPO["automaton"]=${AUTOMATON_REPO:-${GIT_BASE}/openstack/automaton.git}
|
GITREPO["automaton"]=${AUTOMATON_REPO:-${GIT_BASE}/openstack/automaton.git}
|
||||||
GITBRANCH["automaton"]=${AUTOMATON_BRANCH:-master}
|
GITBRANCH["automaton"]=${AUTOMATON_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.cache
|
# oslo.cache
|
||||||
GITREPO["oslo.cache"]=${OSLOCACHE_REPO:-${GIT_BASE}/openstack/oslo.cache.git}
|
GITREPO["oslo.cache"]=${OSLOCACHE_REPO:-${GIT_BASE}/openstack/oslo.cache.git}
|
||||||
GITBRANCH["oslo.cache"]=${OSLOCACHE_BRANCH:-master}
|
GITBRANCH["oslo.cache"]=${OSLOCACHE_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.concurrency
|
# oslo.concurrency
|
||||||
GITREPO["oslo.concurrency"]=${OSLOCON_REPO:-${GIT_BASE}/openstack/oslo.concurrency.git}
|
GITREPO["oslo.concurrency"]=${OSLOCON_REPO:-${GIT_BASE}/openstack/oslo.concurrency.git}
|
||||||
GITBRANCH["oslo.concurrency"]=${OSLOCON_BRANCH:-master}
|
GITBRANCH["oslo.concurrency"]=${OSLOCON_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.config
|
# oslo.config
|
||||||
GITREPO["oslo.config"]=${OSLOCFG_REPO:-${GIT_BASE}/openstack/oslo.config.git}
|
GITREPO["oslo.config"]=${OSLOCFG_REPO:-${GIT_BASE}/openstack/oslo.config.git}
|
||||||
GITBRANCH["oslo.config"]=${OSLOCFG_BRANCH:-master}
|
GITBRANCH["oslo.config"]=${OSLOCFG_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.context
|
# oslo.context
|
||||||
GITREPO["oslo.context"]=${OSLOCTX_REPO:-${GIT_BASE}/openstack/oslo.context.git}
|
GITREPO["oslo.context"]=${OSLOCTX_REPO:-${GIT_BASE}/openstack/oslo.context.git}
|
||||||
GITBRANCH["oslo.context"]=${OSLOCTX_BRANCH:-master}
|
GITBRANCH["oslo.context"]=${OSLOCTX_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.db
|
# oslo.db
|
||||||
GITREPO["oslo.db"]=${OSLODB_REPO:-${GIT_BASE}/openstack/oslo.db.git}
|
GITREPO["oslo.db"]=${OSLODB_REPO:-${GIT_BASE}/openstack/oslo.db.git}
|
||||||
GITBRANCH["oslo.db"]=${OSLODB_BRANCH:-master}
|
GITBRANCH["oslo.db"]=${OSLODB_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.i18n
|
# oslo.i18n
|
||||||
GITREPO["oslo.i18n"]=${OSLOI18N_REPO:-${GIT_BASE}/openstack/oslo.i18n.git}
|
GITREPO["oslo.i18n"]=${OSLOI18N_REPO:-${GIT_BASE}/openstack/oslo.i18n.git}
|
||||||
GITBRANCH["oslo.i18n"]=${OSLOI18N_BRANCH:-master}
|
GITBRANCH["oslo.i18n"]=${OSLOI18N_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.log
|
# oslo.log
|
||||||
GITREPO["oslo.log"]=${OSLOLOG_REPO:-${GIT_BASE}/openstack/oslo.log.git}
|
GITREPO["oslo.log"]=${OSLOLOG_REPO:-${GIT_BASE}/openstack/oslo.log.git}
|
||||||
GITBRANCH["oslo.log"]=${OSLOLOG_BRANCH:-master}
|
GITBRANCH["oslo.log"]=${OSLOLOG_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.messaging
|
# oslo.messaging
|
||||||
GITREPO["oslo.messaging"]=${OSLOMSG_REPO:-${GIT_BASE}/openstack/oslo.messaging.git}
|
GITREPO["oslo.messaging"]=${OSLOMSG_REPO:-${GIT_BASE}/openstack/oslo.messaging.git}
|
||||||
GITBRANCH["oslo.messaging"]=${OSLOMSG_BRANCH:-master}
|
GITBRANCH["oslo.messaging"]=${OSLOMSG_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.middleware
|
# oslo.middleware
|
||||||
GITREPO["oslo.middleware"]=${OSLOMID_REPO:-${GIT_BASE}/openstack/oslo.middleware.git}
|
GITREPO["oslo.middleware"]=${OSLOMID_REPO:-${GIT_BASE}/openstack/oslo.middleware.git}
|
||||||
GITBRANCH["oslo.middleware"]=${OSLOMID_BRANCH:-master}
|
GITBRANCH["oslo.middleware"]=${OSLOMID_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.policy
|
# oslo.policy
|
||||||
GITREPO["oslo.policy"]=${OSLOPOLICY_REPO:-${GIT_BASE}/openstack/oslo.policy.git}
|
GITREPO["oslo.policy"]=${OSLOPOLICY_REPO:-${GIT_BASE}/openstack/oslo.policy.git}
|
||||||
GITBRANCH["oslo.policy"]=${OSLOPOLICY_BRANCH:-master}
|
GITBRANCH["oslo.policy"]=${OSLOPOLICY_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.privsep
|
# oslo.privsep
|
||||||
GITREPO["oslo.privsep"]=${OSLOPRIVSEP_REPO:-${GIT_BASE}/openstack/oslo.privsep.git}
|
GITREPO["oslo.privsep"]=${OSLOPRIVSEP_REPO:-${GIT_BASE}/openstack/oslo.privsep.git}
|
||||||
GITBRANCH["oslo.privsep"]=${OSLOPRIVSEP_BRANCH:-master}
|
GITBRANCH["oslo.privsep"]=${OSLOPRIVSEP_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.reports
|
# oslo.reports
|
||||||
GITREPO["oslo.reports"]=${OSLOREPORTS_REPO:-${GIT_BASE}/openstack/oslo.reports.git}
|
GITREPO["oslo.reports"]=${OSLOREPORTS_REPO:-${GIT_BASE}/openstack/oslo.reports.git}
|
||||||
GITBRANCH["oslo.reports"]=${OSLOREPORTS_BRANCH:-master}
|
GITBRANCH["oslo.reports"]=${OSLOREPORTS_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.rootwrap
|
# oslo.rootwrap
|
||||||
GITREPO["oslo.rootwrap"]=${OSLORWRAP_REPO:-${GIT_BASE}/openstack/oslo.rootwrap.git}
|
GITREPO["oslo.rootwrap"]=${OSLORWRAP_REPO:-${GIT_BASE}/openstack/oslo.rootwrap.git}
|
||||||
GITBRANCH["oslo.rootwrap"]=${OSLORWRAP_BRANCH:-master}
|
GITBRANCH["oslo.rootwrap"]=${OSLORWRAP_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.serialization
|
# oslo.serialization
|
||||||
GITREPO["oslo.serialization"]=${OSLOSERIALIZATION_REPO:-${GIT_BASE}/openstack/oslo.serialization.git}
|
GITREPO["oslo.serialization"]=${OSLOSERIALIZATION_REPO:-${GIT_BASE}/openstack/oslo.serialization.git}
|
||||||
GITBRANCH["oslo.serialization"]=${OSLOSERIALIZATION_BRANCH:-master}
|
GITBRANCH["oslo.serialization"]=${OSLOSERIALIZATION_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.service
|
# oslo.service
|
||||||
GITREPO["oslo.service"]=${OSLOSERVICE_REPO:-${GIT_BASE}/openstack/oslo.service.git}
|
GITREPO["oslo.service"]=${OSLOSERVICE_REPO:-${GIT_BASE}/openstack/oslo.service.git}
|
||||||
GITBRANCH["oslo.service"]=${OSLOSERVICE_BRANCH:-master}
|
GITBRANCH["oslo.service"]=${OSLOSERVICE_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.utils
|
# oslo.utils
|
||||||
GITREPO["oslo.utils"]=${OSLOUTILS_REPO:-${GIT_BASE}/openstack/oslo.utils.git}
|
GITREPO["oslo.utils"]=${OSLOUTILS_REPO:-${GIT_BASE}/openstack/oslo.utils.git}
|
||||||
GITBRANCH["oslo.utils"]=${OSLOUTILS_BRANCH:-master}
|
GITBRANCH["oslo.utils"]=${OSLOUTILS_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.versionedobjects
|
# oslo.versionedobjects
|
||||||
GITREPO["oslo.versionedobjects"]=${OSLOVERSIONEDOBJECTS_REPO:-${GIT_BASE}/openstack/oslo.versionedobjects.git}
|
GITREPO["oslo.versionedobjects"]=${OSLOVERSIONEDOBJECTS_REPO:-${GIT_BASE}/openstack/oslo.versionedobjects.git}
|
||||||
GITBRANCH["oslo.versionedobjects"]=${OSLOVERSIONEDOBJECTS_BRANCH:-master}
|
GITBRANCH["oslo.versionedobjects"]=${OSLOVERSIONEDOBJECTS_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# oslo.vmware
|
# oslo.vmware
|
||||||
GITREPO["oslo.vmware"]=${OSLOVMWARE_REPO:-${GIT_BASE}/openstack/oslo.vmware.git}
|
GITREPO["oslo.vmware"]=${OSLOVMWARE_REPO:-${GIT_BASE}/openstack/oslo.vmware.git}
|
||||||
GITBRANCH["oslo.vmware"]=${OSLOVMWARE_BRANCH:-master}
|
GITBRANCH["oslo.vmware"]=${OSLOVMWARE_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# osprofiler
|
# osprofiler
|
||||||
GITREPO["osprofiler"]=${OSPROFILER_REPO:-${GIT_BASE}/openstack/osprofiler.git}
|
GITREPO["osprofiler"]=${OSPROFILER_REPO:-${GIT_BASE}/openstack/osprofiler.git}
|
||||||
GITBRANCH["osprofiler"]=${OSPROFILER_BRANCH:-master}
|
GITBRANCH["osprofiler"]=${OSPROFILER_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# pycadf auditing library
|
# pycadf auditing library
|
||||||
GITREPO["pycadf"]=${PYCADF_REPO:-${GIT_BASE}/openstack/pycadf.git}
|
GITREPO["pycadf"]=${PYCADF_REPO:-${GIT_BASE}/openstack/pycadf.git}
|
||||||
GITBRANCH["pycadf"]=${PYCADF_BRANCH:-master}
|
GITBRANCH["pycadf"]=${PYCADF_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# stevedore plugin manager
|
# stevedore plugin manager
|
||||||
GITREPO["stevedore"]=${STEVEDORE_REPO:-${GIT_BASE}/openstack/stevedore.git}
|
GITREPO["stevedore"]=${STEVEDORE_REPO:-${GIT_BASE}/openstack/stevedore.git}
|
||||||
GITBRANCH["stevedore"]=${STEVEDORE_BRANCH:-master}
|
GITBRANCH["stevedore"]=${STEVEDORE_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# taskflow plugin manager
|
# taskflow plugin manager
|
||||||
GITREPO["taskflow"]=${TASKFLOW_REPO:-${GIT_BASE}/openstack/taskflow.git}
|
GITREPO["taskflow"]=${TASKFLOW_REPO:-${GIT_BASE}/openstack/taskflow.git}
|
||||||
GITBRANCH["taskflow"]=${TASKFLOW_BRANCH:-master}
|
GITBRANCH["taskflow"]=${TASKFLOW_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# tooz plugin manager
|
# tooz plugin manager
|
||||||
GITREPO["tooz"]=${TOOZ_REPO:-${GIT_BASE}/openstack/tooz.git}
|
GITREPO["tooz"]=${TOOZ_REPO:-${GIT_BASE}/openstack/tooz.git}
|
||||||
GITBRANCH["tooz"]=${TOOZ_BRANCH:-master}
|
GITBRANCH["tooz"]=${TOOZ_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# pbr drives the setuptools configs
|
# pbr drives the setuptools configs
|
||||||
GITREPO["pbr"]=${PBR_REPO:-${GIT_BASE}/openstack-dev/pbr.git}
|
GITREPO["pbr"]=${PBR_REPO:-${GIT_BASE}/openstack-dev/pbr.git}
|
||||||
GITBRANCH["pbr"]=${PBR_BRANCH:-master}
|
GITBRANCH["pbr"]=${PBR_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
|
|
||||||
##################
|
##################
|
||||||
@ -494,65 +506,65 @@ GITBRANCH["pbr"]=${PBR_BRANCH:-master}
|
|||||||
|
|
||||||
# cursive library
|
# cursive library
|
||||||
GITREPO["cursive"]=${CURSIVE_REPO:-${GIT_BASE}/openstack/cursive.git}
|
GITREPO["cursive"]=${CURSIVE_REPO:-${GIT_BASE}/openstack/cursive.git}
|
||||||
GITBRANCH["cursive"]=${CURSIVE_BRANCH:-master}
|
GITBRANCH["cursive"]=${CURSIVE_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# glance store library
|
# glance store library
|
||||||
GITREPO["glance_store"]=${GLANCE_STORE_REPO:-${GIT_BASE}/openstack/glance_store.git}
|
GITREPO["glance_store"]=${GLANCE_STORE_REPO:-${GIT_BASE}/openstack/glance_store.git}
|
||||||
GITBRANCH["glance_store"]=${GLANCE_STORE_BRANCH:-master}
|
GITBRANCH["glance_store"]=${GLANCE_STORE_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# keystone middleware
|
# keystone middleware
|
||||||
GITREPO["keystonemiddleware"]=${KEYSTONEMIDDLEWARE_REPO:-${GIT_BASE}/openstack/keystonemiddleware.git}
|
GITREPO["keystonemiddleware"]=${KEYSTONEMIDDLEWARE_REPO:-${GIT_BASE}/openstack/keystonemiddleware.git}
|
||||||
GITBRANCH["keystonemiddleware"]=${KEYSTONEMIDDLEWARE_BRANCH:-master}
|
GITBRANCH["keystonemiddleware"]=${KEYSTONEMIDDLEWARE_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# s3 support for swift
|
# s3 support for swift
|
||||||
SWIFT3_REPO=${SWIFT3_REPO:-${GIT_BASE}/openstack/swift3.git}
|
SWIFT3_REPO=${SWIFT3_REPO:-${GIT_BASE}/openstack/swift3.git}
|
||||||
SWIFT3_BRANCH=${SWIFT3_BRANCH:-master}
|
SWIFT3_BRANCH=${SWIFT3_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# ceilometer middleware
|
# ceilometer middleware
|
||||||
GITREPO["ceilometermiddleware"]=${CEILOMETERMIDDLEWARE_REPO:-${GIT_BASE}/openstack/ceilometermiddleware.git}
|
GITREPO["ceilometermiddleware"]=${CEILOMETERMIDDLEWARE_REPO:-${GIT_BASE}/openstack/ceilometermiddleware.git}
|
||||||
GITBRANCH["ceilometermiddleware"]=${CEILOMETERMIDDLEWARE_BRANCH:-master}
|
GITBRANCH["ceilometermiddleware"]=${CEILOMETERMIDDLEWARE_BRANCH:-$TARGET_BRANCH}
|
||||||
GITDIR["ceilometermiddleware"]=$DEST/ceilometermiddleware
|
GITDIR["ceilometermiddleware"]=$DEST/ceilometermiddleware
|
||||||
|
|
||||||
# os-brick library to manage local volume attaches
|
# os-brick library to manage local volume attaches
|
||||||
GITREPO["os-brick"]=${OS_BRICK_REPO:-${GIT_BASE}/openstack/os-brick.git}
|
GITREPO["os-brick"]=${OS_BRICK_REPO:-${GIT_BASE}/openstack/os-brick.git}
|
||||||
GITBRANCH["os-brick"]=${OS_BRICK_BRANCH:-master}
|
GITBRANCH["os-brick"]=${OS_BRICK_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# os-client-config to manage clouds.yaml and friends
|
# os-client-config to manage clouds.yaml and friends
|
||||||
GITREPO["os-client-config"]=${OS_CLIENT_CONFIG_REPO:-${GIT_BASE}/openstack/os-client-config.git}
|
GITREPO["os-client-config"]=${OS_CLIENT_CONFIG_REPO:-${GIT_BASE}/openstack/os-client-config.git}
|
||||||
GITBRANCH["os-client-config"]=${OS_CLIENT_CONFIG_BRANCH:-master}
|
GITBRANCH["os-client-config"]=${OS_CLIENT_CONFIG_BRANCH:-$TARGET_BRANCH}
|
||||||
GITDIR["os-client-config"]=$DEST/os-client-config
|
GITDIR["os-client-config"]=$DEST/os-client-config
|
||||||
|
|
||||||
# os-vif library to communicate between Neutron to Nova
|
# os-vif library to communicate between Neutron to Nova
|
||||||
GITREPO["os-vif"]=${OS_VIF_REPO:-${GIT_BASE}/openstack/os-vif.git}
|
GITREPO["os-vif"]=${OS_VIF_REPO:-${GIT_BASE}/openstack/os-vif.git}
|
||||||
GITBRANCH["os-vif"]=${OS_VIF_BRANCH:-master}
|
GITBRANCH["os-vif"]=${OS_VIF_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# osc-lib OpenStackClient common lib
|
# osc-lib OpenStackClient common lib
|
||||||
GITREPO["osc-lib"]=${OSC_LIB_REPO:-${GIT_BASE}/openstack/osc-lib.git}
|
GITREPO["osc-lib"]=${OSC_LIB_REPO:-${GIT_BASE}/openstack/osc-lib.git}
|
||||||
GITBRANCH["osc-lib"]=${OSC_LIB_BRANCH:-master}
|
GITBRANCH["osc-lib"]=${OSC_LIB_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# python-openstacksdk OpenStack Python SDK
|
# python-openstacksdk OpenStack Python SDK
|
||||||
GITREPO["python-openstacksdk"]=${OPENSTACKSDK_REPO:-${GIT_BASE}/openstack/python-openstacksdk.git}
|
GITREPO["python-openstacksdk"]=${OPENSTACKSDK_REPO:-${GIT_BASE}/openstack/python-openstacksdk.git}
|
||||||
GITBRANCH["python-openstacksdk"]=${OPENSTACKSDK_BRANCH:-master}
|
GITBRANCH["python-openstacksdk"]=${OPENSTACKSDK_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# ironic common lib
|
# ironic common lib
|
||||||
GITREPO["ironic-lib"]=${IRONIC_LIB_REPO:-${GIT_BASE}/openstack/ironic-lib.git}
|
GITREPO["ironic-lib"]=${IRONIC_LIB_REPO:-${GIT_BASE}/openstack/ironic-lib.git}
|
||||||
GITBRANCH["ironic-lib"]=${IRONIC_LIB_BRANCH:-master}
|
GITBRANCH["ironic-lib"]=${IRONIC_LIB_BRANCH:-$TARGET_BRANCH}
|
||||||
# this doesn't exist in a lib file, so set it here
|
# this doesn't exist in a lib file, so set it here
|
||||||
GITDIR["ironic-lib"]=$DEST/ironic-lib
|
GITDIR["ironic-lib"]=$DEST/ironic-lib
|
||||||
|
|
||||||
# diskimage-builder tool
|
# diskimage-builder tool
|
||||||
GITREPO["diskimage-builder"]=${DIB_REPO:-${GIT_BASE}/openstack/diskimage-builder.git}
|
GITREPO["diskimage-builder"]=${DIB_REPO:-${GIT_BASE}/openstack/diskimage-builder.git}
|
||||||
GITBRANCH["diskimage-builder"]=${DIB_BRANCH:-master}
|
GITBRANCH["diskimage-builder"]=${DIB_BRANCH:-$TARGET_BRANCH}
|
||||||
GITDIR["diskimage-builder"]=$DEST/diskimage-builder
|
GITDIR["diskimage-builder"]=$DEST/diskimage-builder
|
||||||
|
|
||||||
# neutron-lib library containing neutron stable non-REST interfaces
|
# neutron-lib library containing neutron stable non-REST interfaces
|
||||||
GITREPO["neutron-lib"]=${NEUTRON_LIB_REPO:-${GIT_BASE}/openstack/neutron-lib.git}
|
GITREPO["neutron-lib"]=${NEUTRON_LIB_REPO:-${GIT_BASE}/openstack/neutron-lib.git}
|
||||||
GITBRANCH["neutron-lib"]=${NEUTRON_LIB_BRANCH:-master}
|
GITBRANCH["neutron-lib"]=${NEUTRON_LIB_BRANCH:-$TARGET_BRANCH}
|
||||||
GITDIR["neutron-lib"]=$DEST/neutron-lib
|
GITDIR["neutron-lib"]=$DEST/neutron-lib
|
||||||
|
|
||||||
# os-traits library for resource provider traits in the placement service
|
# os-traits library for resource provider traits in the placement service
|
||||||
GITREPO["os-traits"]=${OS_TRAITS_REPO:-${GIT_BASE}/openstack/os-traits.git}
|
GITREPO["os-traits"]=${OS_TRAITS_REPO:-${GIT_BASE}/openstack/os-traits.git}
|
||||||
GITBRANCH["os-traits"]=${OS_TRAITS_BRANCH:-master}
|
GITBRANCH["os-traits"]=${OS_TRAITS_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
##################
|
##################
|
||||||
#
|
#
|
||||||
@ -562,19 +574,19 @@ GITBRANCH["os-traits"]=${OS_TRAITS_BRANCH:-master}
|
|||||||
|
|
||||||
# run-parts script required by os-refresh-config
|
# run-parts script required by os-refresh-config
|
||||||
DIB_UTILS_REPO=${DIB_UTILS_REPO:-${GIT_BASE}/openstack/dib-utils.git}
|
DIB_UTILS_REPO=${DIB_UTILS_REPO:-${GIT_BASE}/openstack/dib-utils.git}
|
||||||
DIB_UTILS_BRANCH=${DIB_UTILS_BRANCH:-master}
|
DIB_UTILS_BRANCH=${DIB_UTILS_BRANCH:-$BRANCHLESS_TARGET_BRANCH}
|
||||||
|
|
||||||
# os-apply-config configuration template tool
|
# os-apply-config configuration template tool
|
||||||
OAC_REPO=${OAC_REPO:-${GIT_BASE}/openstack/os-apply-config.git}
|
OAC_REPO=${OAC_REPO:-${GIT_BASE}/openstack/os-apply-config.git}
|
||||||
OAC_BRANCH=${OAC_BRANCH:-master}
|
OAC_BRANCH=${OAC_BRANCH:-$TRAILING_TARGET_BRANCH}
|
||||||
|
|
||||||
# os-collect-config configuration agent
|
# os-collect-config configuration agent
|
||||||
OCC_REPO=${OCC_REPO:-${GIT_BASE}/openstack/os-collect-config.git}
|
OCC_REPO=${OCC_REPO:-${GIT_BASE}/openstack/os-collect-config.git}
|
||||||
OCC_BRANCH=${OCC_BRANCH:-master}
|
OCC_BRANCH=${OCC_BRANCH:-$TRAILING_TARGET_BRANCH}
|
||||||
|
|
||||||
# os-refresh-config configuration run-parts tool
|
# os-refresh-config configuration run-parts tool
|
||||||
ORC_REPO=${ORC_REPO:-${GIT_BASE}/openstack/os-refresh-config.git}
|
ORC_REPO=${ORC_REPO:-${GIT_BASE}/openstack/os-refresh-config.git}
|
||||||
ORC_BRANCH=${ORC_BRANCH:-master}
|
ORC_BRANCH=${ORC_BRANCH:-$TRAILING_TARGET_BRANCH}
|
||||||
|
|
||||||
|
|
||||||
#################
|
#################
|
||||||
@ -587,7 +599,7 @@ ORC_BRANCH=${ORC_BRANCH:-master}
|
|||||||
|
|
||||||
# ironic python agent
|
# ironic python agent
|
||||||
IRONIC_PYTHON_AGENT_REPO=${IRONIC_PYTHON_AGENT_REPO:-${GIT_BASE}/openstack/ironic-python-agent.git}
|
IRONIC_PYTHON_AGENT_REPO=${IRONIC_PYTHON_AGENT_REPO:-${GIT_BASE}/openstack/ironic-python-agent.git}
|
||||||
IRONIC_PYTHON_AGENT_BRANCH=${IRONIC_PYTHON_AGENT_BRANCH:-master}
|
IRONIC_PYTHON_AGENT_BRANCH=${IRONIC_PYTHON_AGENT_BRANCH:-$TARGET_BRANCH}
|
||||||
|
|
||||||
# a websockets/html5 or flash powered VNC console for vm instances
|
# a websockets/html5 or flash powered VNC console for vm instances
|
||||||
NOVNC_REPO=${NOVNC_REPO:-https://github.com/novnc/noVNC.git}
|
NOVNC_REPO=${NOVNC_REPO:-https://github.com/novnc/noVNC.git}
|
||||||
@ -595,7 +607,7 @@ NOVNC_BRANCH=${NOVNC_BRANCH:-stable/v0.6}
|
|||||||
|
|
||||||
# a websockets/html5 or flash powered SPICE console for vm instances
|
# a websockets/html5 or flash powered SPICE console for vm instances
|
||||||
SPICE_REPO=${SPICE_REPO:-http://anongit.freedesktop.org/git/spice/spice-html5.git}
|
SPICE_REPO=${SPICE_REPO:-http://anongit.freedesktop.org/git/spice/spice-html5.git}
|
||||||
SPICE_BRANCH=${SPICE_BRANCH:-master}
|
SPICE_BRANCH=${SPICE_BRANCH:-$BRANCHLESS_TARGET_BRANCH}
|
||||||
|
|
||||||
# Global flag used to configure Tempest and potentially other services if
|
# Global flag used to configure Tempest and potentially other services if
|
||||||
# volume multiattach is supported. In Queens, only the libvirt compute driver
|
# volume multiattach is supported. In Queens, only the libvirt compute driver
|
||||||
|
@ -15,10 +15,10 @@
|
|||||||
|
|
||||||
echo "Ensuring we don't have crazy refs"
|
echo "Ensuring we don't have crazy refs"
|
||||||
|
|
||||||
REFS=`grep BRANCH stackrc | grep -v -- '-master' | grep -v 'NOVNC_BRANCH'`
|
REFS=`grep BRANCH stackrc | grep -v 'TARGET_BRANCH' | grep -v 'NOVNC_BRANCH'`
|
||||||
rc=$?
|
rc=$?
|
||||||
if [[ $rc -eq 0 ]]; then
|
if [[ $rc -eq 0 ]]; then
|
||||||
echo "Branch defaults must be master. Found:"
|
echo "Branch defaults must be one of the *TARGET_BRANCH values. Found:"
|
||||||
echo $REFS
|
echo $REFS
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
Loading…
x
Reference in New Issue
Block a user