Skip to content

Commit

Permalink
New Chain Documentation (#11)
Browse files Browse the repository at this point in the history
* Add new chain docs

* binary renaming

* add fields

Co-authored-by: Andrew Gouin <andrew@gouin.io>
  • Loading branch information
boojamya and agouin committed Jan 9, 2023
1 parent a581abb commit d18a3f2
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 1 deletion.
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,4 +92,6 @@ Docker images for `heighliner/gaia:v7.0.1` will be built on the remote buildkit

## Add a new chain

To include a Cosmos based blockchain that does not yet have images, submit a PR adding it to [chains.yaml](./chains.yaml) so it will be included in the daily builds.
To include a Cosmos based blockchain that does not yet have images, submit a PR adding it to [chains.yaml](./chains.yaml) so it will be included in the daily builds.

For further instructions see: [addChain.md](./addChain.md)
40 changes: 40 additions & 0 deletions addChain.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Adding a New Chain

To add a new chain, add relevant chain info to `chains.yaml` file.

Please keep chains in alphabetical order.


## Fields:

`name` -> The name used to direct heighliner on what chain to build. Must be lowercase.

`repo-host` -> By default, this is "github.com", but use this field to override. For example "gitlab.com"

`github-organization` -> The organization name of the location of the chain binary.

`github-repo` -> The repo name of the location of the chain binary.

`language` -> Used in the Docker `FROM` argument to create a a docker base image. OPTIONS: "go, rust, nix, imported". Use "imported" if you are not able to build the chain binary from source and are importing a pre-made docker container.

`build-env` -> Environment variables to be created during the build.

`pre-build` -> Any extra arguments needed to build the chain binary.

`build-target` -> The argument to call after `make` (language=golang), `cargo` (language=rust) or `nix` (language=nix).

`binaries` -> The location of where the the build target places the binarie(s). Adding a ":" after the path allows for the ability to rename the binary.

`libraries` -> Any extra libraries need to run the binary. In additon to the binary itself, these will be copied over to the final image


## Verify Build:


Please check the image builds successfully before submitting PR:

`./heighliner build -c <CHAIN-NAME> -v <VERSION>

Ensure binary runs in image:

`docker run -it --rm --entrypoint sh <name>:<tag>`

0 comments on commit d18a3f2

Please sign in to comment.