2021-05-17 13:28:50 +00:00
# Interfaces
2021-05-26 10:35:39 +00:00
Interfaces for Erigon components. Currently, it is a collection of `.proto` files describing gRPC interfaces between components, but later documentation about each interface, its components, as well as required version of gRPC will be added
2021-05-17 13:28:50 +00:00
2021-05-26 10:35:39 +00:00
< img src = "erigon-architecture.png" >
2021-05-17 13:28:50 +00:00
# What's in this repo
- Protobuf definitions
- Wrappers:
- Rust crate with autogenerated client and server based on [Tonic ](https://github.com/hyperium/tonic )
NOTE: You are free to ignore provided wrappers and use the .proto files directly
# Suggested integration into other repositories
```
git subtree add --prefix interfaces --squash https://github.com/ledgerwatch/interfaces master
```
2021-05-22 10:00:13 +00:00
When you need to update the subtree to a specific commit or tag, you can use these commands:
2021-05-17 13:28:50 +00:00
```
2021-05-22 10:00:13 +00:00
git rm -rf interfaces
git commit -m"Remove interfaces for replacement"
git subtree add --prefix interfaces --squash https://github.com/ledgerwatch/interfaces < tag_or_commit >
2021-05-17 13:28:50 +00:00
```
2021-05-22 10:00:13 +00:00
Unfortunately `git subtree pull` does not work if we use Squash-Merge for pull requests in this repository
and also automatically delete merged branches.