diff --git a/.dockerignore b/.dockerignore index 70f5bfe7..ee191361 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,4 +1,3 @@ -.git lego.exe lego .lego diff --git a/CHANGELOG.md b/CHANGELOG.md index 1f2fee7f..325d6350 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,23 @@ # Changelog +## [v1.2.0] - 2018-11-04 + +### Added: +- **[dnsprovider]** Add DNS Provider for ConoHa DNS +- **[dnsprovider]** Add DNS Provider for MyDNS.jp +- **[dnsprovider]** Add DNS Provider for Selectel + +### Fixed: +- **[dnsprovider]** netcup: make unmarshalling of api-responses more lenient. + +### Changed: +- **[dnsprovider]** aurora: change DNS client +- **[dnsprovider]** azure: update auth to support instance metadata service +- **[dnsprovider]** dnsmadeeasy: log response body on error +- **[lib]** TLS-ALPN-01: Update idPeAcmeIdentifierV1, draft refs. +- **[lib]** Do not send a JWS body when POSTing challenges. +- **[lib]** Support POST-as-GET. + ## [v1.1.0] - 2018-10-16 ### Added: diff --git a/Dockerfile b/Dockerfile index 58098f98..a536396e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,12 +1,14 @@ -FROM golang:alpine3.7 as builder +FROM golang:alpine3.8 as builder -ARG LEGO_VERSION=dev +RUN apk --update upgrade \ +&& apk --no-cache --no-progress add make git \ +&& rm -rf /var/cache/apk/* WORKDIR /go/src/github.com/xenolf/lego COPY . . -RUN go build -ldflags="-s -X main.version=${LEGO_VERSION}" +RUN make version-build -FROM alpine:3.7 +FROM alpine:3.8 RUN apk update && apk add --no-cache --virtual ca-certificates COPY --from=builder /go/src/github.com/xenolf/lego/lego /usr/bin/lego ENTRYPOINT [ "/usr/bin/lego" ] diff --git a/Makefile b/Makefile index ee97e8c4..4a2f1f1c 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,10 @@ -.PHONY: all +.PHONY: clean checks test build image dependencies -GOFILES := $(shell go list -f '{{range $$index, $$element := .GoFiles}}{{$$.Dir}}/{{$$element}}{{"\n"}}{{end}}' ./... | grep -v '/vendor/') +LEGO_IMAGE := xenolf/lego + +TAG_NAME := $(shell git tag -l --contains HEAD) +SHA := $(shell git rev-parse HEAD) +VERSION := $(if $(TAG_NAME),$(TAG_NAME),$(SHA)) default: clean checks test build @@ -8,7 +12,8 @@ clean: rm -rf dist/ builds/ cover.out build: clean - go build + @echo Version: $(VERSION) + go build -v -ldflags '-X "main.version=${VERSION}"' dependencies: dep ensure -v @@ -19,6 +24,6 @@ test: clean checks: golangci-lint run -check-fmt: SHELL := /bin/bash -check-fmt: - diff -u <(echo -n) <(gofmt -d $(GOFILES)) +image: + @echo Version: $(VERSION) + docker build -t $(LEGO_IMAGE) . diff --git a/README.md b/README.md index 528b1741..6eb1884e 100644 --- a/README.md +++ b/README.md @@ -10,43 +10,33 @@ Let's Encrypt client and ACME library written in Go ## Installation -lego supports both binary installs and install from source. +### Binaries To get the binary just download the latest release for your OS/Arch from [the release page](https://github.com/xenolf/lego/releases) and put the binary somewhere convenient. lego does not assume anything about the location you run it from. +### From Docker + +```bash +docker run xenolf/lego -h +``` + +### From the package manager + +- [ArchLinux (AUR)](https://aur.archlinux.org/packages/lego-git): + +```bash +yaourt -S lego-git +``` + +### From source + To install from source, just run: ```bash go get -u github.com/xenolf/lego ``` -To build lego inside a Docker container, just run: -```bash -docker build -t lego . -``` - -That will build lego from the current source, if you want to build a different -version, you can checkout the desired branch/tag/commit, and re-running the -above mentioned command. - -If you want to tag the binary with the designated release, you can do so by -passing the version identifier as a [`--build-arg`](https://docs.docker.com/engine/reference/commandline/build/#set-build-time-variables---build-arg) - -```bash -docker build --build-arg LEGO_VERSION=v1.1.0 -t lego . -``` - -Otherwise the release will be tagged with the `dev` version identifier. - -### From the package manager - -- [ArchLinux (AUR)](https://aur.archlinux.org/packages/lego-git): - - ```bash - yaourt -S lego-git - ``` - ## Features - Register with CA