Merge pull request #4482 from guggero/travis-github-split

github+travis: split CI tasks between Travis and GitHub
This commit is contained in:
Johan T. Halseth 2020-07-24 09:42:14 +02:00 committed by GitHub
commit e64e71d86d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 57 additions and 88 deletions

@ -158,6 +158,50 @@ jobs:
- name: build release for architecture
run: make release sys=${{ matrix.build_sys }}
########################
# mobile compilation
########################
mobile-compile:
name: mobile compilation
runs-on: ubuntu-latest
steps:
- name: git checkout
uses: actions/checkout@v2
- name: go cache
uses: actions/cache@v1
with:
path: /home/runner/work/go
key: lnd-${{ runner.os }}-go-${{ env.GO_VERSION }}-${{ github.job }}-${{ hashFiles('**/go.sum') }}
restore-keys: |
lnd-${{ runner.os }}-go-${{ env.GO_VERSION }}-${{ github.job }}-${{ hashFiles('**/go.sum') }}
lnd-${{ runner.os }}-go-${{ env.GO_VERSION }}-${{ github.job }}-
lnd-${{ runner.os }}-go-${{ env.GO_VERSION }}-
lnd-${{ runner.os }}-go-
- name: setup go ${{ env.GO_VERSION }}
uses: actions/setup-go@v2
with:
go-version: '~${{ env.GO_VERSION }}'
- name: download cache
uses: actions/cache@v1
with:
path: /home/runner/work/download_cache
key: lnd-${{ runner.os }}-download-${{ hashFiles('**/install_travis_proto.sh') }}
restore-keys: |
lnd-${{ runner.os }}-download-${{ hashFiles('**/install_travis_proto.sh') }}
lnd-${{ runner.os }}-download-
- name: install protoc and protobuf libraries
run: ./scripts/install_travis_proto.sh
- name: build mobile RPC bindings
run: make mobile-rpc
- name: build mobile specific code
run: go build --tags="mobile" ./mobile
########################
# run unit tests
########################
@ -211,63 +255,3 @@ jobs:
with:
path-to-profile: coverage.txt
parallel: true
########################
# run integration tests
########################
integration-test:
name: run integration tests
runs-on: ubuntu-latest
strategy:
# Allow other tests in the matrix to continue if one fails.
fail-fast: false
matrix:
backend:
- btcd
- bitcoind
- neutrino
steps:
- name: git checkout
uses: actions/checkout@v2
- name: go cache
uses: actions/cache@v1
with:
path: /home/runner/work/go
key: lnd-${{ runner.os }}-go-${{ env.GO_VERSION }}-${{ github.job }}-${{ hashFiles('**/go.sum') }}
restore-keys: |
lnd-${{ runner.os }}-go-${{ env.GO_VERSION }}-${{ github.job }}-${{ hashFiles('**/go.sum') }}
lnd-${{ runner.os }}-go-${{ env.GO_VERSION }}-${{ github.job }}-
lnd-${{ runner.os }}-go-${{ env.GO_VERSION }}-
lnd-${{ runner.os }}-go-
- name: setup go ${{ env.GO_VERSION }}
uses: actions/setup-go@v2
with:
go-version: '~${{ env.GO_VERSION }}'
- name: bitcoin cache
uses: actions/cache@v1
with:
path: /home/runner/bitcoin/bitcoin-${{ env.BITCOIN_VERSION }}/bin
key: lnd-${{ runner.os }}-bitcoin-${{ env.BITCOIN_VERSION }}
restore-keys: |
lnd-${{ runner.os }}-bitcoin-${{ env.BITCOIN_VERSION }}
- name: install bitcoind
run: bash ./scripts/install_bitcoind.sh
if: matrix.backend == 'bitcoind'
- name: ${{ matrix.backend }} integration
run: make itest backend=${{ matrix.backend }}
- name: package logfiles
run: tar -zcvf itest-logs-${{ matrix.backend }}.tar.gz lntest/itest/*.log
if: failure()
- name: upload logfiles
uses: actions/upload-artifact@v1
if: failure()
with:
name: itest-logs-${{ matrix.backend }}
path: itest-logs-${{ matrix.backend }}.tar.gz

@ -26,37 +26,22 @@ env:
sudo: required
addons:
apt:
packages:
- clang-format
before_script:
- bash ./scripts/install_travis_proto.sh
- bash ./scripts/install_bitcoind.sh
jobs:
include:
- stage: Build
script:
- make rpc-check
- make unit pkg=... case=_NONE_
- make lint workers=1
- make btcd
- make release sys=windows-amd64
- make mobile-rpc
- go build --tags="mobile" ./mobile
- stage: Test
script: make travis-cover
name: Unit Cover
- script: make travis-race
name: Unit Race
- script: make itest
- stage: Integration Test
name: Btcd Integration
- script: make itest backend=bitcoind
name: Bitcoind Integration
- script: make itest backend=neutrino
name: Neutrino Integration
script:
- make itest
- name: Bitcoind Integration
script:
- bash ./scripts/install_bitcoind.sh
- make itest backend=bitcoind
- name: Neutrino Integration
script:
- make itest backend=neutrino
after_script:
- LOG_FILES=./lntest/itest/*.log