Giter VIP home page Giter VIP logo

teztnets's Introduction

Teztnets

Infrastructure-as-code repo to activate and bootstrap Tezos testnets in a repeatable, automated way.

See teztnets.xyz for the list of active Teztnets.

Features

Based on tezos-k8s

tezos-k8s is a framework to deploy Tezos nodes or chains using Kubernetes and Helm.

See the tezos-k8s documentation

Faucet support

The commitments are precursor accounts that can be used to fund real account with the faucet.

Injection of contracts at genesis

A collection of raw Michelson contracts can be optionally deployed in any Teztnet at genesis.

Bootstrap baker and bootstrap p2p endpoint

Upon deployment of a Teztnet, a genesis baker will run and its p2p and rpc endpoints will be exposed externally. Example:

  • p2p: hangzhounet.teztnets.xyz
  • rpc rpc.hangzhounet.teztnets.xyz

--network endpoint for Tezos node

Tezos nodes supports downloading of network specification from a json endpoint: tezos-node config init --network https://teztnets.xyz/<TEZTNET NAME>

The Teztnet platform creates and exposes such endpoints.

Currently deployed Teztnets

Deployment of new testnets is performed with Github Releases.

The most recent release on the Release page has a list of currently deployed testnets, with URLs to connect to them.

Automate on Teztnets

You are encouraged to build automation to ensure your Tezos project keeps running with the future versions of Tezos shell and/or protocol.

  1. monitor this repo's releases using your monitoring tool of choice
  2. this endpoint lists the current active testnets: https://teztnets.xyz/teztnets.json

Add new Teztnets or modify existing Teztnets

Every Teztnet is defined in a directory in this repository. The Teztnet directory must contain the following files:

  • A Helm chart values.yaml file
  • optionally, a submodule of tezos-k8s (in case you need an unreleased or custom version of the tezos-k8s software)

Helm chart values.yaml

The Helm chart values.yaml lets you customize your chain in many ways:

  • specify activation parameters, such as:
    • list of genesis bakers
    • list of accounts funded at genesis
    • chains parameters (blocks per cycle, time between blocks...)
  • specify user-activated upgrades for hard-forks at a given length
  • specify the list of baker/endorser binaries to run.

Look in any Teztnet directory's values.yaml file for reference as to how to configure your own Teztnet.

The default Helm values.yaml has details on every possible way to customize your teztnet.

Teztnets.xyz website

The website is created with Jekyll from Markdown files generated from Jinja templates based on Pulumi outputs.

To build the website locally, from the top-level dir of the repo:

  1. source .env to populate the secret env vars
  2. run pulumi stack output networks > networks.json
  3. run pulumi stack output teztnets > teztnets.json
  4. run python src/release.py
  5. cd target/release
  6. run bundle install
  7. run bundle exec jekyll serve

The website will be rendered on localhost:4000.

teztnets's People

Contributors

nicolasochem avatar innov8r avatar harryttd avatar gimbrailo avatar elric1 avatar acoquereau avatar danielelisi avatar sirneb avatar jevonearth avatar romarq avatar dependabot[bot] avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.