-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Activity-based prebuilds #20006
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
Activity-based prebuilds #20006
Conversation
This reverts commit d7c4550.
541cd87 to
aff1d1a
Compare
| configuration: Configuration; | ||
| }; | ||
|
|
||
| const COACHMARK_KEY = "new_prebuilds_trigger_notification"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's not really a coach mark, but I for some reason couldn't imagine coachmarksDismissals being used for anything else in #19413 🤦
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, hindsight's 20/20
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sweet! ❤️ Love how much complexity this removes
6540554 to
378040e
Compare
|
|
Description
Starting with this PR, when you enable prebuilds on a repository, there no longer will be a webhook installed on the underlying scm-hosted repo. Instead, prebuilds will be triggered based on workspace activity, or in other words, a prebuild will trigger any time a workspace is created on a repo which has them enabled. This of course still takes prebuild preferences into account, so commit intervals, branch matching strategies and other settings still apply.
This is how the setup will look like for current repos:
graph TD subgraph GitHub GHRepo[Repository] end subgraph Gitpod GPRepo[Configured Repository] Workspace[Workspace] end GHRepo -- Webhook --> GPRepo GHRepo -- Code --> Workspace GPRepo -- Code push Trigger --> Prebuild[Prebuild] Workspace -- Workspace Creation Trigger --> PrebuildAnd for new repositories, without purely activity-based
graph TD subgraph GitHub GHRepo[Repository] end subgraph Gitpod GPRepo[Configured Repository] Workspace[Workspace] end GHRepo -- Code --> Workspace Workspace -- Workspace Creation Trigger --> PrebuildRelated Issue(s)
Fixes ENT-435
How to test
In order to test, you can follow these steps:
Repository settings. It should preferably be some throwaway repo to which you can push to (for instance, feel free to fork https://github.com/filiptronicek/test-foofies/ from which you can run./commits.sh <n>)a. The prebuild was used for the workspace
b. No new prebuild was triggered
Documentation
https://github.com/gitpod-io/website/pull/4756
Preview status
https://ft-activit0b1202b619.preview.gitpod-dev.com/workspaces
Build Options
Build
Run the build with werft instead of GHA
Run Leeway with
--dont-testPublish
Installer
Add desired feature flags to the end of the line above, space separated
Preview Environment / Integration Tests
If enabled this will build
install/previewIf enabled this will create the environment on GCE infra
Saves cost. Untick this only if you're really sure you need a non-preemtible machine.
Valid options are
all,workspace,webapp,ide,jetbrains,vscode,ssh. If enabled,with-previewandwith-large-vmwill be enabled./hold