mirror of
https://github.com/talaia-labs/rust-teos.git
synced 2026-08-13 12:33:22 +02:00
- Add toolchain - Common: - bitcoin v0.32.0; - lightning v0.1.0 - TEOS: - bitcoin v0.32.0; - bitcoincore-rpc v0.19.0; - lightning v0.1.0; - lightning-net-tokio v0.1.0; - lightning-block-sync v0.1.0 - Watchtower-Plugin: - bitcoin v0.32.0; - cln-plugin v0.3.0
89 lines
2.8 KiB
YAML
89 lines
2.8 KiB
YAML
name: CI tests for CLN watchtower-plugin
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
pull_request:
|
|
|
|
env:
|
|
bitcoind_version: "27.0"
|
|
cln_version: "24.11.1"
|
|
|
|
jobs:
|
|
cache-cln:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.9'
|
|
check-latest: true
|
|
- uses: arduino/setup-protoc@v3
|
|
with:
|
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
- name: Create CLN cache
|
|
id: cache-cln
|
|
uses: actions/cache@v4
|
|
env:
|
|
cache-name: cache-cln-dev
|
|
with:
|
|
path: lightning
|
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-v${{ env.cln_version }}
|
|
- name: Compile CLN
|
|
env:
|
|
PYTHON_KEYRING_BACKEND: keyring.backends.null.Keyring
|
|
if: ${{ steps.cache-cln.outputs.cache-hit != 'true' }}
|
|
run: |
|
|
sudo apt-get update && sudo apt-get install -y gettext
|
|
git clone https://github.com/ElementsProject/lightning.git && cd lightning && git checkout v${{ env.cln_version }}
|
|
pip install --user poetry && poetry install
|
|
cargo update -p time
|
|
./configure && poetry run make
|
|
|
|
cln-plugin:
|
|
needs: cache-cln
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.9'
|
|
check-latest: true
|
|
- uses: arduino/setup-protoc@v3
|
|
with:
|
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
- name: Install Rust toolchain
|
|
uses: dtolnay/rust-toolchain@master
|
|
with:
|
|
toolchain: 1.81.0
|
|
components: rustfmt, clippy
|
|
- name: Install bitcoind
|
|
run: |
|
|
wget https://bitcoincore.org/bin/bitcoin-core-${{ env.bitcoind_version }}/bitcoin-${{ env.bitcoind_version }}-x86_64-linux-gnu.tar.gz
|
|
tar -xzf bitcoin-${{ env.bitcoind_version }}-x86_64-linux-gnu.tar.gz
|
|
ln -s $(pwd)/bitcoin-${{ env.bitcoind_version }}/bin/bitcoin* /usr/local/bin
|
|
- name: Load CLN cache
|
|
id: cache-cln
|
|
uses: actions/cache@v4
|
|
env:
|
|
cache-name: cache-cln-dev
|
|
with:
|
|
path: lightning
|
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-v${{ env.cln_version }}
|
|
- name: Link CLN
|
|
run: |
|
|
source $HOME/.cargo/env
|
|
cd lightning && sudo make install
|
|
- name: Install teos and the plugin
|
|
run: |
|
|
cargo install --locked --path teos
|
|
cargo install --locked --path watchtower-plugin
|
|
- name: Add test dependencies
|
|
run: |
|
|
cd watchtower-plugin/tests
|
|
pip install --user poetry && poetry install
|
|
- name: Run tests
|
|
run: |
|
|
cd watchtower-plugin/tests
|
|
VALGRIND=0 SLOW_MACHINE=1 poetry run pytest test.py --log-cli-level=INFO -s
|