Skip to content

build: bump deps

build: bump deps #625

Workflow file for this run

name: Build and Test
on: [push, pull_request]
permissions:
contents: read
jobs:
build:
name: Build
runs-on: ubuntu-latest
strategy:
matrix:
go: ['1.24', '1.25']
steps:
- name: Set up Go
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
with:
go-version: ${{ matrix.go }}
- name: Check out source
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 #v5.0.0
- name: golangci-lint
uses: golangci/golangci-lint-action@0a35821d5c230e903fcfe077583637dea1b27b47 # v9.0.0
with:
install-mode: "goinstall"
version: 9f61b0f53f80672872fced07b6874397c3ed197b # v2.7.2
- name: Check golangci-lint version
run: golangci-lint --version
- name: Build
run: go build ./...
- name: Lint
run: |
golangci-lint run
- name: Package test binaries
run: |
export GOPATH=$(go env GOPATH)
make package-test-binaries
- name: Upload test binaries
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 #v4.6.0
with:
name: ${{ matrix.go }}-test-binaries
path: dcrlnd_testbins.tar.gz
testsuite:
name: Test
needs: build
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
go: ['1.25']
testsuite:
- unit-race # unit tests
- itest-parallel-run # embedded wallet using dcrd for sync and chain ops
- itest-parallel-run walletimpl=embeddedwallet_dcrw # embedded wallet, dcrd sync but dcrw chain ops
- itest-parallel-run walletimpl=embeddedwallet_dcrw backend=spv # embedded wallet, spv sync and dcrw chain ops
- itest-parallel-run walletimpl=remotewallet # remote wallet dcrd sync
- itest-parallel-run walletimpl=remotewallet backend=spv # remote wallet spv sync
steps:
- name: Set up Go
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
with:
go-version: ${{ matrix.go }}
- name: Check out source
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 #v5.0.0
- name: Download the test binaries
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 #v4.1.8
with:
name: ${{ matrix.go }}-test-binaries
path: ${{ matrix.go }}-test-binaries
- name: Unpack the test binaries
run: |
export GOPATH=$(go env GOPATH)
mv ${{ matrix.go }}-test-binaries/* .
make unpack-test-binaries
- name: Run the test suite
run: |
export GOPATH=$(go env GOPATH)
export PATH=${PATH}:$(go env GOPATH)/bin
make ${{ matrix.testsuite }}
- name: Compress log files
if: always()
run: |
find . -iname *.log | tar -T - --ignore-failed-read -czf output-logs.tar.gz
- name: Upload logs
if: always()
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 #v4.6.0
with:
name: ${{ matrix.go }}-${{ matrix.testsuite }}-logs.tar.gz
path: output-logs.tar.gz