-
Notifications
You must be signed in to change notification settings - Fork 196
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
docs(guides/best-practices/deployment-settings): first version 🚗 (#2767)
Co-authored-by: alvarius <[email protected]> Co-authored-by: Kevin Ingersoll <[email protected]>
- Loading branch information
1 parent
3440a86
commit 6a69b69
Showing
2 changed files
with
21 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,6 @@ | ||
export default { | ||
"system-best-practices": "System Best Practices", | ||
"deployment-settings": "Recommended Deployment Settings", | ||
"kms": "Deploy production worlds using AWS KMS" | ||
}; | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
import { Callout } from "nextra/components"; | ||
|
||
# Recommended Deployment Settings | ||
|
||
These are our recommended settings for deploying MUD applications on a production network, such as [Redstone](https://redstone.xyz/). | ||
|
||
## Before the deployment | ||
|
||
- Make sure you are using [the latest MUD version](https://mud.dev/changelog). | ||
- To make the `World`'s core contract [upgradeable](https://mud.dev/world/upgrades#making-an-upgradeable-world), set `deploy.upgradeableWorldImplementation` to `true` in [the `mud.config.ts` file](/config). | ||
- When writing the client use chain configs from [`@latticexyz/common/chains`](https://github.com/latticexyz/mud/tree/main/packages/common/src/chains): [Garnet (the testnet)](https://github.com/latticexyz/mud/blob/main/packages/common/src/chains/garnet.ts) and [Redstone (the production network)](https://github.com/latticexyz/mud/blob/main/packages/common/src/chains/redstone.ts). | ||
|
||
## During the deployment | ||
|
||
If possible, [deploy using AWS KMS](./kms). | ||
If not, [transfer ownership](https://github.com/latticexyz/mud/blob/main/packages/world/src/modules/init/implementations/AccessManagementSystem.sol#L50-L74) of the root namespace to AWS KMS or a multi-sig wallet as early as possible. | ||
|
||
## After the deployment | ||
|
||
- [Verify the contracts](/cli/verify) as soon as possible after deployment. |