* [server config] Introduce isDedicatedInstallation, and use it to replace isSIngleOrgInstallation
incl. further cleanup around getConfiguration and server config
* [server, dashboard] Remove enableDedicatedOnboardingFlow feature flag and replace is with getInstallationConfiguration.IsDedicatedInstallation
* [dashboard, server] Remove "sinlgeOrgMode"
* [server] OrganizationService: block createTeam consistently for org-owned users
* [server, dashboard] Introduce "enable_multi_org" feature flag to allow admin-user to create organizations
* [dashboard] introduce "/?orgSlug=", which allows to pre-select an org in a "create workspace" URL (e.g. "/?orgSlug=org1#github.com/my/repo")
* [db] Auto-delete container "test-mysql" if it's already present
* fix tests
* [dashboard] Check if localStorage is available before using it
* [dashboard] SSOLogin: fix orgSlug source precedence to: path/search/localStorage
* [server] Deny "joinOrganization" for org-owned users
* Gpl/970-multi-org-tests (#20436)
* fix tests for real
* [server] Create OrgService.createOrgOwnedUser, and use that across tests to fix the "can't join org" permission issues
* Update components/server/src/orgs/organization-service.ts
Co-authored-by: Filip Troníček <filip@gitpod.io>
---------
Co-authored-by: Filip Troníček <filip@gitpod.io>
---------
Co-authored-by: Filip Troníček <filip@gitpod.io>
* [JetBrains] add more integration tests
* Add deps
* Add in workspace JetBrains integration test
* Support papi
* fixup
* Test succeed
* remove unnecessary code
* Fixup
* Remove warmup TODO item
* Add doc for sh file
* Increase timeout and make it run in parallel
* Use empty
* fixup
* Sleep
* db wait
* speed up
* turn text input into select input
* mimic old behavior for pre-existing projects
* explicit settings under the project should have precedence
* add PrebuildBranchPattern to project settings
* add branch name pattern to project settings page
* fixup c&p error
* match branch names by glob pattern
* fix pattern matching
* fix project settings form
* fix initial value for prebuildBranchPattern
* adding more tests
* add globstar tes
* fixup rebase error
* Apply suggestions from code review
Co-authored-by: George Tsiolis <tsiolis.g@gmail.com>
* fine tune debounce wait
---------
Co-authored-by: George Tsiolis <tsiolis.g@gmail.com>
* add `prebuildDefaultBranchOnly` to `Project.settings`
* evaluate prebuildDefaultBranchOnly in PrebuildManager
* add "Prebuild the default branch only" checkbox
* fix missin PAPI mapping 🤯
* fix PrebuildDefaultBranchOnly in gitpod-service.go
* turn text input into select input
* update styles on project settings page
* mimic old behavior for pre-existing projects
* use getPrebuildBranchStrategy in PrebuildManager
* add tests for PrebuildManager.prebuildPrecondition
* fix getPrebuildEvents
* explicit settings under the project should have precedence
* render changes to project settings immediately
* cleanup: remove obsolete remainings of /prebuild prefix
* Add Project.settings.enablePrebuilds
* PrebuildManager.shouldPrebuild to consider Project.settings.enablePrebuilds
* Don't install webhooks on project creation
* foreseeable change: don't prefetch project details
* fix: unused imports
* redirect to project settings on project created
* don't trigger prebuilds on project created
* fix: get rid of many ListProjects requests on Settings page
* Project Settings: add checkbox for "enable prebuilds"
* handle "enable prebuilds" in server
* updating PAPI
* fixup
* fixup
* make PrebuildManager require a Project to work on
* also SCM webhook handlers
* move project usage registration to PrebuildManager
* address feedback on useListProjectsQuery and useCurrentProject
* remove empty class name attributes
* make use of <InputField> as wrapper for <SelectWorkspaceClassComponent>
* fixup <SelectWorkspaceClassComponent> width
* update hint on "Enable Prebuilds" action
Co-authored-by: George Tsiolis <tsiolis.g@gmail.com>
* fix "enablePrebuild" handling
* add [Enable Prebuilds] button to "Project Created" page
* show detailed prebuild setting only if prebuilds are enabled
* drive-by: fix max width on "Remove Project"
* fix: re-add `loading` state to `useCurrentProject` hook
this caused an issue with loading components as `useListProjectsQuery.isLoading` is false initially.
* add "Enable Prebuilds" to project card
* fixup project-context.tsx
state should only be updated if `useListProjectsQuery` is loaded.
* fixup button type
* add hint to create a .gitpod.yml
* Apply suggestions from code review
Co-authored-by: George Tsiolis <tsiolis.g@gmail.com>
* remove unnecessary !
* extract Project.isPrebuildsEnabled
* fixup: add missing await
* render "Learn more" if not enabled, too.
* fix getCloneUrl for BBS
* fix getCloneUrl for GitLab
---------
Co-authored-by: George Tsiolis <tsiolis.g@gmail.com>
* setting up CreateAndStartWorkspace handler
* adjust args
* adding createWorkspace scope for desktop app
* add getToken scope to desktop app oauth client
* remove for now
* adding region
* adding getToken while in here
* options.init
* Respond with options
* Move to editor service
* Unused imports
* Mount ot the correct service
* Sort by orderkey
* Simplify enum name
* Add tests
* Options -> `result` for consistency
* fix result field