mirror of
https://github.com/VinylDNS/vinyldns
synced 2025-08-22 02:02:14 +00:00
- Simplify build config - Add TTY check to Makefiles for running Docker containers - Update `fs2` to latest patch - Update `sbt-assembly` plugin - Update portal to remove chatty console - Update portal scripts to add license header - Update prepare-portal/Gruntfile to combine js and css where applicable - Remove unused gentelella files from final portal artifact - Add support for shared zones to quickstart/docker images - Consolidate built artifacts in `artifacts/` to make eventual release easier
34 lines
1.1 KiB
Docker
34 lines
1.1 KiB
Docker
ARG VINYLDNS_BASE_VERSION=latest
|
|
|
|
# Build VinylDNS API if the JAR doesn't already exist
|
|
FROM vinyldns/build:base-build as base-build
|
|
ARG DOCKERFILE_PATH="test/api/integration"
|
|
COPY "${DOCKERFILE_PATH}/vinyldns.*" /opt/vinyldns/
|
|
COPY . /build/
|
|
WORKDIR /build
|
|
|
|
## Run the build if we don't already have a vinyldns.jar
|
|
RUN if [ -f assembly/vinyldns.jar ]; then cp assembly/vinyldns.jar /opt/vinyldns; fi && \
|
|
if [ ! -f /opt/vinyldns/vinyldns.jar ]; then \
|
|
env SBT_OPTS="-XX:+UseConcMarkSweepGC -Xmx4G -Xms1G" \
|
|
sbt -Dbuild.scalafmtOnCompile=false -Dbuild.lintOnCompile=fase ";project api;coverageOff;assembly" \
|
|
&& cp assembly/vinyldns.jar /opt/vinyldns/; \
|
|
fi
|
|
|
|
# Build the testing image, copying data from `base-build`
|
|
FROM vinyldns/build:base-test-integration-${VINYLDNS_BASE_VERSION}
|
|
SHELL ["/bin/bash","-c"]
|
|
ARG DOCKERFILE_PATH
|
|
COPY --from=base-build /opt/vinyldns /opt/vinyldns
|
|
|
|
# Copy the project contents
|
|
COPY . /build/
|
|
WORKDIR /build
|
|
|
|
# Local bind server files
|
|
COPY quickstart/bind9/etc/named.conf.* /etc/bind/
|
|
COPY quickstart/bind9/zones/ /var/bind/
|
|
RUN named-checkconf
|
|
|
|
ENV RUN_SERVICES="all"
|