diff --git a/packaging/docker/Dockerfile.app b/packaging/docker/Dockerfile.app index 6839dbd45..514db8d7f 100644 --- a/packaging/docker/Dockerfile.app +++ b/packaging/docker/Dockerfile.app @@ -26,17 +26,11 @@ FROM fedora:27 -LABEL \ - org.label-schema.schema-version = "1.0" \ - org.label-schema.name = "VILLASnode" \ - org.label-schema.license = "GPL-3.0" \ - org.label-schema.vendor = "Institute for Automation of Complex Power Systems, RWTH Aachen University" \ - org.label-schema.author.name = "Steffen Vogel" \ - org.label-schema.author.email = "stvogel@eonerc.rwth-aachen.de" \ - org.label-schema.description = "A image containing for VILLASnode based on Fedora" \ - org.label-schema.url = "http://fein-aachen.org/projects/villas-framework/" \ - org.label-schema.vcs-url = "https://git.rwth-aachen.de/VILLASframework/VILLASnode" \ - org.label-schema.usage = "https://villas.fein-aachen.org/doc/node-installation.html#node-installation-docker" + +ARG GIT_REV=unkown +ARG GIT_BRANCH=unkown +ARG VERSION=unkown +ARG VARIANT=unkown # Some of the dependencies are only available in our own repo ADD https://packages.fein-aachen.org/redhat/fein.repo /etc/yum.repos.d/ @@ -68,3 +62,19 @@ EXPOSE 80 EXPOSE 443 ENTRYPOINT ["villas"] + +LABEL \ + org.label-schema.schema-version = "1.0" \ + org.label-schema.name = "VILLASnode" \ + org.label-schema.license = "GPL-3.0" \ + org.label-schema.vcs-ref="$GIT_REV" \ + org.label-schema.vcs-branch="$GIT_BRANCH" \ + org.label-schema.version="$VERSION" \ + org.label-schema.variant="$VARIANT" \ + org.label-schema.vendor = "Institute for Automation of Complex Power Systems, RWTH Aachen University" \ + org.label-schema.author.name = "Steffen Vogel" \ + org.label-schema.author.email = "stvogel@eonerc.rwth-aachen.de" \ + org.label-schema.description = "A image containing for VILLASnode based on Fedora" \ + org.label-schema.url = "http://fein-aachen.org/projects/villas-framework/" \ + org.label-schema.vcs-url = "https://git.rwth-aachen.de/VILLASframework/VILLASnode" \ + org.label-schema.usage = "https://villas.fein-aachen.org/doc/node-installation.html#node-installation-docker" diff --git a/packaging/docker/Dockerfile.dev b/packaging/docker/Dockerfile.dev index 04bdd0638..63e5d74d7 100644 --- a/packaging/docker/Dockerfile.dev +++ b/packaging/docker/Dockerfile.dev @@ -30,17 +30,10 @@ FROM fedora:27 -LABEL \ - org.label-schema.schema-version="1.0" \ - org.label-schema.name="VILLASnode" \ - org.label-schema.license="GPL-3.0" \ - org.label-schema.vendor="Institute for Automation of Complex Power Systems, RWTH Aachen University" \ - org.label-schema.author.name="Steffen Vogel" \ - org.label-schema.author.email="stvogel@eonerc.rwth-aachen.de" \ - org.label-schema.description="A image containing all build-time dependencies for VILLASnode based on Fedora" \ - org.label-schema.url="http://fein-aachen.org/projects/villas-framework/" \ - org.label-schema.vcs-url="https://git.rwth-aachen.de/VILLASframework/VILLASnode" \ - org.label-schema.usage="https://villas.fein-aachen.org/doc/node-installation.html#node-installation-docker" +ARG GIT_REV=unkown +ARG GIT_BRANCH=unkown +ARG VERSION=unkown +ARG VARIANT=unkown # Toolchain RUN dnf -y install \ @@ -104,3 +97,19 @@ ENV LD_LIBRARY_PATH /usr/local/lib:/usr/local/lib64 WORKDIR /villas ENTRYPOINT bash + +LABEL \ + org.label-schema.schema-version="1.0" \ + org.label-schema.name="VILLASnode" \ + org.label-schema.license="GPL-3.0" \ + org.label-schema.vcs-ref="$GIT_REV" \ + org.label-schema.vcs-branch="$GIT_BRANCH" \ + org.label-schema.version="$VERSION" \ + org.label-schema.variant="$VARIANT" \ + org.label-schema.vendor="Institute for Automation of Complex Power Systems, RWTH Aachen University" \ + org.label-schema.author.name="Steffen Vogel" \ + org.label-schema.author.email="stvogel@eonerc.rwth-aachen.de" \ + org.label-schema.description="A image containing all build-time dependencies for VILLASnode based on Fedora" \ + org.label-schema.url="http://fein-aachen.org/projects/villas-framework/" \ + org.label-schema.vcs-url="https://git.rwth-aachen.de/VILLASframework/VILLASnode" \ + org.label-schema.usage="https://villas.fein-aachen.org/doc/node-installation.html#node-installation-docker" diff --git a/packaging/docker/Dockerfile.dev-centos b/packaging/docker/Dockerfile.dev-centos index 35c164a6a..575ba79c6 100644 --- a/packaging/docker/Dockerfile.dev-centos +++ b/packaging/docker/Dockerfile.dev-centos @@ -30,17 +30,10 @@ FROM centos:7 -LABEL \ - org.label-schema.schema-version = "1.0" \ - org.label-schema.name = "VILLASnode" \ - org.label-schema.license = "GPL-3.0" \ - org.label-schema.vendor = "Institute for Automation of Complex Power Systems, RWTH Aachen University" \ - org.label-schema.author.name = "Steffen Vogel" \ - org.label-schema.author.email = "stvogel@eonerc.rwth-aachen.de" \ - org.label-schema.description = "A image containing all build-time dependencies for VILLASnode based on CentOS" \ - org.label-schema.url = "http://fein-aachen.org/projects/villas-framework/" \ - org.label-schema.vcs-url = "https://git.rwth-aachen.de/VILLASframework/VILLASnode" \ - org.label-schema.usage = "https://villas.fein-aachen.org/doc/node-installation.html#node-installation-docker" +ARG GIT_REV=unkown +ARG GIT_BRANCH=unkown +ARG VERSION=unkown +ARG VARIANT=unkown # Some of the dependencies are only available in our own repo ADD https://villas.fein-aachen.org/packages/villas.repo /etc/yum.repos.d/ @@ -113,3 +106,19 @@ ENV LD_LIBRARY_PATH /usr/local/lib:/usr/local/lib64 WORKDIR /villas ENTRYPOINT scl enable devtoolset-6 bash + +LABEL \ + org.label-schema.schema-version="1.0" \ + org.label-schema.name="VILLASnode" \ + org.label-schema.license="GPL-3.0" \ + org.label-schema.vcs-ref="$GIT_REV" \ + org.label-schema.vcs-branch="$GIT_BRANCH" \ + org.label-schema.version="$VERSION" \ + org.label-schema.variant="$VARIANT" \ + org.label-schema.vendor="Institute for Automation of Complex Power Systems, RWTH Aachen University" \ + org.label-schema.author.name="Steffen Vogel" \ + org.label-schema.author.email="stvogel@eonerc.rwth-aachen.de" \ + org.label-schema.description="A image containing all build-time dependencies for VILLASnode based on CentOS" \ + org.label-schema.url="http://fein-aachen.org/projects/villas-framework/" \ + org.label-schema.vcs-url="https://git.rwth-aachen.de/VILLASframework/VILLASnode" \ + org.label-schema.usage="https://villas.fein-aachen.org/doc/node-installation.html#node-installation-docker" diff --git a/packaging/docker/Dockerfile.dev-ubuntu b/packaging/docker/Dockerfile.dev-ubuntu index 8f5330b8a..32685b9d4 100644 --- a/packaging/docker/Dockerfile.dev-ubuntu +++ b/packaging/docker/Dockerfile.dev-ubuntu @@ -32,17 +32,10 @@ FROM ubuntu:xenial #FROM debian:jessie -LABEL \ - org.label-schema.schema-version = "1.0" \ - org.label-schema.name = "VILLASnode" \ - org.label-schema.license = "GPL-3.0" \ - org.label-schema.vendor = "Institute for Automation of Complex Power Systems, RWTH Aachen University" \ - org.label-schema.author.name = "Steffen Vogel" \ - org.label-schema.author.email = "stvogel@eonerc.rwth-aachen.de" \ - org.label-schema.description = "A image containing all build-time dependencies for VILLASnode based on Ubuntu" \ - org.label-schema.url = "http://fein-aachen.org/projects/villas-framework/" \ - org.label-schema.vcs-url = "https://git.rwth-aachen.de/VILLASframework/VILLASnode" \ - org.label-schema.usage = "https://villas.fein-aachen.org/doc/node-installation.html#node-installation-docker" +ARG GIT_REV=unkown +ARG GIT_BRANCH=unkown +ARG VERSION=unkown +ARG VARIANT=unkown # Toolchain RUN apt-get update && apt-get install -y \ @@ -107,3 +100,19 @@ RUN ln -s /usr/lib64/tc /usr/lib/tc WORKDIR /villas ENTRYPOINT bash + +LABEL \ + org.label-schema.schema-version="1.0" \ + org.label-schema.name="VILLASnode" \ + org.label-schema.license="GPL-3.0" \ + org.label-schema.vcs-ref="$GIT_REV" \ + org.label-schema.vcs-branch="$GIT_BRANCH" \ + org.label-schema.version="$VERSION" \ + org.label-schema.variant="$VARIANT" \ + org.label-schema.vendor="Institute for Automation of Complex Power Systems, RWTH Aachen University" \ + org.label-schema.author.name="Steffen Vogel" \ + org.label-schema.author.email="stvogel@eonerc.rwth-aachen.de" \ + org.label-schema.description="A image containing all build-time dependencies for VILLASnode based on Ubuntu" \ + org.label-schema.url="http://fein-aachen.org/projects/villas-framework/" \ + org.label-schema.vcs-url="https://git.rwth-aachen.de/VILLASframework/VILLASnode" \ + org.label-schema.usage="https://villas.fein-aachen.org/doc/node-installation.html#node-installation-docker" diff --git a/packaging/docker/Makefile.inc b/packaging/docker/Makefile.inc index 48d81ec6c..8763ca3fa 100644 --- a/packaging/docker/Makefile.inc +++ b/packaging/docker/Makefile.inc @@ -54,13 +54,16 @@ $(DOCKER_TARGETS): docker-%: $(BUILDDIR)/packaging/docker/Image.% # id to an file. Make is using the modification timestamp of this file and the Dockerfile # to determine when the image needs to be rebuild. $(BUILDDIR)/packaging/docker/Image.%: packaging/docker/Dockerfile.% | $(BUILDDIR)/packaging/docker/ - $(DOCKER) build --pull \ + $(DOCKER) build \ --file $< --iidfile $@ \ --tag $(DOCKER_IMAGE)-$*:$(DOCKER_TAG) \ - --label org.label-schema.vcs-ref="$(GIT_REV)" \ - --label org.label-schema.vcs-branch="$(GIT_BRANCH)" \ - --label org.label-schema.version="$(VERSION)" \ - --label org.label-schema.variant="$(VARIANT)" \ - $(SRCDIR) + --tag $(DOCKER_IMAGE)-$*:latest \ + --build-arg BUILDER_IMAGE=$(DOCKER_IMAGE)-dev:$(DOCKER_TAG) \ + --build-arg DOCKER_TAG=${DOCKER_TAG} \ + --build-arg GIT_BRANCH=${GIT_BRANCH} \ + --build-arg GIT_REV=${GIT_REV} \ + --build-arg VERSION=${VERSION} \ + --build-arg VARIANT=${VARIANT} \ + $(DOCKER_OPTS) $(SRCDIR) .PHONY: $(DOCKER_TARGETS) $(DOCKER_RUN_TARGETS) $(DOCKER_DEPLOY_TARGETS)