Closed Bug 1286127 Opened 10 years ago Closed 7 years ago

JSON parsing error with Docker 1.12

Categories

(MozReview Graveyard :: Testing / Development Environment, defect)

Production
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: mcote, Unassigned)

Details

I upgraded Docker to 1.12 last week (1.12.0-rc3-beta18 specifically), and I can't build the images anymore. The first problem was simple: client.start() doesn't take host_config options anymore (e.g. 'port_bindings'), but we can just move that to client.create_container(). The second problem is weird. The generator returned by client.build() (http://hg.mozilla.org/hgcustom/version-control-tools/file/tip/testing/vcttesting/docker.py#l472) appears to be returning concatenated JSON strings. For example: {"stream":" ---\u003e 3e00e2000b58\n"} {"stream":"Step 2 : RUN apt-get update \u0026\u0026 apt-get install -y rsync\n"} This causes errors like "ValueError: Extra data: line 2 column 1 - line 3 column 1 (char 40 - 122)". We can't just split them by newline, since there are newlines within some of the dict values. Maybe a regular expression would work, but I'm not sure why this is happening in the first place.
My guess is docker-py needs to be updated to handle the streaming output from client.build(). That or there is an upstream bug, as Docker's HTTP API is versioned and is supposed to be consistent once each version is released. It's possible docker-py is using a latest version instead of a known working one.
MozReview is now obsolete. Please use Phabricator instead. Closing this bug.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.