-
Notifications
You must be signed in to change notification settings - Fork 131
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Automatically update/deploy periodically or when there're doc changes upstream #19
Comments
After talking with @MarshallOfSound the plan has slightly changed:
There's the question on how to automatically merge PRs if needed (i.e.: when there's only markdown content changes). There are a couple alternatives we need to investigate (like triggering another I've updated the initial issue to reflect this changes and added a diagram that hopefully makes things easier to understand. |
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to update the content when there is a change upstream by: - Adding a webhook handler to redirect `push` and `release` events from `electron/electron` to this repo. - Adding a GitHub action that responds to `repository_dispatch` events comming from the previous webhook. More information can be found in #19 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19
This commit adds support to respond to `repository_dispatch` events coming from `electron/electron-website-updater` that contain the SHA of the new commit in `electron/electron` to pin to in `package.json`. More information about the architecture can be found in #19. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Fix #19 Close #23
Problem
We need a way to automatically ingest changes in the documentation into the website.
There are 2 scenarios @erickzhao and I have identified:
sidebars.js
reflecting the new file. Human intervention is expected to approve the PR and/or update the file to the right locations. Alternatively, we could add default categories and improve the logic to move files around to automate this even more and auto-merge.Proposed solution
The idea is to add a push webhook event from
electron/electron
to a new endpoint. This endpoint will check if:/docs
folderIf so, it will trigger a
respository_dispatch
event with the typedoc_changes
and the SHA of the commit as part of the payload.The GitHub action will do the following for the
doc_changes
type:package.json
)npm run build
chore: update ref to docs (🤖)
package.json
is modified) ➡ Pushes the commit directly tomain
sidebars.js
is modified as well) ➡ Pushes the commit to the branchchore/docs-updates
(it gets created if it does not exist). Then checks if there is an open PR for that branch and if not it creates it. Human intervention is expected to merge this PRThe following diagram should help better visualize the above:
Questions?
How to force a deploy in Heroku?
Because we are changing the SHA in
package.json
there is no need to force a deploy, it will be automatically kicked by Heroku.What happens when there's a new major release?
We could configure the webhook to receive also the
release
event. The fields to validate are:And
release.tag_name
should be >= than the current available version on npm (there could be a 30second-2min delay between GitHub and npm releases). The reason is that there could be a minor release from a previous version.Because the fiddle prebuilt steps requires the latest version available we should probably wait until it is available (and add a timeout of a few minutes).
Another problem is that the payload of release does not seem to have the commit SHA (at least in the example) so we will need a way to find it.
The text was updated successfully, but these errors were encountered: