Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(199)

Unified Diff: scripts/slave/recipe_modules/cipd/api.py

Issue 2240203002: Delete cipd recipe module in build; it's been moved to depot_tools (Closed) Base URL: https://chromium.googlesource.com/chromium/tools/build.git@master
Patch Set: Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « scripts/slave/recipe_modules/cipd/__init__.py ('k') | scripts/slave/recipe_modules/cipd/example.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: scripts/slave/recipe_modules/cipd/api.py
diff --git a/scripts/slave/recipe_modules/cipd/api.py b/scripts/slave/recipe_modules/cipd/api.py
deleted file mode 100644
index 138ec98593362cd1a0bba2c44ac045c8acff3cf0..0000000000000000000000000000000000000000
--- a/scripts/slave/recipe_modules/cipd/api.py
+++ /dev/null
@@ -1,246 +0,0 @@
-# Copyright 2015 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-from recipe_engine import recipe_api
-
-
-class CIPDApi(recipe_api.RecipeApi):
- """CIPDApi provides support for CIPD."""
- def __init__(self, *args, **kwargs):
- super(CIPDApi, self).__init__(*args, **kwargs)
- self._cipd_executable = None
- self._cipd_version = None
- self._cipd_credentials = None
-
- def set_service_account_credentials(self, path):
- self._cipd_credentials = path
-
- @property
- def default_bot_service_account_credentials(self):
- # Path to a service account credentials to use to talk to CIPD backend.
- # Deployed by Puppet.
- if self.m.platform.is_win:
- return 'C:\\creds\\service_accounts\\service-account-cipd-builder.json'
- else:
- return '/creds/service_accounts/service-account-cipd-builder.json'
-
- def platform_suffix(self):
- """Use to get full package name that is platform indepdent.
-
- Example:
- >>> 'my/package/%s' % api.cipd.platform_suffix()
- 'my/package/linux-amd64'
- """
- return '%s-%s' % (
- self.m.platform.name.replace('win', 'windows'),
- {
- 32: '386',
- 64: 'amd64',
- }[self.m.platform.bits],
- )
-
- def install_client(self, step_name='install cipd', version=None):
- """Ensures the client is installed.
-
- If you specify version as a hash, make sure its correct platform.
- """
- # TODO(seanmccullough): clean up older CIPD installations.
- step = self.m.python(
- name=step_name,
- script=self.resource('bootstrap.py'),
- args=[
- '--platform', self.platform_suffix(),
- '--dest-directory', self.m.path['slave_build'].join('cipd'),
- '--json-output', self.m.json.output(),
- ] +
- (['--version', version] if version else []),
- step_test_data=lambda: self.test_api.example_install_client(version)
- )
- self._cipd_executable = step.json.output['executable']
- self._cipd_instance_id = step.json.output['instance_id']
-
- step.presentation.step_text = (
- 'cipd instance_id: %s' % self._cipd_instance_id)
- return step
-
- def get_executable(self):
- return self._cipd_executable
-
- def build(self, input_dir, output_package, package_name, install_mode=None):
- assert self._cipd_executable
- assert not install_mode or install_mode in ['copy', 'symlink']
- return self.m.step(
- 'build %s' % self.m.path.basename(package_name),
- [
- self._cipd_executable,
- 'pkg-build',
- '--in', input_dir,
- '--name', package_name,
- '--out', output_package,
- '--json-output', self.m.json.output(),
- ] + (
- ['--install-mode', install_mode] if install_mode else []
- ),
- step_test_data=lambda: self.test_api.example_build(package_name)
- )
-
- def register(self, package_name, package_path, refs=None, tags=None):
- assert self._cipd_executable
-
- cmd = [
- self._cipd_executable,
- 'pkg-register', package_path,
- '--json-output', self.m.json.output(),
- ]
- if self._cipd_credentials:
- cmd.extend(['--service-account-json', self._cipd_credentials])
- if refs:
- for ref in refs:
- cmd.extend(['--ref', ref])
- if tags:
- for tag, value in sorted(tags.items()):
- cmd.extend(['--tag', '%s:%s' % (tag, value)])
- return self.m.step(
- 'register %s' % package_name,
- cmd,
- step_test_data=lambda: self.test_api.example_register(package_name)
- )
-
- def create(self, pkg_def, refs=None, tags=None):
- """Creates a package based on YAML package definition file.
-
- This builds and uploads the package in one step.
- """
- assert self._cipd_executable
- cmd = [
- self._cipd_executable,
- 'create',
- '--pkg-def', pkg_def,
- '--json-output', self.m.json.output(),
- ]
- if self._cipd_credentials:
- cmd.extend(['--service-account-json', self._cipd_credentials])
- if refs:
- for ref in refs:
- cmd.extend(['--ref', ref])
- if tags:
- for tag, value in sorted(tags.items()):
- cmd.extend(['--tag', '%s:%s' % (tag, value)])
- return self.m.step('create %s' % self.m.path.basename(pkg_def), cmd)
-
- def ensure(self, root, packages):
- """Ensures that packages are installed in a given root dir.
-
- packages must be a mapping from package name to its version, where
- * name must be for right platform (see also ``platform_suffix``),
- * version could be either instance_id, or ref, or unique tag.
-
- If installing a package requires credentials, call
- ``set_service_account_credentials`` before calling this function.
- """
- assert self._cipd_executable
-
- package_list = ['%s %s' % (name, version)
- for name, version in sorted(packages.items())]
- list_data = self.m.raw_io.input('\n'.join(package_list))
- bin_path = self.m.path['slave_build'].join('cipd')
- cmd = [
- self._cipd_executable,
- 'ensure',
- '--root', root,
- '--list', list_data,
- '--json-output', self.m.json.output(),
- ]
- if self._cipd_credentials:
- cmd.extend(['--service-account-json', self._cipd_credentials])
- return self.m.step(
- 'ensure_installed', cmd,
- step_test_data=lambda: self.test_api.example_ensure(packages)
- )
-
- def set_tag(self, package_name, version, tags):
- assert self._cipd_executable
-
- cmd = [
- self._cipd_executable,
- 'set-tag', package_name,
- '--version', version,
- '--json-output', self.m.json.output(),
- ]
- if self._cipd_credentials:
- cmd.extend(['--service-account-json', self._cipd_credentials])
- for tag, value in sorted(tags.items()):
- cmd.extend(['--tag', '%s:%s' % (tag, value)])
-
- return self.m.step(
- 'cipd set-tag %s' % package_name,
- cmd,
- step_test_data=lambda: self.test_api.example_set_tag(
- package_name, version
- )
- )
-
- def set_ref(self, package_name, version, refs):
- assert self._cipd_executable
-
- cmd = [
- self._cipd_executable,
- 'set-ref', package_name,
- '--version', version,
- '--json-output', self.m.json.output(),
- ]
- if self._cipd_credentials:
- cmd.extend(['--service-account-json', self._cipd_credentials])
- for r in refs:
- cmd.extend(['--ref', r])
-
- return self.m.step(
- 'cipd set-ref %s' % package_name,
- cmd,
- step_test_data=lambda: self.test_api.example_set_ref(
- package_name, version
- )
- )
-
- def search(self, package_name, tag):
- assert self._cipd_executable
- assert ':' in tag, 'tag must be in a form "k:v"'
-
- cmd = [
- self._cipd_executable,
- 'search', package_name,
- '--tag', tag,
- '--json-output', self.m.json.output(),
- ]
- if self._cipd_credentials:
- cmd.extend(['--service-account-json', self._cipd_credentials])
-
- return self.m.step(
- 'cipd search %s %s' % (package_name, tag),
- cmd,
- step_test_data=lambda: self.test_api.example_search(package_name)
- )
-
- def describe(self, package_name, version,
- test_data_refs=None, test_data_tags=None):
- assert self._cipd_executable
-
- cmd = [
- self._cipd_executable,
- 'describe', package_name,
- '--version', version,
- '--json-output', self.m.json.output(),
- ]
- if self._cipd_credentials:
- cmd.extend(['--service-account-json', self._cipd_credentials])
-
- return self.m.step(
- 'cipd describe %s' % package_name,
- cmd,
- step_test_data=lambda: self.test_api.example_describe(
- package_name, version,
- test_data_refs=test_data_refs,
- test_data_tags=test_data_tags
- )
- )
« no previous file with comments | « scripts/slave/recipe_modules/cipd/__init__.py ('k') | scripts/slave/recipe_modules/cipd/example.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698