Update libgit2 to v1.6.4 #3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: git2go CI | |
on: | |
pull_request: | |
push: | |
branches: | |
- main | |
- release-* | |
- v* | |
jobs: | |
build-static: | |
strategy: | |
fail-fast: false | |
matrix: | |
go: [ '1.11', '1.12', '1.13', '1.14', '1.15', '1.16', '1.17' ] | |
name: Go ${{ matrix.go }} | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Set up Go | |
uses: actions/setup-go@v1 | |
with: | |
go-version: ${{ matrix.go }} | |
id: go | |
- name: Check out code into the Go module directory | |
uses: actions/checkout@v1 | |
- name: Build | |
run: | | |
git submodule update --init | |
sudo apt-get install -y --no-install-recommends libssh2-1-dev | |
make build-libgit2-static | |
- name: Test | |
run: make TEST_ARGS=-test.v test-static | |
build-dynamic: | |
strategy: | |
fail-fast: false | |
name: Go (dynamic) | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Set up Go | |
uses: actions/setup-go@v1 | |
with: | |
go-version: '1.17' | |
id: go | |
- name: Check out code into the Go module directory | |
uses: actions/checkout@v1 | |
- name: Build | |
run: | | |
git submodule update --init | |
sudo apt-get install -y --no-install-recommends libssh2-1-dev | |
make build-libgit2-dynamic | |
- name: Test | |
run: make TEST_ARGS=-test.v test-dynamic | |
build-system-dynamic: | |
strategy: | |
fail-fast: false | |
matrix: | |
libgit2: | |
- 'v1.6.4' | |
name: Go (system-wide, dynamic) | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Set up Go | |
uses: actions/setup-go@v1 | |
with: | |
go-version: '1.17' | |
id: go | |
- name: Check out code into the Go module directory | |
uses: actions/checkout@v1 | |
- name: Build libgit2 ${{ matrix.libgit2 }} | |
run: | | |
git submodule update --init | |
sudo apt-get install -y --no-install-recommends libssh2-1-dev | |
sudo env BUILD_LIBGIT_REF=${{ matrix.libgit2 }} ./script/build-libgit2.sh --dynamic --system | |
- name: Test | |
run: make TEST_ARGS=-test.v test | |
build-system-static: | |
strategy: | |
fail-fast: false | |
name: Go (system-wide, static) | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Set up Go | |
uses: actions/setup-go@v1 | |
with: | |
go-version: '1.17' | |
id: go | |
- name: Check out code into the Go module directory | |
uses: actions/checkout@v1 | |
- name: Build libgit2 | |
run: | | |
git submodule update --init | |
sudo apt-get install -y --no-install-recommends libssh2-1-dev | |
sudo ./script/build-libgit2.sh --static --system | |
- name: Test | |
run: go test --count=1 --tags "static,system_libgit2" ./... | |
check-generate: | |
name: Check generated files were not modified | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Set up Go | |
uses: actions/setup-go@v1 | |
with: | |
go-version: '1.17' | |
id: go | |
- name: Check out code into the Go module directory | |
uses: actions/checkout@v2 | |
- name: Install libgit2 build dependencies | |
run: | | |
git submodule update --init | |
sudo apt-get install -y --no-install-recommends libssh2-1-dev | |
go install golang.org/x/tools/cmd/stringer@latest | |
- name: Generate files | |
run: | | |
export PATH=$(go env GOPATH)/bin:$PATH | |
make generate | |
- name: Check nothing changed | |
run: git diff --quiet --exit-code || (echo "detected changes after generate" ; git status ; exit 1) |