autoland: add mountebank service to dev environment (bug 1337420) r?smacleod draft
authorMāris Fogels <mars@mozilla.com>
Tue, 07 Feb 2017 11:35:31 -0500
changeset 108 3d6f4e92f87421e5688972cf81894980b63b29a0
parent 97 f1e213a00938b6fdaabb4882e628c95f5c1412f5
child 109 110321f0ae456b5ab318cef342ae02f66ab30b91
push id67
push usermfogels@mozilla.com
push dateWed, 08 Feb 2017 20:53:22 +0000
reviewerssmacleod
bugs1337420
autoland: add mountebank service to dev environment (bug 1337420) r?smacleod Add a mountebank container to the development environment so that we can fake downstream services. MozReview-Commit-ID: ETSngrp3nRD
autoland/docker-compose.yml
autoland/docker/mountebank/Dockerfile
--- a/autoland/docker-compose.yml
+++ b/autoland/docker-compose.yml
@@ -14,16 +14,24 @@ services:
   yarn:
     build:
       context: ./ui
       dockerfile: ./Dockerfile-dev
     command: start
     volumes:
       - ./ui/src:/code/src
 
+  mountebank:
+    build:
+      context: docker/mountebank/
+    command: start --logfile /mb.log --debug --mock
+    ports:
+    - "8890:2525"
+    - "8891:4000"
+
   autolandweb:
     build:
       context: ./public-web-api
       dockerfile: ./Dockerfile-dev
     ports:
      - "9999:9090"
     volumes:
      - ./public-web-api:/app
new file mode 100644
--- /dev/null
+++ b/autoland/docker/mountebank/Dockerfile
@@ -0,0 +1,26 @@
+FROM node:7-alpine
+
+MAINTAINER Mozilla <dev-version-control@lists.mozilla.org>
+
+ENV DOCKERIZE_VERSION v0.3.0
+ENV MOUNTEBANK_MAJOR_VERSION 1.6
+ENV MOUNTEBANK_VERSION 1.6.0
+ENV MOUNTEBANK_SHA256 0149ee5c1a7f1f02e0a46e748d16a7a8c7145c459139357e6f73e39f0e716308
+
+# So wget works over SSL
+RUN apk --no-cache add openssl
+
+# Install the mountebank nodejs service. See http://www.mbtest.org/docs/install
+RUN wget -c -O mountebank.tar.gz https://s3.amazonaws.com/mountebank/v${MOUNTEBANK_MAJOR_VERSION}/mountebank-v${MOUNTEBANK_VERSION}-npm.tar.gz \
+    && echo "${MOUNTEBANK_SHA256}  mountebank.tar.gz" | sha256sum -c \
+    && tar xf mountebank.tar.gz \
+    && rm mountebank.tar.gz
+
+# Install dockerize so that the mountebank logs get sent to docker.
+RUN wget https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \
+    && tar -C /usr/local/bin -xzvf dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \
+    && rm dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz
+
+EXPOSE 2525 4000
+
+ENTRYPOINT ["/usr/local/bin/dockerize", "-stdout", "/mb.log", "-poll", "/mountebank/bin/mb"]