chore: add cosmovisor v1.1 release notes (#11162)

### Author Checklist

*All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.*

I have...

- [ ] included the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [ ] added `!` to the type prefix if API or client breaking change
- [ ] targeted the correct branch (see [PR Targeting](https://github.com/cosmos/cosmos-sdk/blob/master/CONTRIBUTING.md#pr-targeting))
- [ ] provided a link to the relevant issue or specification
- [ ] followed the guidelines for [building modules](https://github.com/cosmos/cosmos-sdk/blob/master/docs/building-modules)
- [ ] included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/master/CONTRIBUTING.md#testing)
- [ ] added a changelog entry to `CHANGELOG.md`
- [ ] included comments for [documenting Go code](https://blog.golang.org/godoc)
- [ ] updated the relevant documentation or specification
- [ ] reviewed "Files changed" and left comments if necessary
- [ ] confirmed all CI checks have passed

### Reviewers Checklist

*All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.*

I have...

- [ ] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title
- [ ] confirmed `!` in the type prefix if API or client breaking change
- [ ] confirmed all author checklist items have been addressed 
- [ ] reviewed state machine logic
- [ ] reviewed API design and naming
- [ ] reviewed documentation is accurate
- [ ] reviewed tests and test coverage
- [ ] manually tested (if applicable)
This commit is contained in:
Robert Zaremba 2022-02-11 12:02:57 +01:00 committed by GitHub
parent 2e1c32834e
commit 2d1686e762
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 20 additions and 31 deletions

View File

@ -42,11 +42,7 @@ Ref: https://keepachangelog.com/en/1.0.0/
### Features
* [\#10285](https://github.com/cosmos/cosmos-sdk/pull/10316) Added `run` command to run the associated app.
* [\#10533](https://github.com/cosmos/cosmos-sdk/pull/10649) Added environmental variable `DAEMON_BACKUP_DIR` to allow node to set a custom backup directory.
### Features
* [\#10649](https://github.com/cosmos/cosmos-sdk/pull/10649) Customize backup directory. When `DAEMON_BACKUP_DIR` env variable is set, cosmovisor will backup the app data directory in that directory before running the update.
* [\#10649](https://github.com/cosmos/cosmos-sdk/pull/10649) Customize backup directory. Added new env variable: `DAEMON_BACKUP_DIR`. If it is set, cosmovisor will backup the app data in ``DAEMON_BACKUP_DIR` before running the update.
### Deprecated

View File

@ -1,33 +1,26 @@
# Cosmovisor v1.0.0 Release Notes
# Cosmovisor v1.1.0 Release Notes
This is the first major release of Cosmovisor.
It changes the way Cosmovisor is searching for an upgrade event from an app.
Instead of scanning standard input and standard output logs, the Cosmovisor
observes the `$DAEMON_HOME/upgrade-info.json` file, that is produced by the
`x/upgrade` module. The `upgrade-info.json` files is created by the `x/upgrade`
module and contains information from the on-chain upgrade Plan record.
Using the file based approach solved many outstanding problems: freezing when
logs are too long, race condition with the `x/upgrade` handler, and potential
exploit (if a chain would allow to log an arbitrary message, then an attacker
could produce a fake upgrade signal and halt a chain or instrument a download
of modified, hacked binary when the auto download option is enabled).
### New execution model
## Auto downloads
With this release we are shifting to a new CLI design:
* in the past, Cosmovisor was designed to act as a wrapper for a Cosmos App. An admin could link it and use it instead of the Cosmos App. When running it will pass all options and configuration parameters to the app. Hence the only way to configure the Cosmovisor was through environment variables.
* now, we are moving to a more traditional model, where Cosmovisor has it's own command set and is a true supervisor.
Cosmovisor v1.0 supports auto downloads based on the information in the
`data/upgrade-info.json`. In the Cosmos SDK `< v0.44`, that file doesn't contain
`upgrade.Plan.Info`, that is needed for doing auto download. Hence Cosmovisor `v1.0`
auto download won't work with Apps updating from `v0.43` and earlier.
New commands have been added:
* `run` will start the Cosmos App and pass remaining arguments to the app (similar to `npm run`)
* `help` will display Cosmovisor help
* `version` will display both Cosmovisor and the associated app version.
NOTE: we **don't recommend using auto download** functionality. It can lead to potential
chain halt when the upgrade Plan contains a bad link or the resource with the
binary will be temporarily unavailable. We are planning on adding a upgrade
verification command which can potentially solve this issue.
The existing way of starting an app with Cosmovisor has been deprecated (`cosmovisor [app params]`) and will be removed in the future version. Please use `cosmovisor run [app pararms]` instead.
## Other updates
### New Features
* Changed default value of `DAEMON_RESTART_AFTER_UPGRADE` to `true`.
* Added `version` command, which prints both the Cosmovisor and the associated app version.
* Added `help` command, which prints the Cosmovisor help without passing it to the associated version. This is an exception, because normally, Cosmovisor passes all arguments to the associated app.
We added a new configuration option: `DAEMON_BACKUP_DIR` (as env variable). When set, Cosmovisor will create backup the app data backup in that directory (instead of using the app home directory) before running the update. See the [README](https://github.com/cosmos/cosmos-sdk/blob/master/cosmovisor/README.md#command-line-arguments-and-environment-variables) file for more details.
For more details, please see the [CHANGELOG](https://github.com/cosmos/cosmos-sdk/blob/cosmovisor/v1.0.0/cosmovisor/CHANGELOG.md).
### Bug Fixes
* Fixed `cosmovisor version` output when installed using 'go install github.com/cosmos/cosmos-sdk/cosmovisor/cmd/cosmovisor@v1.0.0'.
### Changelog
For more details, please see the [CHANGELOG](https://github.com/cosmos/cosmos-sdk/blob/cosmovisor/v1.1.0/cosmovisor/CHANGELOG.md).