blob: cbfd5fb513af1242d08feb082d4d8b54f1a594ac [file] [log] [blame]
Sean Daguee263c822014-12-05 14:25:28 -05001#!/bin/bash
2#
Sean Dague1b6b5312013-07-31 06:46:34 -04003# lib/oslo
4#
Dean Troyerdc97cb72015-03-28 08:20:50 -05005# Functions to install **Oslo** libraries from git
Sean Dague1b6b5312013-07-31 06:46:34 -04006#
7# We need this to handle the fact that projects would like to use
8# pre-released versions of oslo libraries.
9
10# Dependencies:
Adam Spiers6a5aa7c2013-10-24 11:27:02 +010011#
12# - ``functions`` file
Sean Dague1b6b5312013-07-31 06:46:34 -040013
14# ``stack.sh`` calls the entry points in this order:
15#
Adam Spiers6a5aa7c2013-10-24 11:27:02 +010016# - install_oslo
Sean Dague1b6b5312013-07-31 06:46:34 -040017
18# Save trace setting
Ian Wienand523f4882015-10-13 11:03:03 +110019_XTRACE_LIB_OSLO=$(set +o | grep xtrace)
Sean Dague1b6b5312013-07-31 06:46:34 -040020set +o xtrace
21
22
23# Defaults
24# --------
Joshua Harlow96c6b2d2015-06-08 16:48:49 -070025GITDIR["automaton"]=$DEST/automaton
Brianna Poulos968ebee2017-04-14 11:33:56 -040026GITDIR["castellan"]=$DEST/castellan
Sean Daguecc524062014-10-01 09:06:43 -040027GITDIR["cliff"]=$DEST/cliff
Brianna Poulosf9c2a682017-04-14 13:00:19 -040028GITDIR["cursive"]=$DEST/cursive
Joshua Harlowee9064b2015-02-19 15:06:23 -080029GITDIR["debtcollector"]=$DEST/debtcollector
Joshua Harlowe3a640d2015-06-08 16:44:21 -070030GITDIR["futurist"]=$DEST/futurist
Dean Troyer06f36392016-08-12 09:35:42 -050031GITDIR["os-client-config"]=$DEST/os-client-config
32GITDIR["osc-lib"]=$DEST/osc-lib
Steve Martinelli531017c2015-06-27 03:37:39 +000033GITDIR["oslo.cache"]=$DEST/oslo.cache
Sean Daguecc524062014-10-01 09:06:43 -040034GITDIR["oslo.concurrency"]=$DEST/oslo.concurrency
Davanum Srinivas092c1242014-12-08 13:48:18 -050035GITDIR["oslo.config"]=$DEST/oslo.config
Davanum Srinivas958111e2014-11-17 17:35:40 -050036GITDIR["oslo.context"]=$DEST/oslo.context
Sean Daguecc524062014-10-01 09:06:43 -040037GITDIR["oslo.db"]=$DEST/oslo.db
38GITDIR["oslo.i18n"]=$DEST/oslo.i18n
39GITDIR["oslo.log"]=$DEST/oslo.log
Sean Daguecc524062014-10-01 09:06:43 -040040GITDIR["oslo.messaging"]=$DEST/oslo.messaging
Davanum Srinivas092c1242014-12-08 13:48:18 -050041GITDIR["oslo.middleware"]=$DEST/oslo.middleware
Steve Martinelli20b027b2015-02-04 02:38:13 -050042GITDIR["oslo.policy"]=$DEST/oslo.policy
Tony Breeds7792bc32015-10-23 13:57:14 +110043GITDIR["oslo.privsep"]=$DEST/oslo.privsep
Davanum Srinivas77a7d112015-06-22 16:44:13 -040044GITDIR["oslo.reports"]=$DEST/oslo.reports
Sean Daguecc524062014-10-01 09:06:43 -040045GITDIR["oslo.rootwrap"]=$DEST/oslo.rootwrap
46GITDIR["oslo.serialization"]=$DEST/oslo.serialization
Davanum Srinivas18d1cca2015-06-18 06:32:00 -040047GITDIR["oslo.service"]=$DEST/oslo.service
Sean Daguecc524062014-10-01 09:06:43 -040048GITDIR["oslo.utils"]=$DEST/oslo.utils
Dan Smithaca8a7f2015-03-03 08:50:27 -080049GITDIR["oslo.versionedobjects"]=$DEST/oslo.versionedobjects
Sean Daguecc524062014-10-01 09:06:43 -040050GITDIR["oslo.vmware"]=$DEST/oslo.vmware
Boris Pavlovicba0a6592016-01-14 17:31:40 -080051GITDIR["osprofiler"]=$DEST/osprofiler
Sean Daguecc524062014-10-01 09:06:43 -040052GITDIR["pycadf"]=$DEST/pycadf
Dean Troyer9fecc2a2017-04-07 12:28:40 -050053GITDIR["python-openstacksdk"]=$DEST/python-openstacksdk
Sean Daguecc524062014-10-01 09:06:43 -040054GITDIR["stevedore"]=$DEST/stevedore
55GITDIR["taskflow"]=$DEST/taskflow
Julien Danjouc187b882014-12-09 15:41:55 +010056GITDIR["tooz"]=$DEST/tooz
Matt Riedemannaefc9262017-05-31 15:39:48 -040057# TODO(mriedem): This is a common pattern so even though os-traits isn't
58# officially an oslo library, it is nice to re-use this script for non-oslo
59# things like os-traits. We should rename this script to be more generic
60# and then fold os-brick into it also.
61GITDIR["os-traits"]=$DEST/os-traits
Sean Dague1b6b5312013-07-31 06:46:34 -040062
Elena Ezhova2d451962014-06-19 12:49:32 +040063# Support entry points installation of console scripts
64OSLO_BIN_DIR=$(get_python_exec_prefix)
65
Dean Troyerdc97cb72015-03-28 08:20:50 -050066
67# Functions
68# ---------
Sean Dague1b6b5312013-07-31 06:46:34 -040069
Sean Daguecc524062014-10-01 09:06:43 -040070function _do_install_oslo_lib {
71 local name=$1
72 if use_library_from_git "$name"; then
73 git_clone_by_name "$name"
Sean Dague2105b9f2015-09-10 14:01:40 -040074 setup_dev_lib "$name"
Sean Daguecc524062014-10-01 09:06:43 -040075 fi
76}
77
Sean Dague1b6b5312013-07-31 06:46:34 -040078# install_oslo() - Collect source and prepare
Ian Wienandaee18c72014-02-21 15:35:08 +110079function install_oslo {
Davanum Srinivas77a7d112015-06-22 16:44:13 -040080 _do_install_oslo_lib "automaton"
Brianna Poulos968ebee2017-04-14 11:33:56 -040081 _do_install_oslo_lib "castellan"
Sean Daguecc524062014-10-01 09:06:43 -040082 _do_install_oslo_lib "cliff"
Brianna Poulosf9c2a682017-04-14 13:00:19 -040083 _do_install_oslo_lib "cursive"
Joshua Harlowee9064b2015-02-19 15:06:23 -080084 _do_install_oslo_lib "debtcollector"
Joshua Harlowe3a640d2015-06-08 16:44:21 -070085 _do_install_oslo_lib "futurist"
Dean Troyer06f36392016-08-12 09:35:42 -050086 _do_install_oslo_lib "osc-lib"
87 _do_install_oslo_lib "os-client-config"
Steve Martinelli531017c2015-06-27 03:37:39 +000088 _do_install_oslo_lib "oslo.cache"
Sean Daguecc524062014-10-01 09:06:43 -040089 _do_install_oslo_lib "oslo.concurrency"
Davanum Srinivas092c1242014-12-08 13:48:18 -050090 _do_install_oslo_lib "oslo.config"
91 _do_install_oslo_lib "oslo.context"
Sean Daguecc524062014-10-01 09:06:43 -040092 _do_install_oslo_lib "oslo.db"
Davanum Srinivas092c1242014-12-08 13:48:18 -050093 _do_install_oslo_lib "oslo.i18n"
94 _do_install_oslo_lib "oslo.log"
95 _do_install_oslo_lib "oslo.messaging"
96 _do_install_oslo_lib "oslo.middleware"
Steve Martinelli20b027b2015-02-04 02:38:13 -050097 _do_install_oslo_lib "oslo.policy"
Tony Breeds7792bc32015-10-23 13:57:14 +110098 _do_install_oslo_lib "oslo.privsep"
Davanum Srinivas77a7d112015-06-22 16:44:13 -040099 _do_install_oslo_lib "oslo.reports"
Davanum Srinivas092c1242014-12-08 13:48:18 -0500100 _do_install_oslo_lib "oslo.rootwrap"
101 _do_install_oslo_lib "oslo.serialization"
Davanum Srinivas18d1cca2015-06-18 06:32:00 -0400102 _do_install_oslo_lib "oslo.service"
Davanum Srinivas092c1242014-12-08 13:48:18 -0500103 _do_install_oslo_lib "oslo.utils"
Dan Smithaca8a7f2015-03-03 08:50:27 -0800104 _do_install_oslo_lib "oslo.versionedobjects"
Sean Dagueb7cda382014-10-03 08:00:52 -0400105 _do_install_oslo_lib "oslo.vmware"
Boris Pavlovicfadebe12016-01-25 12:32:32 -0800106 _do_install_oslo_lib "osprofiler"
Sean Daguecc524062014-10-01 09:06:43 -0400107 _do_install_oslo_lib "pycadf"
Dean Troyer9fecc2a2017-04-07 12:28:40 -0500108 _do_install_oslo_lib "python-openstacksdk"
Sean Daguecc524062014-10-01 09:06:43 -0400109 _do_install_oslo_lib "stevedore"
110 _do_install_oslo_lib "taskflow"
Julien Danjouc187b882014-12-09 15:41:55 +0100111 _do_install_oslo_lib "tooz"
Sean Dague62b56602017-06-19 08:27:16 -0400112 # installation of additional libraries
113 #
114 # os-traits for nova
Matt Riedemannaefc9262017-05-31 15:39:48 -0400115 _do_install_oslo_lib "os-traits"
Sean Dague62b56602017-06-19 08:27:16 -0400116
117 # etcd (because tooz does not have a hard dependency on these)
118 pip_install etcd3
119 pip_install etcd3gw
Sean Daguedb5fadb2013-08-09 13:41:33 -0400120}
121
Sean Dague1b6b5312013-07-31 06:46:34 -0400122# Restore xtrace
Ian Wienand523f4882015-10-13 11:03:03 +1100123$_XTRACE_LIB_OSLO
Sean Dague1b6b5312013-07-31 06:46:34 -0400124
Adam Spiers6a5aa7c2013-10-24 11:27:02 +0100125# Tell emacs to use shell-script-mode
126## Local variables:
127## mode: shell-script
128## End: