diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index d1fa4b52a..ded83acbe 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -111,7 +111,7 @@ jobs: ######################## check-commits: if: github.event_name == 'pull_request' - name: check commits + name: Check commits runs-on: ubuntu-latest steps: - name: git checkout @@ -137,7 +137,7 @@ jobs: # lint code ######################## lint: - name: lint code + name: Lint code runs-on: ubuntu-latest steps: - name: git checkout @@ -160,7 +160,7 @@ jobs: # cross compilation ######################## cross-compile: - name: cross compilation + name: Cross compilation runs-on: ubuntu-latest strategy: fail-fast: true @@ -174,27 +174,27 @@ jobs: - name: arm sys: darwin-arm64 freebsd-arm linux-armv6 linux-armv7 linux-arm64 windows-arm steps: - - name: git checkout + - name: Git checkout uses: actions/checkout@v4 - name: Clean up runner space uses: ./.github/actions/cleanup-space - - name: setup go ${{ env.GO_VERSION }} + - name: Setup go ${{ env.GO_VERSION }} uses: ./.github/actions/setup-go with: go-version: '${{ env.GO_VERSION }}' key-prefix: cross-compile use-build-cache: 'no' - - name: build release for all architectures + - name: Build release for all architectures run: make release sys="${{ matrix.sys }}" ######################## # run unit tests ######################## unit-test: - name: run unit tests + name: Run unit tests runs-on: ubuntu-latest strategy: # Allow other tests in the matrix to continue if one fails. @@ -211,7 +211,7 @@ jobs: - unit-module steps: - - name: git checkout + - name: Git checkout uses: actions/checkout@v4 with: fetch-depth: 0 @@ -219,29 +219,29 @@ jobs: - name: Clean up runner space uses: ./.github/actions/cleanup-space - - name: fetch and rebase on ${{ github.base_ref }} + - name: Fetch and rebase on ${{ github.base_ref }} if: github.event_name == 'pull_request' uses: ./.github/actions/rebase - - name: git checkout fuzzing seeds + - name: Git checkout fuzzing seeds uses: actions/checkout@v4 with: repository: lightninglabs/lnd-fuzz path: lnd-fuzz - - name: rsync fuzzing seeds + - name: Rsync fuzzing seeds run: rsync -a --ignore-existing lnd-fuzz/ ./ - - name: setup go ${{ env.GO_VERSION }} + - name: Setup go ${{ env.GO_VERSION }} uses: ./.github/actions/setup-go with: go-version: '${{ env.GO_VERSION }}' key-prefix: unit-test - - name: install bitcoind + - name: Install bitcoind run: ./scripts/install_bitcoind.sh $BITCOIN_VERSION - - name: run ${{ matrix.unit_type }} + - name: Run ${{ matrix.unit_type }} run: make ${{ matrix.unit_type }} - name: Clean coverage @@ -263,7 +263,7 @@ jobs: # run integration tests with TRANCHES ######################## basic-integration-test: - name: basic itests + name: Run basic itests runs-on: ubuntu-latest if: '!contains(github.event.pull_request.labels.*.name, ''no-itest'')' strategy: @@ -280,7 +280,7 @@ jobs: - name: neutrino args: backend=neutrino cover=1 steps: - - name: git checkout + - name: Git checkout uses: actions/checkout@v4 with: fetch-depth: 0 @@ -288,20 +288,20 @@ jobs: - name: Clean up runner space uses: ./.github/actions/cleanup-space - - name: fetch and rebase on ${{ github.base_ref }} + - name: Fetch and rebase on ${{ github.base_ref }} if: github.event_name == 'pull_request' uses: ./.github/actions/rebase - - name: setup go ${{ env.GO_VERSION }} + - name: Setup go ${{ env.GO_VERSION }} uses: ./.github/actions/setup-go with: go-version: '${{ env.GO_VERSION }}' key-prefix: integration-test - - name: install bitcoind + - name: Install bitcoind run: ./scripts/install_bitcoind.sh $BITCOIN_VERSION - - name: run ${{ matrix.name }} + - name: Run ${{ matrix.name }} run: make itest-parallel tranches=${{ env.TRANCHES }} ${{ matrix.args }} shuffleseed=${{ github.run_id }}${{ strategy.job-index }} - name: Clean coverage @@ -335,7 +335,7 @@ jobs: # run integration tests with SMALL_TRANCHES ######################## integration-test: - name: itests + name: Run itests runs-on: ubuntu-latest if: '!contains(github.event.pull_request.labels.*.name, ''no-itest'')' strategy: @@ -360,7 +360,7 @@ jobs: - name: bitcoind-postgres-nativesql-experiment args: backend=bitcoind dbbackend=postgres nativesql=true tags=test_native_sql steps: - - name: git checkout + - name: Git checkout uses: actions/checkout@v4 with: fetch-depth: 0 @@ -368,20 +368,20 @@ jobs: - name: Clean up runner space uses: ./.github/actions/cleanup-space - - name: fetch and rebase on ${{ github.base_ref }} + - name: Fetch and rebase on ${{ github.base_ref }} if: github.event_name == 'pull_request' uses: ./.github/actions/rebase - - name: setup go ${{ env.GO_VERSION }} + - name: Setup go ${{ env.GO_VERSION }} uses: ./.github/actions/setup-go with: go-version: '${{ env.GO_VERSION }}' key-prefix: integration-test - - name: install bitcoind + - name: Install bitcoind run: ./scripts/install_bitcoind.sh $BITCOIN_VERSION - - name: run ${{ matrix.name }} + - name: Run ${{ matrix.name }} run: make itest-parallel tranches=${{ env.SMALL_TRANCHES }} ${{ matrix.args }} shuffleseed=${{ github.run_id }}${{ strategy.job-index }} - name: Clean coverage @@ -416,29 +416,29 @@ jobs: # run windows integration test ######################## windows-integration-test: - name: windows itest + name: Run windows itest runs-on: windows-latest if: '!contains(github.event.pull_request.labels.*.name, ''no-itest'')' steps: - - name: git checkout + - name: Git checkout uses: actions/checkout@v4 with: fetch-depth: 0 - - name: fetch and rebase on ${{ github.base_ref }} + - name: Fetch and rebase on ${{ github.base_ref }} if: github.event_name == 'pull_request' uses: ./.github/actions/rebase - - name: setup go ${{ env.GO_VERSION }} + - name: Setup go ${{ env.GO_VERSION }} uses: ./.github/actions/setup-go with: go-version: '${{ env.GO_VERSION }}' key-prefix: integration-test - - name: run itest + - name: Run itest run: make itest-parallel tranches=${{ env.SMALL_TRANCHES }} windows=1 shuffleseed=${{ github.run_id }} - - name: kill any remaining lnd processes + - name: Kill any remaining lnd processes if: ${{ failure() }} shell: powershell run: taskkill /IM lnd-itest.exe /T /F @@ -460,26 +460,26 @@ jobs: # run macOS integration test ######################## macos-integration-test: - name: macOS itest + name: Run macOS itest runs-on: macos-14 if: '!contains(github.event.pull_request.labels.*.name, ''no-itest'')' steps: - - name: git checkout + - name: Git checkout uses: actions/checkout@v4 with: fetch-depth: 0 - - name: fetch and rebase on ${{ github.base_ref }} + - name: Fetch and rebase on ${{ github.base_ref }} if: github.event_name == 'pull_request' uses: ./.github/actions/rebase - - name: setup go ${{ env.GO_VERSION }} + - name: Setup go ${{ env.GO_VERSION }} uses: ./.github/actions/setup-go with: go-version: '${{ env.GO_VERSION }}' key-prefix: integration-test - - name: run itest + - name: Run itest run: make itest-parallel tranches=${{ env.SMALL_TRANCHES }} shuffleseed=${{ github.run_id }} - name: Zip log files on failure @@ -499,7 +499,7 @@ jobs: # check pinned dependencies ######################## dep-pin: - name: check pinned dependencies + name: Check pinned dependencies runs-on: ubuntu-latest strategy: # Allow other tests in the matrix to continue if one fails. @@ -510,46 +510,46 @@ jobs: - github.com/golang/protobuf v1.5.3 steps: - - name: git checkout + - name: Git checkout uses: actions/checkout@v4 - name: Clean up runner space uses: ./.github/actions/cleanup-space - - name: ensure dependencies at correct version + - name: Ensure dependencies at correct version run: if ! grep -q "${{ matrix.pinned_dep }}" go.mod; then echo dependency ${{ matrix.pinned_dep }} should not be altered ; exit 1 ; fi ######################## # check PR updates release notes ######################## milestone-check: - name: check release notes updated + name: Check release notes updated runs-on: ubuntu-latest if: '!contains(github.event.pull_request.labels.*.name, ''no-changelog'')' steps: - - name: git checkout + - name: Git checkout uses: actions/checkout@v4 - name: Clean up runner space uses: ./.github/actions/cleanup-space - - name: release notes check + - name: Release notes check run: scripts/check-release-notes.sh ######################## # Backwards Compatibility Test ######################## - backwards-compatability-test: - name: backwards compatability test + backwards-compatibility-test: + name: Backwards compatibility test runs-on: ubuntu-latest steps: - - name: git checkout + - name: Git checkout uses: actions/checkout@v4 - name: 🐳 Set up Docker Buildx uses: docker/setup-buildx-action@v3 - - name: 🛡️ backwards compatibility test + - name: 🛡️ Backwards compatibility test run: make backwards-compat-test ######################################### @@ -594,6 +594,7 @@ jobs: # Notify about the completion of all coverage collecting jobs. finish: + name: Send coverage report if: ${{ always() }} needs: [unit-test, basic-integration-test] runs-on: ubuntu-latest