def main(): conf = cfg.ConfigOpts() common_config.parse(conf, sys.argv[1:], prog='kolla-build') retrieve_upstream_versions() retrieve_local_versions(conf) compare_versions()
def main(): conf = cfg.ConfigOpts() common_config.parse(conf, sys.argv[1:], prog='kolla-build') retrieve_local_versions() retrieve_upstream_versions() compare_versions()
def run_build(): """Build container images. :return: A 3-tuple containing bad, good, and unmatched container image status dicts, or None if no images were built. """ conf = cfg.ConfigOpts() common_config.parse(conf, sys.argv[1:], prog='kolla-build') if conf.debug: LOG.setLevel(logging.DEBUG) kolla = KollaWorker(conf) kolla.setup_working_dir() kolla.find_dockerfiles() kolla.create_dockerfiles() if conf.template_only: LOG.info('Dockerfiles are generated in %s', kolla.working_dir) return # We set the atime and mtime to 0 epoch to preserve allow the Docker cache # to work like we want. A different size or hash will still force a rebuild kolla.set_time() queue = kolla.build_queue() push_queue = six.moves.queue.Queue() if conf.save_dependency: kolla.save_dependency(conf.save_dependency) LOG.info('Docker images dependency is saved in %s', conf.save_dependency) return if conf.list_images: kolla.list_images() return if conf.list_dependencies: kolla.list_dependencies() return for x in six.moves.range(conf.threads): worker = WorkerThread(queue, push_queue, conf) worker.setDaemon(True) worker.start() for x in six.moves.range(conf.push_threads): push_thread = PushThread(conf, push_queue) push_thread.start() # sleep until queue is empty while queue.unfinished_tasks or push_queue.unfinished_tasks: time.sleep(3) kolla.summary() kolla.cleanup() return kolla.get_image_statuses()
def main(): conf = cfg.ConfigOpts() common_config.parse(conf, sys.argv[1:], prog='version-check') if conf.debug: LOG.setLevel(logging.DEBUG) retrieve_local_versions(conf) retrieve_upstream_versions() compare_versions()
def setUp(self): super(TestCase, self).setUp() self.conf = cfg.ConfigOpts() default_config_files = self.get_default_config_files() common_config.parse(self.conf, [], default_config_files=default_config_files) # NOTE(jeffrey4l): mock the _get_image_dir method to return a fake # docker images dir self.useFixture(fixtures.MockPatch( 'kolla.image.build.KollaWorker._get_images_dir', mock.Mock(return_value=os.path.join(TESTS_ROOT, 'docker'))))
def setUp(self): super(TestCase, self).setUp() self.conf = cfg.ConfigOpts() default_config_files = self.get_default_config_files() common_config.parse(self.conf, [], default_config_files=default_config_files) # NOTE(jeffrey4l): mock the _get_image_dir method to return a fake # docker images dir self.useFixture( fixtures.MockPatch( 'kolla.cmd.build.KollaWorker._get_images_dir', mock.Mock(return_value=os.path.join(TESTS_ROOT, 'docker'))))
def main(): conf = cfg.ConfigOpts() common_config.parse(conf, sys.argv[1:], prog='kolla-build') if conf.debug: LOG.setLevel(logging.DEBUG) kolla = KollaWorker(conf) kolla.setup_working_dir() kolla.find_dockerfiles() kolla.create_dockerfiles() if conf.template_only: LOG.info('Dockerfiles are generated in %s', kolla.working_dir) return # We set the atime and mtime to 0 epoch to preserve allow the Docker cache # to work like we want. A different size or hash will still force a rebuild kolla.set_time() queue = kolla.build_queue() push_queue = six.moves.queue.Queue() if conf.save_dependency: kolla.save_dependency(conf.save_dependency) LOG.info('Docker images dependency is saved in %s', conf.save_dependency) return if conf.list_images: kolla.list_images() return if conf.list_dependencies: kolla.list_dependencies() return for x in six.moves.range(conf.threads): worker = WorkerThread(queue, push_queue, conf) worker.setDaemon(True) worker.start() for x in six.moves.range(conf.push_threads): push_thread = PushThread(conf, push_queue) push_thread.start() # block until queue is empty queue.join() push_queue.join() kolla.summary() kolla.cleanup() return kolla.get_image_statuses()
def main(): conf = cfg.ConfigOpts() common_config.parse(conf, sys.argv[1:], prog='kolla-build') if conf.debug: LOG.setLevel(logging.DEBUG) kolla = KollaWorker(conf) kolla.setup_working_dir() kolla.find_dockerfiles() kolla.create_dockerfiles() if conf.template_only: LOG.info('Dockerfiles are generated in %s', kolla.working_dir) return # We set the atime and mtime to 0 epoch to preserve allow the Docker cache # to work like we want. A different size or hash will still force a rebuild kolla.set_time() queue = kolla.build_queue() push_queue = six.moves.queue.Queue() if conf.save_dependency: kolla.save_dependency(conf.save_dependency) LOG.info('Docker images dependency is saved in %s', conf.save_dependency) return if conf.list_images: kolla.list_images() return if conf.list_dependencies: kolla.list_dependencies() return for x in six.moves.range(conf.threads): worker = WorkerThread(queue, push_queue, conf) worker.setDaemon(True) worker.start() for x in six.moves.range(conf.push_threads): push_thread = PushThread(conf, push_queue) push_thread.start() # sleep until queue is empty while queue.unfinished_tasks or push_queue.unfinished_tasks: time.sleep(3) kolla.summary() kolla.cleanup() return kolla.get_image_statuses()
def run_build(): """Build container images. :return: A 4-tuple containing bad, good, unmatched and skipped container image status dicts, or None if no images were built. """ conf = cfg.ConfigOpts() common_config.parse(conf, sys.argv[1:], prog='kolla-build') if conf.debug: LOG.setLevel(logging.DEBUG) if conf.squash: squash_version = utils.get_docker_squash_version() LOG.info('Image squash is enabled and "docker-squash" version is %s', squash_version) kolla = KollaWorker(conf) kolla.setup_working_dir() kolla.find_dockerfiles() kolla.create_dockerfiles() if conf.template_only: LOG.info('Dockerfiles are generated in %s', kolla.working_dir) return # We set the atime and mtime to 0 epoch to preserve allow the Docker cache # to work like we want. A different size or hash will still force a rebuild kolla.set_time() if conf.save_dependency: kolla.build_image_list() kolla.find_parents() kolla.filter_images() kolla.save_dependency(conf.save_dependency) LOG.info('Docker images dependency are saved in %s', conf.save_dependency) return if conf.list_images: kolla.build_image_list() kolla.find_parents() kolla.filter_images() kolla.list_images() return if conf.list_dependencies: kolla.build_image_list() kolla.find_parents() kolla.filter_images() kolla.list_dependencies() return push_queue = six.moves.queue.Queue() queue = kolla.build_queue(push_queue) workers = [] with join_many(workers): try: for x in six.moves.range(conf.threads): worker = WorkerThread(conf, queue) worker.setDaemon(True) worker.start() workers.append(worker) for x in six.moves.range(conf.push_threads): worker = WorkerThread(conf, push_queue) worker.setDaemon(True) worker.start() workers.append(worker) # sleep until queue is empty while queue.unfinished_tasks or push_queue.unfinished_tasks: time.sleep(3) # ensure all threads exited happily push_queue.put(WorkerThread.tombstone) queue.put(WorkerThread.tombstone) except KeyboardInterrupt: for w in workers: w.should_stop = True push_queue.put(WorkerThread.tombstone) queue.put(WorkerThread.tombstone) raise results = kolla.summary() kolla.cleanup() if conf.format == 'json': print(json.dumps(results)) return kolla.get_image_statuses()
def run_build(): """Build container images. :return: A 3-tuple containing bad, good, and unmatched container image status dicts, or None if no images were built. """ conf = cfg.ConfigOpts() common_config.parse(conf, sys.argv[1:], prog='kolla-build') if conf.debug: LOG.setLevel(logging.DEBUG) kolla = KollaWorker(conf) kolla.setup_working_dir() kolla.find_dockerfiles() kolla.create_dockerfiles() if conf.template_only: LOG.info('Dockerfiles are generated in %s', kolla.working_dir) return # We set the atime and mtime to 0 epoch to preserve allow the Docker cache # to work like we want. A different size or hash will still force a rebuild kolla.set_time() if conf.save_dependency: kolla.build_image_list() kolla.find_parents() kolla.save_dependency(conf.save_dependency) LOG.info('Docker images dependency are saved in %s', conf.save_dependency) return if conf.list_images: kolla.build_image_list() kolla.list_images() return if conf.list_dependencies: kolla.build_image_list() kolla.find_parents() kolla.filter_images() kolla.list_dependencies() return push_queue = six.moves.queue.Queue() queue = kolla.build_queue(push_queue) workers = [] with join_many(workers): try: for x in six.moves.range(conf.threads): worker = WorkerThread(conf, queue) worker.setDaemon(True) worker.start() workers.append(worker) for x in six.moves.range(conf.push_threads): worker = WorkerThread(conf, push_queue) worker.start() workers.append(worker) # sleep until queue is empty while queue.unfinished_tasks or push_queue.unfinished_tasks: time.sleep(3) # ensure all threads exited happily push_queue.put(WorkerThread.tombstone) queue.put(WorkerThread.tombstone) except KeyboardInterrupt: for w in workers: w.should_stop = True push_queue.put(WorkerThread.tombstone) queue.put(WorkerThread.tombstone) raise kolla.summary() kolla.cleanup() return kolla.get_image_statuses()
def setUp(self): super(TestCase, self).setUp() self.conf = cfg.ConfigOpts() default_config_files = self.get_default_config_files() common_config.parse(self.conf, [], default_config_files=default_config_files)