#!/bin/sh -x

#image:
PROXY=$(docker build -q - <<EOF
FROM ubuntu:18.10

RUN apt update && \
    apt --yes install squid

RUN echo "acl maven dstdomain central.maven.org" >/etc/squid/conf.d/proxy.conf &&\
    echo "acl ubuntu dstdomain security.ubuntu.com" >>/etc/squid/conf.d/proxy.conf &&\
    echo "acl ubuntu dstdomain archive.ubuntu.com" >>/etc/squid/conf.d/proxy.conf &&\
    echo "acl github dstdomain github.com" >>/etc/squid/conf.d/proxy.conf &&\
    echo "acl github dstdomain api.github.com" >>/etc/squid/conf.d/proxy.conf &&\
    echo "acl github dstdomain patch-diff.githubusercontent.com" >>/etc/squid/conf.d/proxy.conf &&\
    echo "acl netbeans dstdomain netbeans.osuosl.org" >>/etc/squid/conf.d/proxy.conf &&\
    echo "acl allowed_ports port 80" >>/etc/squid/conf.d/proxy.conf &&\
    echo "acl allowed_ports port 443" >>/etc/squid/conf.d/proxy.conf &&\
    echo "http_access allow maven allowed_ports" >>/etc/squid/conf.d/proxy.conf &&\
    echo "http_access allow ubuntu allowed_ports" >>/etc/squid/conf.d/proxy.conf &&\
    echo "http_access allow github allowed_ports" >>/etc/squid/conf.d/proxy.conf &&\
    echo "http_access allow netbeans allowed_ports" >>/etc/squid/conf.d/proxy.conf &&\
    echo "http_access deny all" >>/etc/squid/conf.d/proxy.conf

ENTRYPOINT [ "squid", "--foreground" ]
EOF
)
PROXY=`echo $PROXY | cut -d ':' -f 2`

#container:
PROXY_CONTAINER=`docker run --rm -d $PROXY`
#docker container rename $PROXY_CONTAINER jackpot-proxy-$PROXY_CONTAINER

#networking:
docker network create --driver bridge --internal jackpot-network-$PROXY_CONTAINER
docker network create --driver bridge jackpot-public-network-$PROXY_CONTAINER

docker network disconnect bridge $PROXY_CONTAINER
docker network connect --alias jackpot-proxy jackpot-network-$PROXY_CONTAINER $PROXY_CONTAINER
docker network connect jackpot-public-network-$PROXY_CONTAINER $PROXY_CONTAINER

WORKER=$(docker build -q -f - `dirname $0`/.. <<EOF
FROM ubuntu:18.10

RUN apt update && \
    apt --yes install openjdk-11-jdk build-essential maven ant gradle git

RUN useradd -m compute

COPY --chown=compute . /home/compute/handler

USER compute

ENTRYPOINT [ "/home/compute/handler/bin/handler.local", "-J-Dhttp.proxyHost=jackpot-proxy", "-J-Dhttp.proxyPort=3128", "-J-Dhttps.proxyHost=jackpot-proxy", "-J-Dhttps.proxyPort=3128", "-J-Xmx2048m"]
EOF
)

docker run --rm --env PR_CONTENT --env OAUTH_TOKEN --env OAUTH_APP_TOKEN --network jackpot-network-$PROXY_CONTAINER --env "http_proxy=http://jackpot-proxy:3128/" --env "https_proxy=http://jackpot-proxy:3128/" --env "JACKPOT_PRS_EXTRA_JVM_OPTIONS=-J-Dhttp.proxyHost=jackpot-proxy -J-Dhttp.proxyPort=3128 -J-Dhttps.proxyHost=jackpot-proxy -J-Dhttps.proxyPort=3128" $WORKER

docker container stop $PROXY_CONTAINER
docker network rm jackpot-network-$PROXY_CONTAINER jackpot-public-network-$PROXY_CONTAINER


