Go to file
Daniel Wedul 9cea19d11b
feat: Add cosmovisor --help (#10229)
* [10126]: Create the help text and a func for checking if help is requested.

* [10126]: Check if help is requested and print it if so.

* [10126]: If help is requested, and it's possible, also run the binary with the --help flag.

* [10126]: Add a Config method for creating a detailed string.

* [10126]: Include the config detail string if the config is okay.

* [10126]: Create a MultiError error.

* [10126]: Get all configuration errors rather than just one at a time.

* [10126]: Create unit tests on the MultiError.

* [10126]: Remove an extra space from an output string.

* [10126]: Add unit tests on more of the args stuff.

* [10126]: Export the environment variable name strings.

* [10126]: Move the help command stuff into the new cmd area.

* [10126]: Move the unit tests on the help stuff that just got moved.

* [10126]: Lint fixes.

* [10126]: Export the EnvPreupgradeMaxRetries const and handle its error the same way as the others.

* [10126]: Update the args test with the new config entry.

* [10126]: Add EnvPreupgradeMaxRetries to the help text.

* [10126]: Output the full path in the error when the root isn't a directory.

* [10126]: Add some newlines that were missing from some help output.

* [10126]: Add a link to the documentation to the help text.

* [10126]: Don't allow MultiErrors to be in MultiErrors by extracting sub-errors while flattening.

* [10126]: Add some missing function comments.

* [10126]: Add changelog entry.

* [10126]: Fix changelog pull link.

* [10126]: Move multierror into its own errors package, then rename it to just multi.

* [10126]: Change the Config DetailString to use the environment variables instead of Config field names. Also add the missing PreupgradeMaxRetries entry to it.

* [10126]: Remove the environment variables from the help text and just defer to the cosmovisor README.

* [10126]: Update the help text as suggested.

* [10126]: Update ShouldGiveHelp. Give help if either name or home env vars aren't set. Give help if the first arg is help or any args are -h or --help. This reflects cobra defaults.

* [10126]: Pass all args when running a help command rather than just using --help.

* [10126]: Undo the changes to process.go. Instead, if an app is configured, just call it with the provided args.

* [10126]: Output help if any arg is help.

* [10126]: Reorg imports.

* [10126]: Change 'Monitored Upgrade Info File' to just 'Monitored File'. The rest of the filename gives the rest of the context.

* [10126]: Move the config error handling and output out of DoHelp and put it into the main Run function. That way, it's not being done twice in two different ways, and the setup is always logged.

* [10126]: Make checking for a help request case-insensitive (to match what's done in version).

* [10126]: Fix unit test that broke when I changed the Monitored File title.

* [10126]: Change some unit test env var stuff to use a struct instead of string slices.
2021-09-29 01:08:31 +02:00
.github dont close issues (#10207) 2021-09-21 13:13:56 +00:00
baseapp refactor!: BaseApp {Check,Deliver}Tx with middleware design (#9920) 2021-08-25 14:40:33 +00:00
client refactor: Implementing sigs.k8s.io YAML to remove .proto yaml annotations (#9780) 2021-09-24 14:37:34 +00:00
codec refactor: Implementing sigs.k8s.io YAML to remove .proto yaml annotations (#9780) 2021-09-24 14:37:34 +00:00
container feat: bump Go version to 1.17 (#9987) 2021-09-17 13:31:46 +02:00
contrib feat: bump Go version to 1.17 (#9987) 2021-09-17 13:31:46 +02:00
cosmovisor feat: Add cosmovisor --help (#10229) 2021-09-29 01:08:31 +02:00
crypto refactor: Implementing sigs.k8s.io YAML to remove .proto yaml annotations (#9780) 2021-09-24 14:37:34 +00:00
db feat: bump Go version to 1.17 (#9987) 2021-09-17 13:31:46 +02:00
docs docs: 10180 Fix SDK (#10237) 2021-09-28 19:33:58 +02:00
internal/conv internal/conv: fix wrong string to bytes implementation (#9141) 2021-04-19 14:51:05 +01:00
proto/cosmos refactor: Implementing sigs.k8s.io YAML to remove .proto yaml annotations (#9780) 2021-09-24 14:37:34 +00:00
scripts feat: Introduce Cosmos Scalars (#9933) 2021-09-21 09:46:29 +00:00
server refactor: Implementing sigs.k8s.io YAML to remove .proto yaml annotations (#9780) 2021-09-24 14:37:34 +00:00
simapp refactor!: Keyring migration (#9695) 2021-09-20 12:02:15 +00:00
snapshots docs: add `README` for `snapshots` package (#10120) 2021-09-16 15:43:03 +00:00
std Add ADR 031 BaseApp and codec infrastructure (#7519) 2020-10-15 13:07:59 +00:00
store fix: removed potential sources of non-determinism in upgrades (#10189) 2021-09-28 17:20:43 +02:00
telemetry refactor!: Keyring migration (#9695) 2021-09-20 12:02:15 +00:00
tests test: fix mockgen version (#9127) 2021-05-25 09:18:59 +00:00
testutil refactor!: Keyring migration (#9695) 2021-09-20 12:02:15 +00:00
third_party/proto feat: Introduce Cosmos Scalars (#9933) 2021-09-21 09:46:29 +00:00
types fix: removed potential sources of non-determinism in upgrades (#10189) 2021-09-28 17:20:43 +02:00
version refactor: Implementing sigs.k8s.io YAML to remove .proto yaml annotations (#9780) 2021-09-24 14:37:34 +00:00
x fix: removed potential sources of non-determinism in upgrades (#10189) 2021-09-28 17:20:43 +02:00
.build.sh fix library file path (#8301) 2021-01-12 10:08:42 +00:00
.clang-format Fix clang-format to specific version (#7350) 2020-10-27 10:04:34 +00:00
.codecov.yml CI: Fix codecov flag project config (#7994) 2020-11-20 09:13:25 -05:00
.deepsource.toml chore: refactor code quality issues (#8932) 2021-03-22 09:30:27 +00:00
.dockerignore Add basic Dockerfile to build all binaries and export gaiad 2018-04-10 12:39:47 +02:00
.gitattributes Merge PR #6426: Migrate API Server 2020-06-15 13:39:09 -04:00
.gitignore docs: fix cosmovisor quickstart (#9730) 2021-07-26 07:51:36 +00:00
.golangci.yml fix(CI): add golangci-lint to dependencies (#10112) 2021-09-14 11:05:30 +02:00
.goreleaser.yml ci: automate release post tag push (#6230) 2020-05-25 20:02:08 +02:00
.markdownlint.json chore: add markdownlint to lint commands (#9353) 2021-05-27 15:31:04 +00:00
.markdownlintignore chore: add markdownlint to lint commands (#9353) 2021-05-27 15:31:04 +00:00
.mergify.yml chore: update mergify for v0.44 backports (#10146) 2021-09-15 12:43:59 +02:00
CHANGELOG.md docs: 10180 Fix SDK (#10237) 2021-09-28 19:33:58 +02:00
CODE_OF_CONDUCT.md Update CODE_OF_CONDUCT.md (#7381) 2020-09-28 11:28:30 +02:00
CONTRIBUTING.md docs: 10180 Fix SDK (#10237) 2021-09-28 19:33:58 +02:00
Dockerfile build: Update Dockerfile (#9839) 2021-08-03 09:46:16 -04:00
LICENSE docs: 10180 Fix SDK (#10237) 2021-09-28 19:33:58 +02:00
Makefile fix(CI): add golangci-lint to dependencies (#10112) 2021-09-14 11:05:30 +02:00
README.md feat: bump Go version to 1.17 (#9987) 2021-09-17 13:31:46 +02:00
SECURITY.md chore: add markdownlint to lint commands (#9353) 2021-05-27 15:31:04 +00:00
STABLE_RELEASES.md chore: Update STABLE_RELEASES for 0.43 (#9931) 2021-08-16 09:10:50 -04:00
buf.yaml refactor: Bring back deprecated proto fields to `v1beta1` (#9534) 2021-06-23 13:03:33 +00:00
docker-compose.yml perf: Change localnet CIDR from /16 (65k addresses) to /25 (128 addresses) to reduce docker network conflicts (#9667) 2021-07-12 08:51:36 +00:00
go.mod build(deps): bump sigs.k8s.io/yaml from 1.2.0 to 1.3.0 (#10227) 2021-09-26 16:05:15 +02:00
go.sum build(deps): bump sigs.k8s.io/yaml from 1.2.0 to 1.3.0 (#10227) 2021-09-26 16:05:15 +02:00

README.md

Cosmos SDK

banner

The Cosmos-SDK is a framework for building blockchain applications in Golang. It is being used to build Gaia, the first implementation of the Cosmos Hub.

WARNING: The SDK has mostly stabilized, but we are still making some breaking changes.

Note: Requires Go 1.17+

Quick Start

To learn how the SDK works from a high-level perspective, go to the SDK Intro.

If you want to get started quickly and learn how to build on top of the SDK, please follow the SDK Application Tutorial. You can also fork the tutorial's repository to get started building your own Cosmos SDK application.

For more, please go to the Cosmos SDK Docs.

Cosmos Hub Mainnet

The Cosmos Hub application, gaia, has moved to its own repository. Go there to join the Cosmos Hub mainnet and more.

Interblockchain Communication (IBC)

The IBC module for the SDK has moved to its own repository. Go there to build and integrate with the IBC module.

Starport

If you are starting a new app or a new module you can use Starport to help you get started and speed up development. If you have any questions or find a bug, feel free to open an issue in the repo.

Disambiguation

This Cosmos-SDK project is not related to the React-Cosmos project (yet). Many thanks to Evan Coury and Ovidiu (@skidding) for this Github organization name. As per our agreement, this disambiguation notice will stay here.