This repository contains the installer for the contributoor service, which collects data from Ethereum consensus clients.
Download and inspect the installation script before running:
# Download the script.
curl -O https://raw.githubusercontent.com/ethpandaops/contributoor-installer/refs/heads/master/install.sh
# Inspect the script contents.
less install.sh
# Make it executable and run if you're satisfied with the contents.
chmod +x install.sh && ./install.sh⚡ Quick Installation
If you trust the source, you can run this one-liner:
curl -O https://raw.githubusercontent.com/ethpandaops/contributoor-installer/refs/heads/master/install.sh && chmod +x install.sh && ./install.shIf you're using eth-docker, setup is as follows:
- In your .env file:
- add
:contributoor.ymltoCOMPOSE_FILE - set
CONTRIBUTOOR_USERNAMEto your username - set
CONTRIBUTOOR_PASSWORDto your password
- add
- Run
./ethd update - Run
./ethd up
You can read more about configuring eth-docker here.
-
Install
contributoorvia the Install Script -
During the Contributoor setup:
- Set
Beacon Node Addresstohttp://eth2:5052 - Set
Optional Docker Networktorocketpool_net
Note: These can also be set later
contributoor config - Set
-
Run
contributoor start
Uninstalling contributoor can be done by running the installer with the -u flag:
curl -O https://raw.githubusercontent.com/ethpandaops/contributoor-installer/refs/heads/master/install.sh && chmod +x install.sh && ./install.sh -uNote: you may need to start a new shell session before you can run the
contributoorcommand.
After installation, Contributoor can be managed using these commands:
contributoor start # Start the service
contributoor stop # Stop the service
contributoor status # Check service status
contributoor restart # Restart the service
contributoor config # View/edit configuration
contributoor update # Update to latest version
contributoor logs # Show logsGo Tests
Execute the full test suite:
go test ./...Run short tests only:
go test -test.short ./...Run with coverage:
go test -failfast -cover -coverpkg=./... -coverprofile=coverage.out ./... && go tool cover -html=coverage.outShell Tests
Requires bats:
bats *.batsFor test coverage (requires kcov):
kcov --bash-parser="$(which bash)" --include-pattern=install.sh /path/to/coverage/output bats --tap install.batsContributoor is part of EthPandaOps' suite of tools for Ethereum network operations. Contributions are welcome! Please check our GitHub repository for more information.