Fairly rigid working implementation as part of a larger project - may not work out of the box for a particular use-case. Feel free to submit a PR!
- (Make sure Helm and Kubectl are installed before continuing)
- git clone https://github.com/coacervatebio/yagna.git
- cd yagna/chart
- helm install my-release . -f values.yaml
- see
values.yaml
comments for options - leaving as is will use your default StorageClass (if configured)
- can set pre-existing StorageClass to dynamically provision PV
- can add
local
path on node to create local PV manually
- the container entrypoint start script will set the appkey as follows:
- if an appkey has already been created in persistent storage it will just use that
- if a keystore is present and unlocked at the path specified in .Values.existingWallet.mountPath, it will import that key, set it as default, and create an appkey for it
- if neither of the above conditions are met, the default/unconfigured behavior is to create an appkey and inialize it with test funds from the faucet
- once initialized i.e.
yagna app-key list
returns a non-empty list, that appkey will be used; any changes to this e.g. test -> mainnet must be carried out manually - a clean way to switch between test and mainnet is to have different PVCs for each, as defined in .Values.yagna.pvcName
- see test pod definition and image to understand how you can build and deploy your own requestor that connects to the daemon