diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..6e19512 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,2 @@ +.dockerignore +Dockerfile diff --git a/Dockerfile b/Dockerfile index 6b1b03f..d31de09 100644 --- a/Dockerfile +++ b/Dockerfile @@ -34,7 +34,7 @@ RUN apt-get update \ && apt-get install -y dumb-init apache2 $(cat /run.txt) \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* /run.txt \ - && a2enmod rewrite proxy proxy_http + && a2enmod rewrite proxy proxy_http ssl COPY ./vhost.conf /etc/apache2/sites-available/000-default.conf COPY --from=builder /usr/local /usr/local diff --git a/vhost.conf b/vhost.conf index d295c6c..1838b1f 100644 --- a/vhost.conf +++ b/vhost.conf @@ -9,4 +9,5 @@ RewriteMap preview "prg://usr/local/bin/zuul-preview" RewriteRule "^/notfound" "-" [F] RewriteRule "^/?(.*)$" "${preview:%{ENV:ZUUL_API_URL} %{HTTP_HOST}|http://localhost/notfound}/$1" [P] + SSLProxyEngine on diff --git a/zuul-preview/main.cc b/zuul-preview/main.cc index e5aeff7..5722288 100644 --- a/zuul-preview/main.cc +++ b/zuul-preview/main.cc @@ -165,7 +165,7 @@ int main(int, char**) auto body = response.extract_json().get(); auto artifacts = body["artifacts"].as_array(); - string artifact_url = "Artifact_not_found"; + string artifact_url = "NULL"; for (uint i = 0; i < artifacts.size(); i++) { if (artifacts[i].has_field("metadata") && artifacts[i]["metadata"].has_field("type") && @@ -175,6 +175,11 @@ int main(int, char**) } } + // The apache config is guaranteed to add a / to this, so avoid + // double slashes on the end. + if (artifact_url.back() == '/') { + artifact_url.pop_back(); + } cout << artifact_url << endl; cache.put(hostname, artifact_url);