| Giorgi Lekveishvili | 285ab62 | 2023-11-22 13:50:45 +0400 | [diff] [blame] | 1 | ARG TAG=latest |
| 2 | FROM base:${TAG} |
| 3 | |
| 4 | RUN apk update && \ |
| 5 | apk add --no-cache \ |
| 6 | coreutils \ |
| 7 | curl \ |
| 8 | openssh-keygen \ |
| 9 | openjdk11 |
| 10 | |
| 11 | RUN mkdir -p /var/gerrit/bin && \ |
| 12 | mkdir -p /var/gerrit/etc && \ |
| 13 | mkdir -p /var/gerrit/plugins && \ |
| 14 | mkdir -p /var/plugins && \ |
| 15 | mkdir -p /var/war |
| 16 | |
| 17 | # Download Gerrit release |
| 18 | # TODO: Revert back to use release versions as soon as change 383334 has been released |
| 19 | ARG GERRIT_WAR_URL=https://gerrit-ci.gerritforge.com/view/Gerrit/job/Gerrit-bazel-stable-3.8/lastSuccessfulBuild/artifact/gerrit/bazel-bin/release.war |
| 20 | RUN curl -k -o /var/war/gerrit.war ${GERRIT_WAR_URL} && \ |
| 21 | ln -s /var/war/gerrit.war /var/gerrit/bin/gerrit.war |
| 22 | |
| 23 | # Download healthcheck plugin |
| 24 | ARG HEALTHCHECK_JAR_URL=https://gerrit-ci.gerritforge.com/view/Plugins-stable-3.8/job/plugin-healthcheck-bazel-stable-3.8/lastSuccessfulBuild/artifact/bazel-bin/plugins/healthcheck/healthcheck.jar |
| 25 | RUN curl -k -o /var/plugins/healthcheck.jar ${HEALTHCHECK_JAR_URL} && \ |
| 26 | ln -s /var/plugins/healthcheck.jar /var/gerrit/plugins/healthcheck.jar |
| 27 | |
| 28 | # Download global-refdb lib |
| 29 | ARG GLOBAL_REFDB_URL=https://gerrit-ci.gerritforge.com/view/Plugins-stable-3.8/job/module-global-refdb-bazel-stable-3.8/lastSuccessfulBuild/artifact/bazel-bin/plugins/global-refdb/global-refdb.jar |
| 30 | RUN curl -k -o /var/plugins/global-refdb.jar ${GLOBAL_REFDB_URL} |
| 31 | |
| 32 | # Download high-availability plugin |
| 33 | ARG HA_JAR_URL=https://gerrit-ci.gerritforge.com/view/Plugins-stable-3.8/job/plugin-high-availability-bazel-stable-3.8/lastSuccessfulBuild/artifact/bazel-bin/plugins/high-availability/high-availability.jar |
| 34 | RUN curl -k -o /var/plugins/high-availability.jar ${HA_JAR_URL} |
| 35 | |
| 36 | # Download zookeeper-refdb plugin |
| 37 | ARG ZOOKEEPER_REFDB_URL=https://gerrit-ci.gerritforge.com/view/Plugins-stable-3.8/job/plugin-zookeeper-refdb-bazel-stable-3.8/lastSuccessfulBuild/artifact/bazel-bin/plugins/zookeeper-refdb/zookeeper-refdb.jar |
| 38 | RUN curl -k -o /var/plugins/zookeeper-refdb.jar ${ZOOKEEPER_REFDB_URL} |
| 39 | |
| 40 | # Download spanner-refdb plugin |
| 41 | ARG SPANNER_REFDB_URL=https://gerrit-ci.gerritforge.com/view/Plugins-stable-3.8/job/plugin-spanner-refdb-bazel-master-stable-3.8/lastSuccessfulBuild/artifact/bazel-bin/plugins/spanner-refdb/spanner-refdb.jar |
| 42 | RUN curl -k -o /var/plugins/spanner-refdb.jar ${SPANNER_REFDB_URL} |
| 43 | |
| 44 | # Allow incoming traffic |
| 45 | EXPOSE 29418 8080 |
| 46 | |
| 47 | RUN chown -R gerrit:users /var/gerrit && \ |
| 48 | chown -R gerrit:users /var/plugins && \ |
| 49 | chown -R gerrit:users /var/war |
| 50 | USER gerrit |
| 51 | |
| 52 | RUN java -jar /var/gerrit/bin/gerrit.war init \ |
| 53 | --batch \ |
| 54 | --no-auto-start \ |
| 55 | -d /var/gerrit |
| 56 | |
| 57 | ENTRYPOINT ["ash", "/var/tools/start"] |