name: Main on: push: branches: - master pull_request: jobs: main: name: Main Process runs-on: ubuntu-latest env: GO_VERSION: stable GOLANGCI_LINT_VERSION: ${{vars.GOLANGCI_LINT_VERSION}} HUGO_VERSION: ${{vars.HUGO_VERSION}} CGO_ENABLED: 0 LEGO_E2E_TESTS: CI MEMCACHED_HOSTS: localhost:11211 steps: # https://github.com/marketplace/actions/checkout - name: Check out code uses: actions/checkout@v4 with: fetch-depth: 0 # https://github.com/marketplace/actions/setup-go-environment - name: Set up Go ${{ env.GO_VERSION }} uses: actions/setup-go@v5 with: go-version: ${{ env.GO_VERSION }} - name: Check and get dependencies run: | go mod tidy git diff --exit-code go.mod git diff --exit-code go.sum # https://golangci-lint.run/usage/install#other-ci - name: Install golangci-lint ${{ env.GOLANGCI_LINT_VERSION }} run: | curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin ${GOLANGCI_LINT_VERSION} golangci-lint --version - name: Install Pebble run: go install github.com/letsencrypt/pebble/v2/cmd/pebble@main - name: Install challtestsrv run: go install github.com/letsencrypt/pebble/v2/cmd/pebble-challtestsrv@main - name: Set up a Memcached server uses: niden/actions-memcached@v7 - name: Setup /etc/hosts run: | echo "127.0.0.1 acme.wtf" | sudo tee -a /etc/hosts echo "127.0.0.1 lego.wtf" | sudo tee -a /etc/hosts echo "127.0.0.1 acme.lego.wtf" | sudo tee -a /etc/hosts echo "127.0.0.1 légô.wtf" | sudo tee -a /etc/hosts echo "127.0.0.1 xn--lg-bja9b.wtf" | sudo tee -a /etc/hosts - name: Make run: | make make clean - name: Install Hugo run: | wget -O /tmp/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_${HUGO_VERSION}_Linux-amd64.deb sudo dpkg -i /tmp/hugo.deb - name: Build Documentation run: make docs-build