From 7685ed962e177e66ebb4dd2f2490189e1202b95d Mon Sep 17 00:00:00 2001 From: Willy Kloucek Date: Thu, 21 Jan 2021 21:32:18 +0100 Subject: [PATCH] switch to opencontainers annotation for docker images (https://github.com/opencontainers/image-spec/blob/master/annotations.md) --- .drone.star | 10 +++++++++- ocis/docker/Dockerfile.linux.amd64 | 18 +++++++++++++++--- ocis/docker/Dockerfile.linux.arm | 18 +++++++++++++++--- ocis/docker/Dockerfile.linux.arm64 | 18 +++++++++++++++--- 4 files changed, 54 insertions(+), 10 deletions(-) diff --git a/.drone.star b/.drone.star index 76dcbeefc7..293a1e9ae0 100644 --- a/.drone.star +++ b/.drone.star @@ -688,6 +688,12 @@ def dockerReleases(ctx): return pipelines def dockerRelease(ctx, arch): + build_args = [ + 'REVISION=%s' % (ctx.build.commit), + 'VERSION=%s' % (ctx.build.ref.replace("refs/tags/", "") if ctx.build.event == "tag" else "latest"), + 'CREATED=""', # TODO: add time in RFC 3339 format + ] + return { 'kind': 'pipeline', 'type': 'docker', @@ -709,6 +715,7 @@ def dockerRelease(ctx, arch): 'tags': 'linux-%s' % (arch), 'dockerfile': 'ocis/docker/Dockerfile.linux.%s' % (arch), 'repo': ctx.repo.slug, + 'build_args': build_args, }, 'when': { 'ref': { @@ -733,7 +740,8 @@ def dockerRelease(ctx, arch): 'context': 'ocis', 'auto_tag_suffix': 'linux-%s' % (arch), 'dockerfile': 'ocis/docker/Dockerfile.linux.%s' % (arch), - 'repo': ctx.repo.slug, + 'repo': ctx.build.commit, + 'build_args': build_args, }, 'when': { 'ref': { diff --git a/ocis/docker/Dockerfile.linux.amd64 b/ocis/docker/Dockerfile.linux.amd64 index 59498cabd2..3da328c4dc 100644 --- a/ocis/docker/Dockerfile.linux.amd64 +++ b/ocis/docker/Dockerfile.linux.amd64 @@ -1,5 +1,9 @@ FROM amd64/alpine:3.12 +ARG CREATED="" +ARG VERSION="" +ARG REVISION="" + RUN apk update && \ apk upgrade && \ apk add ca-certificates mailcap && \ @@ -7,9 +11,17 @@ RUN apk update && \ echo 'hosts: files dns' >| /etc/nsswitch.conf LABEL maintainer="ownCloud GmbH " \ - org.label-schema.name="ownCloud Infinite Scale" \ - org.label-schema.vendor="ownCloud GmbH" \ - org.label-schema.schema-version="1.0" + org.opencontainers.image.title="ownCloud Infinite Scale" \ + org.opencontainers.image.vendor="ownCloud GmbH" \ + org.opencontainers.image.authors="ownCloud GmbH" \ + org.opencontainers.image.description="oCIS - ownCloud Infinite Scale is a modern file-sync and share platform" \ + org.opencontainers.image.licenses="Apache-2.0" \ + org.opencontainers.image.documentation="https://owncloud.github.io/ocis.git" \ + org.opencontainers.image.created="${CREATED}" \ + org.opencontainers.image.url="https://hub.docker.com/r/owncloud/ocis" \ + org.opencontainers.image.source="https://github.com/owncloud/ocis" \ + org.opencontainers.image.version="${VERSION}" \ + org.opencontainers.image.revision="${REVISION}" EXPOSE 9200/tcp diff --git a/ocis/docker/Dockerfile.linux.arm b/ocis/docker/Dockerfile.linux.arm index 7825247691..a64c693b70 100644 --- a/ocis/docker/Dockerfile.linux.arm +++ b/ocis/docker/Dockerfile.linux.arm @@ -1,5 +1,9 @@ FROM arm32v6/alpine:3.12 +ARG CREATED="" +ARG VERSION="" +ARG REVISION="" + RUN apk update && \ apk upgrade && \ apk add ca-certificates mailcap && \ @@ -7,9 +11,17 @@ RUN apk update && \ echo 'hosts: files dns' >| /etc/nsswitch.conf LABEL maintainer="ownCloud GmbH " \ - org.label-schema.name="ownCloud Infinite Scale" \ - org.label-schema.vendor="ownCloud GmbH" \ - org.label-schema.schema-version="1.0" + org.opencontainers.image.title="ownCloud Infinite Scale" \ + org.opencontainers.image.vendor="ownCloud GmbH" \ + org.opencontainers.image.authors="ownCloud GmbH" \ + org.opencontainers.image.description="oCIS - ownCloud Infinite Scale is a modern file-sync and share platform" \ + org.opencontainers.image.licenses="Apache-2.0" \ + org.opencontainers.image.documentation="https://owncloud.github.io/ocis.git" \ + org.opencontainers.image.created="${CREATED}" \ + org.opencontainers.image.url="https://hub.docker.com/r/owncloud/ocis" \ + org.opencontainers.image.source="https://github.com/owncloud/ocis" \ + org.opencontainers.image.version="${VERSION}" \ + org.opencontainers.image.revision="${REVISION}" EXPOSE 9200/tcp diff --git a/ocis/docker/Dockerfile.linux.arm64 b/ocis/docker/Dockerfile.linux.arm64 index 2e3afb234c..f355b2cc47 100644 --- a/ocis/docker/Dockerfile.linux.arm64 +++ b/ocis/docker/Dockerfile.linux.arm64 @@ -1,5 +1,9 @@ FROM arm64v8/alpine:3.12 +ARG CREATED="" +ARG VERSION="" +ARG REVISION="" + RUN apk update && \ apk upgrade && \ apk add ca-certificates mailcap && \ @@ -7,9 +11,17 @@ RUN apk update && \ echo 'hosts: files dns' >| /etc/nsswitch.conf LABEL maintainer="ownCloud GmbH " \ - org.label-schema.name="ownCloud Infinite Scale" \ - org.label-schema.vendor="ownCloud GmbH" \ - org.label-schema.schema-version="1.0" + org.opencontainers.image.title="ownCloud Infinite Scale" \ + org.opencontainers.image.vendor="ownCloud GmbH" \ + org.opencontainers.image.authors="ownCloud GmbH" \ + org.opencontainers.image.description="oCIS - ownCloud Infinite Scale is a modern file-sync and share platform" \ + org.opencontainers.image.licenses="Apache-2.0" \ + org.opencontainers.image.documentation="https://owncloud.github.io/ocis.git" \ + org.opencontainers.image.created="${CREATED}" \ + org.opencontainers.image.url="https://hub.docker.com/r/owncloud/ocis" \ + org.opencontainers.image.source="https://github.com/owncloud/ocis" \ + org.opencontainers.image.version="${VERSION}" \ + org.opencontainers.image.revision="${REVISION}" EXPOSE 9200/tcp