anchor.diff:      gpg --keyserver hkp://ipv4.pool.sks-keyservers.net --recv-keys "$key" || \
       gpg --keyserver hkp://pgp.mit.edu:80 --recv-keys "$key" ; \
     done \
  -    && curl -SLO "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION.tar.xz" \
  -    && curl -SLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" \
  -    && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \
  -    && grep " node-v$NODE_VERSION.tar.xz\$" SHASUMS256.txt | sha256sum -c - \
  -    && tar -xf "node-v$NODE_VERSION.tar.xz" \
  -    && cd "node-v$NODE_VERSION" \
  -    && ./configure \
  -    && make -j$(getconf _NPROCESSORS_ONLN) \
  -    && make install \
  -    && apk del .build-deps \
  -    && cd .. \
  -    && rm -Rf "node-v$NODE_VERSION" \
  -    && rm "node-v$NODE_VERSION.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt \
  -    && apk add --no-cache --virtual .build-deps-yarn curl gnupg tar \
  -  && for key in \
  -    6A010C5166006599AA17F08146C2130DFD2497F5 \
  -  ; do \
  +  && { \
  +		echo '#!/bin/sh'; \
  +		echo 'set -e'; \
  +		echo; \
  +		echo 'dirname "$(dirname "$(readlink -f "$(which javac || which java)")")"'; \
  +	} > /usr/local/bin/docker-java-home \
  +  && chmod +x /usr/local/bin/docker-java-home \
  +  && ARCH= && dpkgArch="$(dpkg --print-architecture)" \
  +  && ln -svT "/usr/lib/jvm/java-8-openjdk-${dpkgArch}" /docker-java-home \
  +  && if [ ! -d /usr/share/man/man1 ]; then \
  +		mkdir -p /usr/share/man/man1; \
  +	 fi \
  +  && case "${dpkgArch##*-}" in \
  +    amd64) ARCH='x64';; \
  +    ppc64el) ARCH='ppc64le';; \
  +    s390x) ARCH='s390x';; \
  +    arm64) ARCH='arm64';; \
  +    armhf) ARCH='armv7l';; \
  +    i386) ARCH='x86';; \
  +    *) echo "unsupported architecture"; exit 1 ;; \
  +  esac \
  +  && curl -SLO "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" \
  +  && curl -SLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" \
  +  && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \
  +  && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - \
  +  && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner \
  +  && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt \
  +  && ln -s /usr/local/bin/node /usr/local/bin/nodejs \
  +  && set -ex \
  +  && for key in 6A010C5166006599AA17F08146C2130DFD2497F5; do \
       gpg --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys "$key" || \
       gpg --keyserver hkp://ipv4.pool.sks-keyservers.net --recv-keys "$key" || \
       gpg --keyserver hkp://pgp.mit.edu:80 --recv-keys "$key" ; \
  
positive.code: FROM python:2-alpine
  ENV NODE_VERSION 8.11.1
  ENV YARN_VERSION 1.5.1
  RUN addgroup -g 1000 node \
      && adduser -u 1000 -G node -s /bin/sh -D node \
      && apk add --no-cache libstdc++ \
      && apk add --no-cache --virtual .build-deps \
          binutils-gold \
          curl \
          g++ \
          gcc \
          gnupg \
          libgcc \
          linux-headers \
          make \
          libffi-dev \
          openssl-dev \
    && pip install nitor-deploy-tools==1.0a11 ansible boto \
    && for key in \
      94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \
      FD3A5288F042B6850C66B31F09FE44734EB7990E \
  
negative.code:   && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \
    && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \
    && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \
    && pip install nitor-deploy-tools==1.0a11 ansible boto \
    && npm i -g npm serverless \
    && wget -nv -O - "http://www.nic.funet.fi/pub/mirrors/apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.tar.gz" | tar -xzf - -C /opt \
    && ln -snf /opt/apache-maven-${MAVEN_VERSION} /opt/maven \
    && ln -snf /opt/maven/bin/mvn /usr/bin/mvn \
    && wget -nv -O tmp.zip "https://downloads.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip" \
    && unzip tmp.zip -d /opt && rm tmp.zip \
    && ln -snf /opt/gradle-${GRADLE_VERSION} /opt/gradle \
    && ln -snf /opt/gradle/bin/gradle /usr/bin/gradle \
    && wget -nv -O - "https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-${PHANTOMJS_VERSION}-linux-x86_64.tar.bz2" | tar -xjvf - \
    && mv phantomjs-*/bin/phantomjs /usr/bin \
    && rm -rf phantomjs-* \
    && wget -O /usr/bin/lein "https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein" \
    && chmod 755 /usr/bin/lein \
    && lein version
  