Utility to generate a large number of Web3Signer configuration files with random keys.
- Web3Signer encrypted, raw files and hashicorp loading (BLS Keys).
./gradlew clean build installdist
cd ./build/install/signer-configuration-generator/bin
./signer-configuration-generator raw --count=10000
- Note: Run Hashicorp vault in dev mode (via Docker)
docker pull vault
docker run --rm --cap-add=IPC_LOCK -e 'VAULT_DEV_ROOT_TOKEN_ID=myroot' -p 8200:8200 --name=dev-vault vault
./signer-configuration-generator hashicorp --count=10000 --token=myroot
Images are published to GHCR on every merge to main (:latest, :main, :sha-<short-sha>) and on version tags (:X.Y.Z, :X.Y, :X):
docker pull ghcr.io/hyperoz-labs/signer-configuration-generator:latest
The entrypoint is the CLI binary itself, so pass subcommands/flags directly. --output defaults to ./keys relative to the container's working directory (/app), so mount a volume to get the generated files back on the host:
docker run --rm -v "$(pwd)/keys:/app/keys" \
ghcr.io/hyperoz-labs/signer-configuration-generator:latest \
raw --count=10000
- Note: Run Hashicorp vault in dev mode (via Docker), then run the generator on the same network so it can reach vault at
--url:
docker pull vault
docker run --rm --cap-add=IPC_LOCK -e 'VAULT_DEV_ROOT_TOKEN_ID=myroot' -p 8200:8200 --name=dev-vault vault
docker run --rm --network host -v "$(pwd)/keys:/app/keys" \
ghcr.io/hyperoz-labs/signer-configuration-generator:latest \
hashicorp --count=10000 --token-file=/dev/stdin <<< "myroot"