Skip to main content

The Bitcoin Lightning Integration Test Service

Project description

BLITSkrieg: Bitcoin Lightning Integration Test Service

BLITSkrieg is a gRPC server in Python that aims to provide a set of utilities to test Bitcoin and Lightning Network services.

It uses boltlight in order to hide the differences between the different LN node implementations.

Currently the available services are:

  • bitcoind [1]
  • boltlight [2]
  • c-lightning
  • eclair
  • electrs [3]
  • electrum
  • lnd

Notes

  1. docker image always necessary
  2. docker image necessary to call LN-related commands
  3. docker image necessary to run electrum

System dependencies

  • Linux or macOS (Windows may work, but is not supported)
  • Python 3.9+
  • poetry
  • docker

Build

In order to build the docker image for BLITSkrieg, run:

# production mode
$ ./unix_helper build

# development mode
$ ./unix_helper build-dev

Production mode does not include the package dev dependencies.

Pre-built (production mode) images for the latest versions can be downloaded from GitLab's container registry.

Run

In order to launch the docker image of BLITSkrieg, run:

# production mode
$ ./unix_helper run

# development mode
$ ./unix_helper run-dev

CLI

BLITSkrieg features a Command Line Interface, named bli. It can be installed and called from the project directory.

In order to install the project, run:

$ poetry install

In order to run bli, call it via poetry:

$ poetry run bli

bli supports shell completion for bash and zsh (the shell needs to have completion support enabled). It can be enabled sourcing the appropriate file for the running shell, from the project directory:

$ . ./blitskrieg/share/complete-bli.bash
$ . ./blitskrieg/share/complete-bli.zsh

Use

In order to run a command on BLITSkrieg, you can directly call it by making a gRPC call to it, or you can use its CLI.

To get a list of available CLI commands, run:

$ poetry run bli --help

In order to perform any action in BLITSkrieg, you first need to create a LN stack. To do so, call:

$ poetry run bli createstack [--<implementation>=<number_of_nodes>]

If you do not specify any LN node, this will run a single bitcoind instance and only Bitcoin-related commands will be available.

Visit our docker repository in order to build the required services. Otherwise, if the needed docker images are not available, they will be pulled from hashbeam's GitLab container registry.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

blitskrieg-0.2.1.tar.gz (29.9 kB view details)

Uploaded Source

Built Distribution

blitskrieg-0.2.1-py3-none-any.whl (50.7 kB view details)

Uploaded Python 3

File details

Details for the file blitskrieg-0.2.1.tar.gz.

File metadata

  • Download URL: blitskrieg-0.2.1.tar.gz
  • Upload date:
  • Size: 29.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.9.12 Linux/5.4.109+

File hashes

Hashes for blitskrieg-0.2.1.tar.gz
Algorithm Hash digest
SHA256 96f3ddbf930eb6ac5ac33ec898c81947d7fd011c3f28a7201d5a9239cae84319
MD5 b2c1e9b474101f9bd9fb65350061e076
BLAKE2b-256 9a3be36cf71f19a830802234a79d83d31b0d8cb2d7ac0b96602f2020d50151fe

See more details on using hashes here.

File details

Details for the file blitskrieg-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: blitskrieg-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 50.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.9.12 Linux/5.4.109+

File hashes

Hashes for blitskrieg-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 86d17e6f682fa690ab3036718b214eeef17fc79f7db6892fad8339a9dd964f01
MD5 abd8d699459860f890e9e31098bbebee
BLAKE2b-256 45c2f426ae9eb98908dccba1cd7333c58859d683271152a41ebabd4928fb8a8c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page