Skip to content

Harden gRPC transport #346

Harden gRPC transport

Harden gRPC transport #346

Workflow file for this run

name: End-to-End Tests
on: [ push, pull_request ]
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
e2e-tests:
runs-on: ubuntu-latest
services:
postgres:
image: postgres:latest # zizmor: ignore[unpinned-images]
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: ldk_server_e2e
ports:
- 5432/tcp
options: >-
--health-cmd "pg_isready -U postgres -d ldk_server_e2e"
--health-interval 5s
--health-timeout 5s
--health-retries 10
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Enable caching for bitcoind
id: cache-bitcoind
uses: actions/cache@v5
with:
path: bin/bitcoind-${{ runner.os }}-${{ runner.arch }}
key: bitcoind-${{ runner.os }}-${{ runner.arch }}
- name: Download bitcoind
if: steps.cache-bitcoind.outputs.cache-hit != 'true'
run: |
source ./scripts/download_bitcoind.sh
mkdir -p bin
mv "$BITCOIND_EXE" bin/bitcoind-${{ runner.os }}-${{ runner.arch }}
- name: Set bitcoind environment variable
run: echo "BITCOIND_EXE=$( pwd )/bin/bitcoind-${{ runner.os }}-${{ runner.arch }}" >> "$GITHUB_ENV"
- name: Run end-to-end tests
run: cargo test --manifest-path e2e-tests/Cargo.toml --verbose --color=always -- --test-threads=4 --nocapture
env:
RUST_BACKTRACE: 1
BITCOIND_SKIP_DOWNLOAD: 1
- name: Run PostgreSQL end-to-end tests
run: cargo test --manifest-path e2e-tests/Cargo.toml --test postgres --verbose --color=always -- --ignored --nocapture
env:
POSTGRES_CONNECTION_STRING: postgresql://postgres:postgres@127.0.0.1:${{ job.services.postgres.ports[5432] }}/ldk_server_e2e?sslmode=disable
RUST_BACKTRACE: 1
BITCOIND_SKIP_DOWNLOAD: 1