name: Render and Lint Documentation on: pull_request: branches_ignore: [] jobs: build: runs-on: ubuntu-latest strategy: matrix: # current Go releases plus the version in the go.mod are tested go: ['go.mod', 'oldstable', 'stable'] # https://github.com/actions/setup-go/tree/v5#getting-go-version-from-the-gomod-file # https://github.com/actions/setup-go/tree/v5#using-stableoldstable-aliases env: RELEASE_GO_VER: "1.23" name: Documentation and Linting steps: - uses: actions/checkout@v4 with: path: go/src/github.com/opencontainers/image-spec - uses: actions/setup-go@v5 with: go-version: ${{ matrix.go != 'go.mod' && matrix.go || null }} go-version-file: ${{ matrix.go == 'go.mod' && 'go/src/github.com/opencontainers/image-spec/go.mod' || null }} cache-dependency-path: go/src/github.com/opencontainers/image-spec/go.sum - name: Render and Lint env: GOPATH: /home/runner/work/image-spec/image-spec/go # do not automatically upgrade go to a different version: https://go.dev/doc/toolchain GOTOOLCHAIN: local run: | export PATH=$GOPATH/bin:$PATH cd go/src/github.com/opencontainers/image-spec make install.tools go get -t -d ./... ls ../ make make .gitvalidation make lint make check-license make test make docs - name: documentation artifacts uses: actions/upload-artifact@v4 if: matrix.go == env.RELEASE_GO_VER with: name: oci-docs path: go/src/github.com/opencontainers/image-spec/output