https://github.com/uber-workflow/probot-app-usync
A Probot implementation of uSync
https://github.com/uber-workflow/probot-app-usync
Last synced: 7 months ago
JSON representation
A Probot implementation of uSync
- Host: GitHub
- URL: https://github.com/uber-workflow/probot-app-usync
- Owner: uber-workflow
- License: mit
- Created: 2019-03-28T22:53:36.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-07-15T09:52:07.000Z (over 2 years ago)
- Last Synced: 2025-01-21T01:14:20.615Z (9 months ago)
- Language: JavaScript
- Homepage:
- Size: 1.54 MB
- Stars: 2
- Watchers: 3
- Forks: 1
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# probot-app-uSync
[](https://buildkite.com/uberopensource/probot-app-usync)
> A Probot implementation of [uSync](https://github.com/uber-workflow/usync)
## Monorepo setup
In addition to the [uSync setup](https://github.com/uber-workflow/usync#setup-your-monorepo), add this pull request template:
**.github/pull_request_template.md**
````md
## Summary
*No summary provided*
## Commit message overrides
**foo/child-repo**
````## Environment vars
`GH_TOKEN`
Account with access to all orgs involved in syncing
`USYNC_PARENT_REPO`
Name of the parent monorepo
## Comment commands
These commands can be triggered by posting a comment on the PR you wish to run the command on.
#### `!import`
Import a pull request from an external repo into the monorepo. This should be considered equivalent to merging, as the external pull request will be closed, and any further changes will happen in the monorepo's generated pull request.
#### `!land`
Land a pull request from the monorepo into it and any configured external repos. This applies not only to imported pull requests, but also those authored directly from the monorepo.
By default, this will require at least one PR approval. To circumvent this, you can add the `breakglass` label to your PR.
## Commit messages
By default, when landing changes, the commit message used for external repos will be the same as the message for the parent repo (pull request title and summary). You may, however, want to provide a specific commit message for external repos.
For example, perhaps you've authored a change in the parent monorepo that spans across multiple synced directories. The default commit message would likely describe all the changes made across the monorepo, but that wouldn't make sense in the context of an external repo; you'd likely want the message for that repo to only describe changes made to its directory.
#### Override format
As seen in the pull request template [above](#monorepo-setup), commit message overrides can be provided under the `Commit message overrides` heading via the bolded repo name followed by a code block containing the entire message:
````md
**[REPO NAME]**
```
My commit titleMy commit summary
```
````## License
[MIT](LICENSE)