Skip to content

Commit 8daa655

Browse files
authored
README: Add community and open source related links (#109)
Adds community and open source links that are in other repos (e.g. base-org/node, base-org/pessimism).
1 parent 9bdbb5f commit 8daa655

File tree

2 files changed

+38
-12
lines changed

2 files changed

+38
-12
lines changed

README.md

+38-12
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,70 @@
1+
![Base](logo.webp)
2+
13
# contract-deployments
24

35
This repo contains execution code and artifacts related to Base contract deployments, upgrades and calls. For actual contract implementations, see [base-org/contracts](https://github.com/base-org/contracts).
46

57
This repo is structured with each network having a high level directory which contains sub directories of any "tasks" (contract deployments/calls) that have happened for that network.
68

9+
<!-- Badge row 1 - status -->
10+
11+
[![GitHub contributors](https://img.shields.io/github/contributors/base-org/contract-deployments)](https://github.com/base-org/contract-deployments/graphs/contributors)
12+
[![GitHub commit activity](https://img.shields.io/github/commit-activity/w/base-org/contract-deployments)](https://github.com/base-org/contract-deployments/graphs/contributors)
13+
[![GitHub Stars](https://img.shields.io/github/stars/base-org/contract-deployments.svg)](https://github.com/base-org/contract-deployments/stargazers)
14+
![GitHub repo size](https://img.shields.io/github/repo-size/base-org/contract-deployments)
15+
[![GitHub](https://img.shields.io/github/license/base-org/contract-deployments?color=blue)](https://github.com/base-org/contract-deployments/blob/main/LICENSE)
16+
17+
<!-- Badge row 2 - links and profiles -->
18+
19+
[![Website base.org](https://img.shields.io/website-up-down-green-red/https/base.org.svg)](https://base.org)
20+
[![Blog](https://img.shields.io/badge/blog-up-green)](https://base.mirror.xyz/)
21+
[![Docs](https://img.shields.io/badge/docs-up-green)](https://docs.base.org/)
22+
[![Discord](https://img.shields.io/discord/1067165013397213286?label=discord)](https://base.org/discord)
23+
[![Twitter BuildOnBase](https://img.shields.io/twitter/follow/BuildOnBase?style=social)](https://twitter.com/BuildOnBase)
24+
25+
<!-- Badge row 3 - detailed status -->
26+
27+
[![GitHub pull requests by-label](https://img.shields.io/github/issues-pr-raw/base-org/contract-deployments)](https://github.com/base-org/contract-deployments/pulls)
28+
[![GitHub Issues](https://img.shields.io/github/issues-raw/base-org/contract-deployments.svg)](https://github.com/base-org/contract-deployments/issues)
29+
730
## Setup
831

932
First install forge if you don't have it already:
10-
* Run `make install-foundry` to install [`Foundry`](https://github.com/foundry-rs/foundry/commit/3b1129b5bc43ba22a9bcf4e4323c5a9df0023140).
33+
34+
- Run `make install-foundry` to install [`Foundry`](https://github.com/foundry-rs/foundry/commit/3b1129b5bc43ba22a9bcf4e4323c5a9df0023140).
1135

1236
To execute a new task run one of the following commands (depending on the type of change you're making):
13-
* For incident response commands: `make setup-incident network=<network> incident=<incident-name>`
14-
* For full new deployment (of L1 contracts related to Base): `make setup-deploy network=<network>`
15-
* For contract calls, upgrades, or one-off contract deployments: `make setup-task network=<network> task=<task-name>`
37+
38+
- For incident response commands: `make setup-incident network=<network> incident=<incident-name>`
39+
- For full new deployment (of L1 contracts related to Base): `make setup-deploy network=<network>`
40+
- For contract calls, upgrades, or one-off contract deployments: `make setup-task network=<network> task=<task-name>`
1641

1742
Next, `cd` into the directory that was created for you and follow the steps listed below for the relevant template.
1843

1944
## Directory structure
2045

2146
Each task will have a directory structure similar to the following:
2247

23-
* **[inputs/](/inputs)** any input json files
24-
* **[records/](/records)** foundry will autogenerate files here from running commands
25-
* **[script/](/script)** place to store any one-off foundry scripts
26-
* **[src/](/src)** place to store any one-off smart contracts (long lived contracts should go in [base-org/contracts](https://github.com/base-org/contracts))
27-
* **.env** place to store env variables specific to this task
48+
- **[inputs/](/inputs)** any input json files
49+
- **[records/](/records)** foundry will autogenerate files here from running commands
50+
- **[script/](/script)** place to store any one-off foundry scripts
51+
- **[src/](/src)** place to store any one-off smart contracts (long lived contracts should go in [base-org/contracts](https://github.com/base-org/contracts))
52+
- **.env** place to store env variables specific to this task
2853

2954
## Using the incident response template
3055

3156
This template contains scripts that will help us respond to incidents efficiently.
3257

3358
To use template during an incident:
59+
3460
1. Fill in TODOs in the relevant script.
3561
1. Fill in dependency commit values in the `.env` file.
3662
1. Delete the other scripts that are not being used so that you don't run into build issues.
3763
1. Check in code once addresses have been filled in.
3864
1. Have each signer pull the branch, and run relevant signing command from the Makefile.
3965

4066
To add new incident response scripts:
67+
4168
1. Any incident response related scripts should be included in this template (should be generic, not specific to network), with specific TODOs wherever addresses or other details need to be filled in.
4269
1. Add the relevant make commands that would need to be run for the script to the template Makefile
4370
1. Add relevant mainnet addresses in comments to increase efficiency responding to an incident.
@@ -46,19 +73,18 @@ To add new incident response scripts:
4673

4774
This template is used for deploying the L1 contracts in the OP stack to set up a new network.
4875

49-
1. Specify the commit of [Optimism code](https://github.com/ethereum-optimism/optimism) and [Base contracts code](https://github.com/base-org/contracts) you intend to use in the `.env` file
76+
1. Specify the commit of [Optimism code](https://github.com/ethereum-optimism/optimism) and [Base contracts code](https://github.com/base-org/contracts) you intend to use in the `.env` file
5077
1. Run `make deps`
5178
1. Fill in the `inputs/deploy-config.json` and `inputs/misc-config.json` files with the input variables for the deployment.
5279
1. See the example `make deploy` command. Modifications may need to be made if you're using a key for deployment that you do not have the private key for (e.g. a hardware wallet)
5380
1. Run `make deploy` command
5481
1. Check in files to github. The files to ignore should already have been specified in the `.gitignore`, so you should be able to check in everything.
5582

56-
5783
## Using the generic template
5884

5985
This template can be used to do contract calls, upgrades or one-off deployments.
6086

61-
1. Specify the commit of [Optimism code](https://github.com/ethereum-optimism/optimism) and [Base contracts code](https://github.com/base-org/contracts) you intend to use in the `.env` file
87+
1. Specify the commit of [Optimism code](https://github.com/ethereum-optimism/optimism) and [Base contracts code](https://github.com/base-org/contracts) you intend to use in the `.env` file
6288
1. Run `make deps`
6389
1. Put scripts in the `scripts` directory (see examples that are part of the template, for example there is a file `TransferOwner.s.sol`, which can be used to setup the ownership transfer task). See note below if running a task that requires a multisig to sign.
6490
1. Call scripts from the Makefile (see examples in the template Makefile that's copied over).

logo.webp

37.6 KB
Binary file not shown.

0 commit comments

Comments
 (0)