1
0
Fork 0

Improvements to versioning and legacy
continuous-integration/drone/push Build is failing Details

test
Ambrose Chua 2020-05-13 11:43:58 +08:00
parent 2ac27f11bd
commit 7ea0fc0f01
Signed by: ambrose
GPG Key ID: BC367D33F140B5C2
5 changed files with 77 additions and 11 deletions

View File

@ -24,7 +24,9 @@ GitCommit: $(git log --format='format:%H' -1)
EOH
caddyVersion="$(_wget "$gitHubUpstreamUrl/raw/master/stackbrew-config.yaml" | grep -oP '(?<=caddy_version: ).+$')"
caddyStackbrew="$(_wget "$gitHubUpstreamUrl/raw/master/stackbrew-config.yaml")"
caddyVersion="$(echo "$caddyStackbrew" | grep -oP '(?<=caddy_version: '"'"').+(?='"'"')')"
caddyMajor="$(echo "$caddyStackbrew" | grep -oP '(?<=caddy_major: '"'"').+(?='"'"')')"
version="${caddyVersion#v}"
versionAliases=($version)
@ -35,11 +37,19 @@ if [[ "$version" =~ "-rc" ]]; then
elif [[ "$version" =~ "-beta" ]]; then
versionAliases+=()
else
versionAliases+=(latest)
versionAliases+=("$caddyMajor" latest)
fi
cat <<-EOE
Tags: $(join ', ' "${versionAliases[@]}")
Architectures: $(join ', ' "${arches[@]}")
Directory: scratch
EOE
cat <<-EOE
Tags: 1.0.5, 1
Architectures: $(join ', ' "${arches[@]}")
Directory: legacy
EOE

51
legacy/Dockerfile Normal file
View File

@ -0,0 +1,51 @@
#
# Build stage
#
FROM golang:1.13-alpine as build
# args
ARG version="1.0.5"
# add plugin import paths here separated by commas
ARG plugins=""
ARG telemetry="true"
# build root
WORKDIR /build
# plugins
COPY plugger.go ./
# build & test
RUN apk add --no-cache git upx ca-certificates \
&& echo -e "module caddy\nrequire github.com/caddyserver/caddy v${version}" > go.mod \
&& go run plugger.go -plugins="${plugins}" -telemetry="${telemetry}" \
&& CGO_ENABLED=0 GOOS=linux GO111MODULE=on go build \
&& upx --ultra-brute caddy \
&& ./caddy -version
#
# Final image
#
FROM scratch
# labels
LABEL org.label-schema.vcs-url="https://github.com/productionwentdown/caddy"
LABEL org.label-schema.version=${version}
LABEL org.label-schema.schema-version="1.0"
# copy binary and ca certs
COPY --from=build /build/caddy /bin/caddy
COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt
# copy default caddyfile
COPY Caddyfile /etc/Caddyfile
# set default caddypath
ENV CADDYPATH=/etc/.caddy
VOLUME /etc/.caddy
# serve from /srv
WORKDIR /srv
EXPOSE 2015
ENTRYPOINT ["/bin/caddy", "--conf", "/etc/Caddyfile", "--log", "stdout"]

View File

@ -2,8 +2,13 @@
Maintainers: Ambrose Chua <ambrose@makerforce.io> (@serverwentdown)
GitRepo: https://github.com/productionwentdown/caddy.git
GitCommit: c97b19e1ddf4f8107ce5004038feb627679ad3f5
GitCommit: 2ac27f11bd8a823ca48bf1a3a9c0673202a3a04d
Tags: 2.0.0-rc.1, test
Tags: 2.0.0, 2, latest
Architectures: amd64
Directory: scratch
Tags: 1.0.5, 1
Architectures: amd64
Directory: legacy

View File

@ -1,4 +1,4 @@
FROM caddy/caddy:2.0.0-rc.1 as build
FROM caddy/caddy:2.0.0-alpine as build
RUN apk add --no-cache upx ca-certificates && upx --ultra-brute /usr/bin/caddy && caddy version
@ -16,7 +16,7 @@ ENV HOME=/
VOLUME /config
VOLUME /data
LABEL org.opencontainers.image.version=v2.0.0-rc.1
LABEL org.opencontainers.image.version=2.0.0
LABEL org.opencontainers.image.title="Caddy (productionwentdown)"
LABEL org.opencontainers.image.description="a powerful, enterprise-ready, open source web server with automatic HTTPS written in Go"
LABEL org.opencontainers.image.url=https://productionwentdown.github.io
@ -29,4 +29,4 @@ EXPOSE 80
EXPOSE 443
EXPOSE 2019
ENTRYPOINT ["/usr/bin/caddy", "run", "--config", "/etc/caddy/Caddyfile", "--adapter", "caddyfile"]
CMD ["caddy", "run", "--config", "/etc/caddy/Caddyfile", "--adapter", "caddyfile"]

View File

@ -14,11 +14,11 @@ _wget() {
wget -qO- -o /dev/null "$@"
}
caddyVersion="$(_wget "$gitHubUpstreamUrl/raw/master/stackbrew-config.yaml" | grep -oP '(?<=caddy_version: ).+$')"
version="${caddyVersion#v}"
caddyStackbrew="$(_wget "$gitHubUpstreamUrl/raw/master/stackbrew-config.yaml")"
caddyVersion="$(echo "$caddyStackbrew" | grep -oP '(?<=caddy_version: '"'"').+(?='"'"')')"
cat > scratch/Dockerfile <<-EODF
FROM caddy/caddy:$version as build
FROM caddy/caddy:$caddyVersion-alpine as build
RUN apk add --no-cache upx ca-certificates \
&& upx --ultra-brute /usr/bin/caddy \
@ -51,5 +51,5 @@ EXPOSE 80
EXPOSE 443
EXPOSE 2019
ENTRYPOINT ["/usr/bin/caddy", "run", "--config", "/etc/caddy/Caddyfile", "--adapter", "caddyfile"]
CMD ["caddy", "run", "--config", "/etc/caddy/Caddyfile", "--adapter", "caddyfile"]
EODF