17 Commits

Author SHA1 Message Date
Antony Messerli
aa26271ee5 Allow for Swift Leap Upgrade to be skipped
An operator might want to ensure Swift is available during
an upgrade and manually upgrade Swift on completion of the
maintenance.

The operator would need to set these vars before operation:

   export SKIP_SWIFT_UPGRADE=yes
   export CONTAINERS_TO_DESTROY=add_!swift_all_exclusion

This would prevent the swift containers from being torn
down during the upgrade and would skip all Swift upgrade
operations.

Change-Id: Ibf40499750751dd9f41e447b7b90bb77f592cc14
2018-08-15 10:58:48 -05:00
zhulingjie
4f734efd16 Remove the duplicated word
Change-Id: Ib213eb887df7d914271d3a60c6a9d8a37a830302
2018-06-12 12:24:10 -04:00
Antony Messerli
027ee66b28 Update Newton release to newton-eol in leap-upgrades
Bumps NEWTON_RELEASE to newton-eol tag

Change-Id: I38639f678ec54627f908abb88e0297ad53560ecd
2018-06-19 19:10:59 -05:00
Antony Messerli
f5e74f065f Remove BOOTSTRAP_ANSIBLE_FOLDER variable
Removes the BOOTSTRAP_ANSIBLE_FOLDER variable because
the assumption was made that Ansible would always be
bootstrapped from /opt/openstack-ansible and setting
this would cause a noop when Ansible was bootstrapped.

Change-Id: I284ad62b6f14cc334ae949946e839a1e8ec6a1d8
2018-01-22 17:42:15 -06:00
Antony Messerli
4538a7e083 Specify containers to destroy
Allows the operator to specify the containers to destroy
or exclude.

Change-Id: If1b72fd8bdf790184579130aa4b44221b339a41f
2017-11-13 19:04:42 -06:00
Kevin Carter
e7ea3b56c6 Add option to set FROM code and fix logic bug
The leap tooling was attempting to run `set_upgrade_vars` at point where
specific upgrade variables were already needed. Within this change that
function call is moved up a few lines so that it has the chance to set
the required values. Additionally the option to pre-define the variable
CODE_UPGRADE_FROM has been added giving the deployer the option to set
this variable before a leap upgrade is run.

Change-Id: I2c780eb46dd57e680fc8681824de2fe913824fd9
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-10-11 14:15:56 +00:00
Antony Messerli
e2592e4d06 Allow for Leapfrogs from other Releases
Leapfrogs currently only work with Juno/Kilo
releases as certain parts are hard coded.

This patch adds support for handling
multiple releases and attempts to remove some
duplicate code with loops.

Also adds a UPGRADES_TO_TODOLIST variable check on
migration.sh and upgrade.sh to ensure the list of
releases to be ugpraded to are set if the commands
are ran individually.

Change-Id: Ia56f073863533d4b6fa58b78b59b5086c7f9a331
2017-09-27 14:11:42 -05:00
Jean-Philippe Evrard
b77287b87f redeploy should be done in the proper folder
run_ansible wrapper should work in the latest checkout of OA,
which should be in a REDEPLOY folder instead of just
a static "/opt/openstack-ansible"

Change-Id: I4d20fd7480f2f38e55d3f081c0c0f11726458583
2017-08-30 13:59:30 +00:00
Jean-Philippe Evrard
a476a4037f Allow overrides of bootstrap ansible script
Some providers may have a different bootstrapping script,
and probably want to use their own instead of always
bootstrapping the OSA one for the leap.

We should be able to give a script as env var, and use
that script for installing an ansible that works for leapfrog.

Change-Id: I034d3dace52ae092e04d4573c6299b464153084d
2017-08-30 11:28:11 +00:00
Matthew Thode
1fd0f80b1b
Fix venv building for new tags
more headers were needed, also, revert the kilo release change.
eol-kilo has swift in upper-constraints, which causes problems for venv
building, it was removed from future releases for this exactly this
reason.

Change-Id: I1f8c8ea4681ab63dd67851235f405d1cbd478eae
2017-08-21 20:06:46 -05:00
Matthew Thode
aa04643ded
update tags the leap-upgrade use
The comment on the bug in setuptools was fixed a while ago upstream and
evrardjp also mentioned that comment could be removed.  Branches other
than newton have an EOL release, so change to use those.

Change-Id: I80cf1fc929e86c3498760ad4b342964c7f82ea5f
2017-08-18 09:36:26 -05:00
Jean-Philippe Evrard
22e6295c84 Implement logging for leapfrog
Default logging could be used in leapfrog, into the leapfrog
folder, to help debugging.

Change-Id: Ief9c4d2b9e46e515850720e07a62d59d561a3aa1
2017-08-08 15:15:31 +00:00
Jean-Philippe Evrard
9c6cb57cf7 Change mirror used to fetch venvs by default
Move to use rpc-repo (the origin) instead of its mirror,
mirror.rackspace.com

Change-Id: I5991026faed73d7712bdc6385d5cf350fb435ad8
2017-07-13 10:24:15 +00:00
Jean-Philippe Evrard
6178be497b Improve suspend/resume of leapfrog
While we could do better by using other mechanisms than shell
scripts, this commit sticks to the current method of doing (having
marker files), to mark steps that were missing a marker.

On top of it, you couldn't resume from a leapfrog that's started
from a shell script, because the readlink failed.

Change-Id: I73f09bb8214741772545c73fac5e5fdb5698c52e
2017-05-31 17:38:39 +00:00
Jean-Philippe Evrard
ee93901d05 Make possible to start leap from K
This change:
- discovers the current running version to know what
  to leap from, because we can't assume Juno only.
  At the same time it introduces a human verification
  of the source branch.
- removes the useless "-v" of the runs that produced
  an undesirable output, making the interface less
  "user friendly".

Change-Id: I04e4780bf5f58638addbd992eab7152f288532ae
Co-Authored-By: Jean-Philippe Evrard <jean-philippe@evrard.me>
2017-05-19 09:15:47 +00:00
Jimmy McCrory
ed717932c0 Fix downloading of pre-created leap release venvs
Precreated bundled venvs for OpenStack-Ansible have been created,
update the default VENV_URL with the path to them. Also fix the wget
command used to download them so that it returns a 0 on success and
deletes a failed download allowing the local build function to continue
on.

Change-Id: Ic4ae115384015dd7159da4e5850452bb5db181be
2017-02-23 15:24:56 -08:00
Kevin Carter
2438ad03ab Added leap upgrade tooling
This change adds upgrade tooling that will take a Juno based
OpenStack-Ansible cloud and upgrade it to Newton. The tooling
will run a deployment through all of the needed steps upgrading
the environment and skipping all of the OpenStack releases in
between.

**This tooling should be considered experimental at this time**

Change-Id: I1880794717b9e47786ae255ea1afa57d805cde8e
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-02-01 14:27:07 +00:00