New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 791783 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Dec 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 1
Type: Bug

Blocking:
issue 749709



Sign in to add a comment

Swarming API doesn't support /package/name/${os=foo,bar}-${arch} CIPD package syntax

Project Member Reported by aga...@chromium.org, Dec 4 2017

Issue description

See https://chrome-internal-review.googlesource.com/c/infradata/config/+/521259 for context

The buildbucket logs show swarming returning the following error message:

Swarming API call failed with HTTP 400: {
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "badRequest",
    "message": "package_name must be a valid CIPD package name template \"infra/git/${os=linux,mac}-${arch}\""
   }
  ],
  "code": 400,
  "message": "package_name must be a valid CIPD package name template \"infra/git/${os=linux,mac}-${arch}\""
 }
}

The quoted part of the message string "infra/git/${os=linux,mac}-${arc}" is taken from the swarming template that I set in https://chrome-internal-review.googlesource.com/c/infradata/config/+/520900.

However, that syntax *is* a valid CIPD package name, as shown by identical syntax in other CIPD manifests:
https://cs.chromium.org/chromium/tools/depot_tools/cipd_manifest.txt?sq=package:chromium&dr&l=17

Please update the swarming API to recognize all properly-formatted CIPD manifests
 
Status: Available (was: Unconfirmed)
Yeah, that looks like a bug to me (changing to assigned, not sure how to prioritize with other stuff)

What deadline are you looking at, Aaron?
I marked this Pri-1 because it's blocking resolution on a Pri-1 bug on my plate. I don't want to ask you to rush this out before the prod freeze, but if it isn't out before the prod freeze, then neither will git 2.15.1.2.

Comment 3 Deleted

Comment 5 Deleted

Comment 7 by no...@chromium.org, Dec 4 2017

when cipd was integrated with swarming, cipd didn't know about parameters so swarming implemented them
https://chromium.googlesource.com/infra/luci/luci-py/+/1e5342e46f500e24ccd14f286a9032695502cf96/client/cipd.py#273

now it should not interpret package nam
Owner: mar...@chromium.org
Status: Assigned (was: Available)
Project Member

Comment 9 by bugdroid1@chromium.org, Dec 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/infra/luci/luci-py.git/+/ca9c5b3475c70ae9875d5780b0040a117801fab6

commit ca9c5b3475c70ae9875d5780b0040a117801fab6
Author: Marc-Antoine Ruel <maruel@chromium.org>
Date: Wed Dec 06 18:03:50 2017

swarming: remove stale cipd validation.

The CIPD 'language' changed a bit.

The CIPD client is validating anyway, and we kinda trust the cipd client to
return sensible data to the server for pinned CIPD packages.

R=iannucci@chromium.org
Bug:  791783 
Change-Id: Id231966680716905d8a535850f0e5c8e30db0142
Reviewed-on: https://chromium-review.googlesource.com/809865
Commit-Queue: Marc-Antoine Ruel <maruel@chromium.org>
Reviewed-by: Nodir Turakulov <nodir@chromium.org>

[modify] https://crrev.com/ca9c5b3475c70ae9875d5780b0040a117801fab6/appengine/swarming/cipd.py
[modify] https://crrev.com/ca9c5b3475c70ae9875d5780b0040a117801fab6/appengine/swarming/cipd_test.py
[modify] https://crrev.com/ca9c5b3475c70ae9875d5780b0040a117801fab6/appengine/swarming/server/task_result.py
[modify] https://crrev.com/ca9c5b3475c70ae9875d5780b0040a117801fab6/appengine/swarming/server/task_scheduler.py
[modify] https://crrev.com/ca9c5b3475c70ae9875d5780b0040a117801fab6/client/cipd.py

Status: Fixed (was: Assigned)
Fix deployed. Reopen if it didn't work.

Sign in to add a comment