202 Commits

Author SHA1 Message Date
Filip Troníček
7bcc749da0
Configuration Variables page (#19128)
* `updateConfiguration`

* typdate

* Try with no deeply nested property

* JKADFkosaNcISADFuisabnfhjl hjkafb ashjdbjbhj

* Constrain even further

* Return the configuration

* Fix update mutation

* Only update necessary properties

* Implement name changes

* typastuff

* 🙄

* Mutation update

* 🤷‍♂️

* init

* Remove method present in upstream

* newlines and imports

* Address env var API changes

* fixies

* Fix list query key

* Fix for new router

* Fix list vars key? 🤷‍♂️

* Simplify return

* Adding stuff

* Add path

* Single variable component

* Use mutation callbacks for success and errs

* Typography and layout

* Do not store variable data in-browser

* Edit variable modal

* De-center

* Small fixes with admission init

* Spacing and alignment of menu items

* 🤷‍♂️

* Error reporting for creation/edit

* Update copy

* Verboserer output

* Fix missing argument 😱

* Pass in all properties of variables

* Provide ID when updating

* Fix changing admission

* Simplify

* Update table copy

* Text sizes

* Format

* Typo

* rename

* Simplify

* Copy update

* Rename comp

* Duplicate error printing

* Use `TextInputField`!

* Clean up TextInputField

* Break instead of truncate

* Fixed width table headers

Co-authored-by: Brad Harris <bmharris@gmail.com>

* Simplify route setup

---------

Co-authored-by: Brad Harris <bmharris@gmail.com>
2023-12-02 00:31:09 +02:00
Alex Tugarev
79666cd24d
[dashboard] Use SCM Service (gRPC) (#19101)
* [dashboard] Use SCM Service (gRPC)

* address review comments

* bump cache version
2023-11-22 18:26:00 +02:00
Alex Tugarev
3b85bf13e1
[server] remove unused getFeaturedRepositories (#19100) 2023-11-21 16:42:59 +02:00
Alex Tugarev
4b78a99f20
Remove obsolete New Project page (#19077)
* [dashboard] Remove New Project page

* remove unused query

* [server] make unused getProviderRepositoriesForUser a no-op

* [server] remove unused scm provider code
2023-11-17 12:12:54 +02:00
Alex Tugarev
feb9fa2597
🌇 GitHub App in Dashboard (#19070)
* [dashboard] compute `useIsGithubAppEnabled` on FE

* [dashboard] update Install GitHub App

* [server] make GH App methods no-op (compat)
2023-11-16 13:18:54 +02:00
Alex Tugarev
0907ff51e1
[server] remove obsolete and unused getSuggestedContextURLs (#19074)
* [server] remove obsolete and unused `getSuggestedContextURLs`

* fixup papi
2023-11-16 13:17:54 +02:00
Alex Tugarev
aa691ddf01
Remove Prebuild Events page and jsonrpc methods (#19069) 2023-11-14 14:13:52 +02:00
Christian Weichel
bb51f07988
Collect workspace classes from workspace cluster (#19003)
* Extend ws-manager API to support workspace class descriptions

fixes ENG-1065

* Extend  DescribeCluster in ws-manager-mk2

to acurately report the available workspace classes

fixes ENG-1066

* Add workspace classes to cluster in DB

* Intergrate workspace cluster collection in ws-manager-bridge

* Feature flag off discovered workspace class usage

* Fix build

* Add unittest for getSupportedWorkspaceClasses

* Fix workspace class storage

* Adress review feedback
2023-11-10 13:13:48 +02:00
Alex Tugarev
b2d501842f
[server] move FGA calls into AuthProviderService (#19017)
* [server] move FGA calls into AuthProviderService

* split internal upsert method `updateAuthProvider` into create and update
* refactor: move `getAuthProviders` logic from gitpod-server-impl to auth-provider-service
* adding db tests for auth provider server
* use redacted results in service

* Fix typos

* extract helper functions for scopes

* add more tests

* as regular member, should find org-level providers if no built-in providers present
* as regular member, should find only built-in providers if present

---------

Co-authored-by: Huiwen <mhqnwt@gmail.com>
2023-11-10 10:25:47 +02:00
Sven Efftinge
4c35db7587
Add "more elements" hint to repo search. (#19016) 2023-11-06 23:41:45 +02:00
Alex Tugarev
b2260d021e
Migrate Prebuild settings – EXP-672 (#18842)
* [protocol] Add PrebuildSettings to ProjectSettings

* add migration function

* add migration function and test

* update protocol helper functions

* update prebuild manager

* use new prebuild setting in frontend

* update papi

* fix papi test

* rename var

* fix papi mapping

* deprecation note

* update migration function

* fix prebuild-manager

* fixup server

* fix Enable Prebuilds on Project Settings

* Use Project.getPrebuildSettings
and

* fix countUnabortedPrebuildsSince

* improve usage of default settings

* fix Build Branches select

* fix papi conversion 🤯

* don't save empty pattern strings

* fix papi-server conversion and align naming of prebuild settings

* fix getPrebuildSettings

* [prebuilds] changed prebuild semantics

- no more incremental prebuilds
- always incremental workspace
- never wait for running prebuilds

---------

Co-authored-by: svenefftinge <sven@gitpod.io>
2023-10-05 17:37:13 +03:00
Brad Harris
89af3c0871
Adding searchRepositories jsonrpc method (#18827)
* adding searchRepositories method w/ github impl

* fix a few things and add bbs impl for searchRepos

* integrate searchRepositories in RepositoryFinder

* adjusting loading indicators

* cleanup

* wrap repository search behind feature flag

* Changing queries for github repo search

* fix enabled to use debounced value

* fix org filters

* drop variables for query

* fixing encoding
2023-09-29 22:28:08 +03:00
Sven Efftinge
14a21a7657
[projects] lookup projects by id not cloneURL (#18774) 2023-09-25 11:13:04 +02:00
Anton Kosyakov
34443431b1
add ws client metrics (#18773) 2023-09-22 16:56:01 +02:00
Huiwen
62c573a453
Add default image get to PAPI and improve Dashboard (#18767)
* [server] update getDefaultWorkspaceImage api

* [dashboard] api usage update

* [protocol] add go definition

* [papi] add getDefaultWorkspaceImage method

* fixup

* [dashboard] add org image warning to start workspace page

* fix error wrap

* Update supervisor to use publicApi

* [dashboard] always show default image and remove tag width limit

* fixup

* move new warning to StartPage

* Update components/dashboard/src/teams/TeamSettings.tsx

Co-authored-by: George Tsiolis <tsiolis.g@gmail.com>

* Address feedback

---------

Co-authored-by: George Tsiolis <tsiolis.g@gmail.com>
2023-09-22 11:58:01 +02:00
Gero Posmyk-Leinemann
af88bed373
[server, dashboard] Remove api.maySetTimeout (+ code cleanup in User- + EntitlementService) (#18769)
* [dashbaord, server] Remove api.maySetTimeout

* [server] Remove dead code in Entitlement- and UserService

* review comments
2023-09-22 11:03:01 +02:00
Huiwen
a2b5b00db1
[server,dashboard] improve org default image input placeholder (#18746)
* [server,dashboard] improve org default image input placeholder

* fix build failed

* Use null instead of `NULL_TO_UNDEFINED`

* fixup

* fixup toast not shown
2023-09-20 10:03:59 +02:00
Alex Tugarev
cb3a7f00c6
Add "Enable Prebuilds" to Project Settings – EXP-573 (#18698)
* 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>
2023-09-15 09:07:54 +02:00
Brad Harris
fa3010a305
Adding getSuggestedRepositories method (#18681)
* Adding getSuggestedRepositories method

* accounting for lastUse better

* limit to org

* remove repoName for now

* add checks

* cleanup

* remove repositoryName for now

* cleanup

* removing repo name for now

* adding tracing
2023-09-12 17:11:52 +02:00
Brad Harris
25c949e976
Incremental repo searching (#18566)
* Wiring up api repo searching for bitbucket server

* adding lodash.debounce dep

* add lodash.debounce types

* Hiding account for bitbucket server

* print host only

* adjust loading state to not be totally blocking

* adjust filtering and query key

* support fetching recent repos

* use search params instead of strings

* adjusting loading component

* cleanup

* wrap incremental search code w/ feature flag

* yarn lock updates

* adding a limit to grab only the first 100 repos

* rename for clarity

* change to call in series to reduce rate limit chances

* renaming cap => maxPages

* fixing some stuttering widths changing as things load

* add alert message for bbs searching
2023-08-24 00:36:49 +02:00
Alex Tugarev
3ba583c710
[server] add searchString to getRepositoriesForAutomatedPrebuilds – EXP-461 (#18533)
* [server] add `searchString` to `getRepositoriesForAutomatedPrebuilds`

* reintroduce and fix paginated requests

* using a default cap at 10 requests per paginated request

* make getProviderRepositoriesForUser cancellable
2023-08-17 15:04:43 +02:00
Gero Posmyk-Leinemann
9acc185fe5
[server] Merge WorkspaceDeletionService into WorkspaceGC (#18410)
* [server] Merge WorkspaceDeletionService into WorkspaceGC

* [server] WorkspaceService.getOwnerToken + .getIDECredentials

* review comments

* [server] Cleanup around EntitlementService and BillingMode
2023-08-07 13:38:32 +08:00
Anton Kosyakov
b3ae12f956
git real time (#18323) 2023-08-03 20:51:28 +08:00
Alex Tugarev
29ace4982b
[server] Remove obsolete (Theia) User Storage Resource (#18377)
* [server] Remove obsolete (Theia) User Storage Resource

* more cleanup
2023-08-01 15:48:26 +08:00
Sven Efftinge
075e14c47f
[build] enabled some eslint rules (#18165) 2023-07-04 22:32:21 +08:00
Thomas Schubart
3185a1f88f
[server] Set maximum workspace lifetime (#17919) 2023-07-04 22:22:21 +08:00
Sven Efftinge
caf26b812d
[server] remove getUserProjects (#18093) 2023-06-29 16:30:47 +08:00
Sven Efftinge
248a00eaa8
[server] clean up org-only migration code (#17939) 2023-06-22 15:03:12 +08:00
Milan Pavlik
0777246800
Remove getContentBlob Upload/Download URL (#17983)
* Remove getContentBlob Upload/Download URL

* fix
2023-06-21 16:18:11 +08:00
Milan Pavlik
cf84bf01a7
[server] Remove hasPermission rpc (#17981) 2023-06-20 21:24:11 +08:00
Brad Harris
27f539cbad
track a verificaitonId during phone verification (#17898)
* track a verificaitonId during phone verification

* use snake case property names for tracking

* validate verificationId is uuid

* move validation into service

* typo in error msg
2023-06-12 22:42:02 +08:00
Gero Posmyk-Leinemann
f0f3dfe7bb
[server] Removed deprecated api.getEnvVars (#17832) 2023-06-07 19:01:58 +08:00
Alex Tugarev
9f6b6c0943
Validate cloneUrl agains accessible repositories – WEB-402 (#17809)
* [orgs] Disallow creating Projects under User

* [Projects] Validate cloneUrl against accessible repositories

* fixup condition in createProject
2023-06-05 20:49:56 +08:00
Sven Efftinge
44e92bfd2b
Show migration message after migration (#17672) 2023-05-24 02:08:57 +08:00
Sven Efftinge
28e3649850
Org slugs are kept in sync with name (#17596) 2023-05-12 20:42:57 +08:00
Brad Harris
2eaf257d89
removing setup intent related code (#17539) 2023-05-10 01:41:54 +08:00
Alex Tugarev
af796f2825
[server] Compute state of Dedicated Onboarding (#17466) 2023-05-03 14:27:41 +08:00
Sven Efftinge
d18edfe28c
[orgs-only] Show Information before migration. (#17319) 2023-04-25 15:39:45 +08:00
Milan Pavlik
eb2ceadb76
[server/dash] Remove license RPCs/view WEB-214 (#17342)
* [server/dash] Remove license RPCs/view

* remove licence refs

* Fix

* fix
2023-04-24 22:29:45 +08:00
Alex Tugarev
b7872c1372
Remove deprecated and unused getPortAuthenticationToken method (#17321) 2023-04-24 16:02:45 +08:00
Brad Harris
0f88afefb8
adding backend support for payment intents (#17309)
* adding support for payment intents

* support payment intents in server

* handling new arg

* adjust hold to be 1.00

* removing old comment
2023-04-22 03:05:42 +08:00
Gero Posmyk-Leinemann
ae37d8c1ab
Remove api.isStudent and all connected code/DB (#17275)
* [server, dashboard] Remove isStudent

* [server] Remove hasEducationalInstitutionSuffix and swot-js

* [db] Clean EduEmailDomainDB model

* [db] Drop d_b_edu_email_domain

* [yarn] Remove swot-js from yarn.lock

* [db] Remove d_b_edu_email_domain from tables.ts

* Fix
2023-04-19 15:58:51 +08:00
Gero Posmyk-Leinemann
7635623980
Purge all Chargebee-related API methods (#17262)
* [server] Remove unused Chargebee-related payment APIs

* [server] Handle all permission cases for operations on attributionIds

* [server] Leftover import

* fix build
2023-04-18 19:54:50 +08:00
Milan Pavlik
973c455964
[server] Remove TermsProvider - unused - WEB-167 (#17252)
* [server] Remove TermsProvider - unused

* fix

* fix

* fix
2023-04-18 17:48:50 +08:00
Sven Efftinge
c44aa18c28
[workspace list] filter by org (#17228) 2023-04-17 17:48:49 +08:00
Sven Efftinge
b12678bde1
remove generic notifications (#17217) 2023-04-14 13:57:53 +02:00
Jan Keromnes
f7101c5aed
Implement user account verification with LinkedIn during onboarding (#17074)
* Implement user account verification with LinkedIn during onboarding

* updating connect with linked-in banner

* removing unused imports

* Store token, fix binding

* Refactor LinkedInToken to LinkedInProfile

* Actually write the LinkedIn secret to the server config

* Fetch LinkedIn user profile and email address

* Add creationTime column to d_b_linked_in_profile

* Add more debug logging

* Fix LinkedIn API calls, mount LinkedInProfileDB

* Also bind LinkedInProfileDB

* Add LinkedIn scope r_liteprofile

* Enhance LinkedIn profile retrieval, store the profile, ensure uniqueness

* Align with UX spec and complete onboarding flow

* Prevent the LinkedIn button from auto-submitting the onboarding form

* Address nits (LinkedInService to /src and minor spacing)

---------

Co-authored-by: Brad Harris <bmharris@gmail.com>
2023-04-12 16:39:52 +02:00
Sven Efftinge
d91fbff30d
[Create WS] Various fixes (#17135)
* [server] normalize contextURL

* [create workspace] only create one workspace

- respect referrer context
- useWorkspaceContext returns null instead of being disabled
when contextUrl is undefined

* [dashboard] immediately show running workspaces
2023-04-11 10:07:50 +02:00
Huiwen
0bc795bd28
Allow to disable workspace sharing in team settings (#17042)
* server impl

* dashboard

* dashboard improve

* 1

* add permission check

* update error message

* improve mutation

* 💄

* * remote `deleted` field in respond
* dashboard use new data from server

* update db select

* address UI feedback

* disable query when no org loaded yet

* rename team to org

* allow to stop sharring always

* fix

* Fix

* Fix

* Fix

* Fix

---------

Co-authored-by: Anton Kosyakov <anton@gitpod.io>
Co-authored-by: Brad Harris <bmharris@gmail.com>
Co-authored-by: Milan Pavlik <pavlik.mil@gmail.com>
2023-03-27 23:10:25 +02:00
Alex Tugarev
275e782341
[Orgs] Persist slug (#16923)
* [orgs] Persist `slug`

* [Orgs] Make `slug` changeable on Settings page

* update to use input/button components and mutation

* [papi] Re-add Team.slug

---------

Co-authored-by: Brad Harris <bmharris@gmail.com>
2023-03-24 10:51:16 +01:00