104 lines
2.3 KiB
YAML
104 lines
2.3 KiB
YAML
language: go
|
|
|
|
cache:
|
|
directories:
|
|
- $GOPATH/pkg/mod
|
|
|
|
matrix:
|
|
fast_finish: true
|
|
include:
|
|
- go: 1.14.x
|
|
env: STABLE=true
|
|
- go: 1.x
|
|
- go: tip
|
|
allow_failures:
|
|
- go: tip
|
|
|
|
go_import_path: github.com/go-acme/lego
|
|
|
|
env:
|
|
global:
|
|
- MEMCACHED_HOSTS=localhost:11211
|
|
- GO111MODULE=on
|
|
|
|
services:
|
|
- memcached
|
|
|
|
addons:
|
|
hosts:
|
|
# for e2e tests
|
|
- acme.wtf
|
|
- lego.wtf
|
|
- acme.lego.wtf
|
|
- légô.wtf
|
|
- xn--lg-bja9b.wtf
|
|
|
|
before_install:
|
|
- '[ "${TRAVIS_PULL_REQUEST}" = "false" ] && openssl aes-256-cbc -K $encrypted_26c593b079d9_key -iv $encrypted_26c593b079d9_iv -in .gitcookies.enc -out .gitcookies -d || true'
|
|
|
|
# Install Pebble and challtestsrv
|
|
- GO111MODULE=off go get -u github.com/letsencrypt/pebble/...
|
|
|
|
# Install linters and misspell
|
|
- curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | bash -s -- -b $GOPATH/bin ${GOLANGCI_LINT_VERSION}
|
|
- golangci-lint --version
|
|
|
|
# Hugo - documentation
|
|
- wget -O /tmp/hugo.deb https://github.com/gohugoio/hugo/releases/download/v0.54.0/hugo_0.54.0_Linux-64bit.deb
|
|
- sudo dpkg -i /tmp/hugo.deb
|
|
|
|
# Install Docker image multi-arch builder
|
|
- curl -sfL https://raw.githubusercontent.com/ldez/seihon/master/godownloader.sh | bash -s -- -b "${GOPATH}/bin" ${SEIHON_VERSION}
|
|
- seihon --version
|
|
|
|
install:
|
|
- go mod tidy
|
|
- git diff --exit-code go.mod
|
|
- git diff --exit-code go.sum
|
|
- go mod download
|
|
|
|
before_script:
|
|
- make validate-doc
|
|
|
|
after_success:
|
|
- make clean
|
|
|
|
before_deploy:
|
|
- >
|
|
if ! [ "$BEFORE_DEPLOY_RUN" ]; then
|
|
export BEFORE_DEPLOY_RUN=1;
|
|
make docs-build;
|
|
echo "${DOCKER_PASSWORD}" | docker login -u "${DOCKER_USERNAME}" --password-stdin;
|
|
fi
|
|
|
|
deploy:
|
|
- provider: pages
|
|
local_dir: docs/public
|
|
skip_cleanup: true
|
|
github_token: ${GITHUB_TOKEN}
|
|
on:
|
|
condition: $STABLE = true
|
|
|
|
- provider: script
|
|
skip_cleanup: true
|
|
script: curl -sL https://git.io/goreleaser | bash
|
|
on:
|
|
tags: true
|
|
condition: $STABLE = true
|
|
|
|
- provider: releases
|
|
api_key: ${GITHUB_TOKEN}
|
|
file: dist/lego_*
|
|
skip_cleanup: true
|
|
overwrite: true
|
|
file_glob: true
|
|
on:
|
|
tags: true
|
|
condition: $STABLE = true
|
|
|
|
- provider: script
|
|
skip_cleanup: true
|
|
script: make publish-images
|
|
on:
|
|
tags: true
|
|
condition: $STABLE = true
|