go-ethereum/cicd
2022-10-23 11:01:39 +11:00
..
devnet Reduce devnet ECS cpu and memory to save cost & fix a bug in travis where aws is not installed 2022-10-23 11:01:39 +11:00
README.md finalise terraform for xdc devnet 2022-10-16 23:10:01 +11:00

CI/CD pipeline for XDC

This directory contains CI/CD scripts used for each of the XDC environments.

How to deploy more nodes

Adjust the number of variable num_of_nodes under file .env. (Maximum supported is 58)

Devnet

Each PR merged into dev-upgrade will trigger below actions:

First time set up an new environment

  1. Pre-generate a list of node private keys in below format
{
  "xdc0": {
    "pk": {{PRIVATE KEY}}
  },
  "xdc1": {...},
  "xdc{{NUMBER}}: {...}
}
  1. Access to aws console, create a bucket with name terraform-devnet-bucket
  2. Upload the file from step 1 into the above bucket with name node-config.json
  3. In order to allow pipeline able to push and deploy via ECR and ECS, we require below environment variables to be injected into the CI pipeline:
  4. DOCKER_USERNAME
  5. DOCKER_PASSWORD
  6. AWS_ACCESS_KEY_ID
  7. AWS_SECRET_ACCESS_KEY

You are all set!

Testnet

*** WIP *** Testnet release build are triggered by cutting a "pre-release" tag which matches the name of TESTNET-{{release-version}} from dev-upgrade or master branch. An example can be found here: https://github.com/XinFinOrg/XDPoSChain/releases/tag/Testnet-v2.0.0 For more information, refer to github documentation on the release: https://docs.github.com/en/repositories/releasing-projects-on-github/about-releases

Mainnet

*** WIP *** Mainnet release are triggered by making a normal release tag with name starting with v (stands for version) from the master branch.