Story Ansible
Story Node Deployment is a project that uses Ansible to automate the deployment of Story nodes. Story is the world's intellectual property blockchain, providing an entry point for programmable IP for next-generation AI, DeFi, and consumer applications.
Features
- Automated deployment of Story nodes
- Support for default pruned nodes and archive nodes
- Customizable ports
- Option to expose endpoints
Prerequisites
- Ansible installed
- SSH key configured for connecting to target servers
Installation
Clone the repository to your local machine:
git clone https://github.com/silentnoname/story-ansible
cd story-ansible
Configuration
Copy the example configuration file:
cp inventory.ini.example inventory.ini
Edit inventory.ini
:
- Modify server information
- Set
type=archive
for archive nodes,type=default
for default pruned - Set
endpoint=enabled
to expose endpoints, otherwise setendpoint=false
Adjust variables in group_vars/all.yml
as needed.
Running
Run the following command to deploy nodes:
ansible-playbook main.yml -e "target=story story_geth_snapshot_url=<your story geth snapshot> story_snapshot_url=<your story snapshot>"
For archive nodes:
ansible-playbook main.yml -e "target=story story_archive_snapshot_url=<your story archive snapshot> story_geth_snapshot_url=<your story geth snapshot>"
Key Files
main.yml
: Main playbook file defining the deployment processinventory.ini
: Defines target serversgroup_vars/all.yml
: Defines global variablesroles/
: Contains tasks for each role
Roles
- prepare: Prepares the system environment
- node_install: Installs Story node software
- node_init: Initializes the node
- node_configure: Configures the node
- node_launch: Launches the node service
Notes
- Ensure all necessary variables are correctly configured before running the playbook
- To customize ports, modify
custom_port_prefix
ingroup_vars/all.yml
- Default P2P port: 29256 (or
{{ custom_port_prefix }}56
if customized) - Default RPC port: 29257 (or
{{ custom_port_prefix }}57
if customized) - Default API port: 29217 (or
{{ custom_port_prefix }}17
if customized)
- Default P2P port: 29256 (or
For more information and the latest updates, visit the Story Ansible GitHub repository.