Skip to content

DamageBDD/DamageBDD

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,296 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DamageBDD

An Erlang OTP application to run BDD load tests at scale.
Inspired by behave.

📖 Read more: https://damagebdd.com

Hosted Service

You can use the public server at https://run.damagebdd.com to run tests.
Read The Manual to get started quickly.
Swagger API available at: https://damagebdd.com/api/


Running a Damage Node Locally

From pre-built packages

Official packages for your distro available at: https://damagebdd.com/node/

From source

git clone https://github.com/DamageBDD/DamageBDD.git
cd DamageBDD
rebar3 shell

Setup Secrets

The application uses an encrypted secrets store. Configure integrations using secrets:encrypt_store/2.

Bitcoin RPC

secrets:encrypt_store(bitcoin_rpc_password, "bitcoin rpc password").

Generate Bitcoin RPC auth:

./bin/bitcoin_rpcauth.py

Nostr Integration

secrets:encrypt_store(nostr_nsec, "nostr private key (nsec)").

SMTP Auth

secrets:encrypt_store(smtp_password, "password for smtp sending").

Core Lightning Integration

Create Rune:

lightning-cli createrune
secrets:encrypt_store(cln_rune, "rune for core lightning cln").

LND Lightning Integration

secrets:encrypt_store(lnd_macaroon, "macaroon for lnd").

Configuration via /etc/damage/damage.config erlang sys.config override.

The Erlang sys.config file allows you to configure the runtime. A sample for overriding default settings is provided created by the package installer. Typical settings include:

[
  {damagebdd, [
    {port, 4888},
    {bind_addr, "0.0.0.0"},
    {log_dir, "/var/log/damagebdd"},
    {data_dir, "/var/lib/damagebdd"},
  ]}
].
  • port: Port for the verification node to listen on.
  • bind_addr: Bind interface (default 0.0.0.0).
  • log_dir: Path for runtime logs.
  • data_dir: Data storage directory.
  • upstreams: List of upstream URLs for distributed verification.
  • secrets_backend: Method for secrets management (default: encrypted store).

Adjust these to match your environment. Point the systemd service or release script to load the sys.config file via -config /etc/damagebdd/sys.config.


Security

See SECURITY.txt for important operator guidelines.

Sponsor this project

Packages

 
 
 

Contributors