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

Unified Diff: appengine/swarming/handlers_endpoints_test.py

Issue 1946253003: swarming: refactor cipd input (Closed) Base URL: https://chromium.googlesource.com/external/github.com/luci/luci-py@default-isolate-server
Patch Set: rebased Created 4 years, 7 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 | « appengine/swarming/handlers_endpoints.py ('k') | appengine/swarming/message_conversion.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: appengine/swarming/handlers_endpoints_test.py
diff --git a/appengine/swarming/handlers_endpoints_test.py b/appengine/swarming/handlers_endpoints_test.py
index 3ad9d3887b5f66a0f364de817688ded0a6121add..ae492012c7293cb3f939bba8da5ee68f8be5d5bb 100755
--- a/appengine/swarming/handlers_endpoints_test.py
+++ b/appengine/swarming/handlers_endpoints_test.py
@@ -151,10 +151,18 @@ class TasksApiTest(BaseTest):
name='job1',
priority=200,
properties=swarming_rpcs.TaskProperties(
+ cipd_input=swarming_rpcs.CipdInput(
+ client_package=swarming_rpcs.CipdPackage(
+ package_name='infra/tools/cipd/${platform}',
+ version='git_revision:deadbeef',
+ ),
+ packages=[
+ swarming_rpcs.CipdPackage(
+ package_name='rm', version='latest'),
+ ],
+ server='https://chrome-infra-packages.appspot.com',
+ ),
command=['rm', '-rf', '/'],
- packages=[
- swarming_rpcs.CipdPackage(package_name='rm', version='latest'),
- ],
dimensions=[
swarming_rpcs.StringPair(key='pool', value='default'),
],
@@ -176,11 +184,18 @@ class TasksApiTest(BaseTest):
u'name': u'job1',
u'priority': u'200',
u'properties': {
+ u'cipd_input': {
+ u'client_package': {
+ u'package_name': u'infra/tools/cipd/${platform}',
+ u'version': u'git_revision:deadbeef',
+ },
+ u'packages': [{
+ u'package_name': u'rm',
+ u'version': u'latest',
+ }],
+ u'server': u'https://chrome-infra-packages.appspot.com',
+ },
u'command': [u'rm', u'-rf', u'/'],
- u'packages': [{
- u'package_name': u'rm',
- u'version': u'latest',
- }],
u'dimensions': [
{u'key': u'pool', u'value': u'default'},
],
@@ -230,18 +245,25 @@ class TasksApiTest(BaseTest):
priority=200,
properties=swarming_rpcs.TaskProperties(
command=['python', 'run_test.py'],
+ cipd_input=swarming_rpcs.CipdInput(
+ client_package=swarming_rpcs.CipdPackage(
+ package_name='infra/tools/cipd/${platform}',
+ version='git_revision:deadbeef',
+ ),
+ packages=[
+ swarming_rpcs.CipdPackage(
+ package_name='rm',
+ version='git_revision:deadbeef'),
+ ],
+ server='https://chrome-infra-packages.appspot.com',
+ ),
dimensions=[
swarming_rpcs.StringPair(key='os', value='Amiga'),
swarming_rpcs.StringPair(key='pool', value='default'),
],
execution_timeout_secs=3600,
idempotent=True,
- io_timeout_secs=1200,
- packages=[
- swarming_rpcs.CipdPackage(
- package_name='rm',
- version=test_env_handlers.PINNED_PACKAGE_VERSION),
- ]),
+ io_timeout_secs=1200),
tags=['foo:bar'],
user='joe@localhost')
expected = {
@@ -252,6 +274,17 @@ class TasksApiTest(BaseTest):
u'name': u'job1',
u'priority': u'200',
u'properties': {
+ u'cipd_input': {
+ u'client_package': {
+ u'package_name': u'infra/tools/cipd/${platform}',
+ u'version': u'git_revision:deadbeef',
+ },
+ u'packages': [{
+ u'package_name': u'rm',
+ u'version': 'git_revision:deadbeef',
+ }],
+ u'server': u'https://chrome-infra-packages.appspot.com',
+ },
u'command': [u'python', u'run_test.py'],
u'dimensions': [
{u'key': u'os', u'value': u'Amiga'},
@@ -261,10 +294,6 @@ class TasksApiTest(BaseTest):
u'grace_period_secs': u'30',
u'idempotent': True,
u'io_timeout_secs': u'1200',
- u'packages': [{
- u'package_name': u'rm',
- u'version': test_env_handlers.PINNED_PACKAGE_VERSION,
- }],
},
u'tags': [
u'foo:bar',
@@ -383,6 +412,17 @@ class TasksApiTest(BaseTest):
u'name': u'job1',
u'priority': u'200',
u'properties': {
+ u'cipd_input': {
+ u'client_package': {
+ u'package_name': u'infra/tools/cipd/${platform}',
+ u'version': u'git_revision:deadbeef',
+ },
+ u'packages': [{
+ u'package_name': u'rm',
+ u'version': 'git_revision:deadbeef',
+ }],
+ u'server': u'https://chrome-infra-packages.appspot.com',
+ },
u'command': [u'python', u'run_test.py'],
u'dimensions': [
{u'key': u'os', u'value': u'Amiga'},
@@ -392,10 +432,6 @@ class TasksApiTest(BaseTest):
u'grace_period_secs': u'30',
u'idempotent': True,
u'io_timeout_secs': u'1200',
- u'packages': [{
- u'package_name': u'rm',
- u'version': test_env_handlers.PINNED_PACKAGE_VERSION,
- }],
},
u'tags': [
u'foo:bar',
@@ -413,6 +449,17 @@ class TasksApiTest(BaseTest):
u'name': u'task',
u'priority': u'10',
u'properties': {
+ u'cipd_input': {
+ u'client_package': {
+ u'package_name': u'infra/tools/cipd/${platform}',
+ u'version': u'git_revision:deadbeef',
+ },
+ u'packages': [{
+ u'package_name': u'rm',
+ u'version': 'git_revision:deadbeef',
+ }],
+ u'server': u'https://chrome-infra-packages.appspot.com',
+ },
u'command': [u'python', u'run_test.py'],
u'dimensions': [
{u'key': u'os', u'value': u'Amiga'},
@@ -422,10 +469,6 @@ class TasksApiTest(BaseTest):
u'grace_period_secs': u'30',
u'idempotent': True,
u'io_timeout_secs': u'1200',
- u'packages': [{
- u'package_name': u'rm',
- u'version': test_env_handlers.PINNED_PACKAGE_VERSION,
- }],
},
u'tags': [
u'commit:post',
@@ -575,6 +618,92 @@ class TasksApiTest(BaseTest):
response = self.call_api('new', body=message_to_dict(request))
self.assertEqual(expected, response.json)
+ def test_new_cipd_packages_with_defaults(self):
+ self.mock(random, 'getrandbits', lambda _: 0x88)
+ now = datetime.datetime(2010, 1, 2, 3, 4, 5)
+ self.mock_now(now)
+ str_now = unicode(now.strftime(self.DATETIME_NO_MICRO))
+
+ # Define settings on the server.
+ cfg = config.settings()
+ cfg.cipd.default_client_package.package_name = (
+ 'infra/tools/cipd/${platform}')
+ cfg.cipd.default_client_package.version = 'git_revision:deadbeef'
+ cfg.cipd.default_server = 'https://chrome-infra-packages.appspot.com'
+ self.mock(config, 'settings', lambda: cfg)
+
+ request = swarming_rpcs.NewTaskRequest(
+ expiration_secs=30,
+ name='job1',
+ priority=200,
+ properties=swarming_rpcs.TaskProperties(
+ cipd_input=swarming_rpcs.CipdInput(
+ packages=[
+ swarming_rpcs.CipdPackage(
+ package_name='rm',
+ version='latest'),
+ ],
+ ),
+ command=['rm', '-rf', '/'],
+ dimensions=[
+ swarming_rpcs.StringPair(key='pool', value='default'),
+ ],
+ env=[
+ swarming_rpcs.StringPair(key='PATH', value='/'),
+ ],
+ execution_timeout_secs=30,
+ io_timeout_secs=30),
+ tags=['foo:bar'],
+ user='joe@localhost',
+ pubsub_topic='projects/abc/topics/def',
+ pubsub_auth_token='secret that must not be shown',
+ pubsub_userdata='userdata')
+ expected = {
+ u'request': {
+ u'authenticated': u'user:user@example.com',
+ u'created_ts': str_now,
+ u'expiration_secs': u'30',
+ u'name': u'job1',
+ u'priority': u'200',
+ u'properties': {
+ u'cipd_input': {
+ u'client_package': {
+ u'package_name': u'infra/tools/cipd/${platform}',
+ u'version': u'git_revision:deadbeef',
+ },
+ u'packages': [{
+ u'package_name': u'rm',
+ u'version': u'latest',
+ }],
+ u'server': u'https://chrome-infra-packages.appspot.com',
+ },
+ u'command': [u'rm', u'-rf', u'/'],
+ u'dimensions': [
+ {u'key': u'pool', u'value': u'default'},
+ ],
+ u'env': [
+ {u'key': u'PATH', u'value': u'/'},
+ ],
+ u'execution_timeout_secs': u'30',
+ u'grace_period_secs': u'30',
+ u'idempotent': False,
+ u'io_timeout_secs': u'30',
+ },
+ u'pubsub_topic': u'projects/abc/topics/def',
+ u'pubsub_userdata': u'userdata',
+ u'tags': [
+ u'foo:bar',
+ u'pool:default',
+ u'priority:200',
+ u'user:joe@localhost',
+ ],
+ u'user': u'joe@localhost',
+ },
+ u'task_id': u'5cee488008810',
+ }
+ response = self.call_api('new', body=message_to_dict(request))
+ self.assertEqual(expected, response.json)
+
def test_list_ok(self):
"""Asserts that list requests all TaskResultSummaries."""
first, second, str_now_120, start, end = self._gen_two_tasks()
@@ -1112,6 +1241,17 @@ class TaskApiTest(BaseTest):
u'name': u'hi',
u'priority': u'10',
u'properties': {
+ u'cipd_input': {
+ u'client_package': {
+ u'package_name': u'infra/tools/cipd/${platform}',
+ u'version': u'git_revision:deadbeef',
+ },
+ u'packages': [{
+ u'package_name': u'rm',
+ u'version': 'git_revision:deadbeef',
+ }],
+ u'server': u'https://chrome-infra-packages.appspot.com',
+ },
u'command': [u'python', u'run_test.py'],
u'dimensions': [
{u'key': u'os', u'value': u'Amiga'},
@@ -1121,10 +1261,6 @@ class TaskApiTest(BaseTest):
u'grace_period_secs': u'30',
u'idempotent': False,
u'io_timeout_secs': u'1200',
- u'packages': [{
- u'package_name': u'rm',
- u'version': test_env_handlers.PINNED_PACKAGE_VERSION,
- }],
},
u'tags': [
u'os:Amiga',
« no previous file with comments | « appengine/swarming/handlers_endpoints.py ('k') | appengine/swarming/message_conversion.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698