diff options
| author | Jenkins <jenkins@review.openstack.org> | 2015-08-25 07:39:16 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2015-08-25 07:39:16 +0000 |
| commit | 46ed80378983bf97d8cd20da7834a870ec61fd60 (patch) | |
| tree | d1c2296e1eff804e0dbe63d12c7ca3785ac08932 /kolla | |
| parent | ce203afa1267c0fb9a2f0b78c0a1d190d0a3069e (diff) | |
| parent | bd8d795124625e86ed4287a739101d28e6207eaf (diff) | |
| download | kolla-46ed80378983bf97d8cd20da7834a870ec61fd60.tar.gz kolla-46ed80378983bf97d8cd20da7834a870ec61fd60.zip | |
Merge "Modified build.py to run from installed location"
Diffstat (limited to 'kolla')
| -rwxr-xr-x | kolla/cmd/build.py | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/kolla/cmd/build.py b/kolla/cmd/build.py index 4f571c790..243ec77f7 100755 --- a/kolla/cmd/build.py +++ b/kolla/cmd/build.py @@ -12,7 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -# TODO(SamYaple): Single image building w/ optional parent building # TODO(jpeeler): Add clean up handler for SIGINT import argparse @@ -41,6 +40,10 @@ LOG.setLevel(logging.INFO) signal.signal(signal.SIGINT, signal.SIG_DFL) +class KollaDirNotFoundException(Exception): + pass + + class WorkerThread(Thread): def __init__(self, queue, args): @@ -189,9 +192,20 @@ def argParser(): class KollaWorker(object): def __init__(self, args): - self.kolla_dir = os.path.join(sys.path[0], '..') - self.images_dir = os.path.join(self.kolla_dir, 'docker') - self.templates_dir = os.path.join(self.kolla_dir, 'docker_templates') + def find_base_dir(): + if os.path.basename(sys.path[0]) == 'tests': + return os.path.join(sys.path[0], '..') + if os.path.basename(sys.path[0]) == 'cmd': + return os.path.join(sys.path[0], '..', '..') + if os.path.basename(sys.path[0]) == 'bin': + return '/usr/share/kolla' + raise KollaDirNotFoundException( + 'I do not know where your Kolla directory is' + ) + + self.base_dir = find_base_dir() + self.images_dir = os.path.join(self.base_dir, 'docker') + self.templates_dir = os.path.join(self.base_dir, 'docker_templates') self.namespace = args['namespace'] self.template = args['template'] self.base = args['base'] @@ -200,7 +214,7 @@ class KollaWorker(object): self.tag = args['tag'] self.prefix = self.base + '-' + self.type_ + '-' self.config = ConfigParser.SafeConfigParser() - self.config.read(os.path.join(sys.path[0], '..', 'build.ini')) + self.config.read(os.path.join(sys.path[0], self.base_dir, 'build.ini')) self.include_header = args['include_header'] self.regex = args['regex'] |
