202 Commits

Author SHA1 Message Date
Sven Efftinge
581408def5
[dashboard] make new workspace aware of project (#16742) 2023-03-09 11:30:45 +01:00
Gero Posmyk-Leinemann
9382e36bcd
[server] Implement cancelTeamSubscription (#16663) 2023-03-06 09:28:03 +01:00
Brad Harris
7e15f6d793
Report ErrorBoundary from Dashboard (#16647)
* adding a reportErrorBoundary method

* temp test of error boundary

* adding a fallback for error.mesage

* remove test code

* removing unintentional change

* Dropping url from metric label, feedback changes
2023-03-06 09:02:03 +01:00
Christian Weichel
da4cafd5e5
Gitpod OIDC Identity Provider (#16482)
* Prototype IDP provider

* [gp cli] Add IDP commands

* [public-api] Remove zitadel based IDP implementation

* [gitpod-cli] Add IDP support for Vault

* [idp] Remove per-org IDP

* [idp] Add key cache and random key IDs

* [idp] Defer GetIDToken authorisation to server

* [idp] Add Redis public key cache

* [gitpod-cli] Hide IDP commands

* [idp] Add key ID to JWT

* [idp] Add unit tests

* [idp] Adress review comments

* [public-api-server] Use logging middleware globally

* [public-api-server] Simplify service registration

* [idp] Add Redis outage resilience
2023-03-03 17:11:01 +01:00
Pudong
5ee2a66b13
[dashboard, server] Add global custom timeout preference (#16503)
* [dashboard] add custom global timeout user preference

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

* [server] allow user custom global timeout

* [server] add `supportConfigureWorkspaceTimeout` and `updateWorkspaceTimeoutSetting` api

* [dashboard] use new api to configure workspace timeout setting

* [dashboard, server] use maySetTimeout

---------

Co-authored-by: George Tsiolis <tsiolis.g@gmail.com>
2023-03-03 09:30:00 +01:00
Gero Posmyk-Leinemann
9d2d729b37
[server] Implement tsAddMembersToOrg (#16638) 2023-03-02 17:44:00 +01:00
Alex Tugarev
aa49b87cca
[dashboard] Add "Switch to pay-as-you-go" page (#16488)
* [server] add tsCancel to support Switch-to-PAYG

* [server] relax Stripe-check for switchToPAYG

* [server] fix faulty guard in deleteUser

* [dashboard] add "Switch to pay-as-you-go" Page
2023-02-24 16:27:54 +01:00
Gero Posmyk-Leinemann
b21e2f276a [server] Create nudges for all Chargebee Personal/Team Subscription/Team Subscription 2 owners 2023-02-22 11:02:52 +01:00
Gero Posmyk-Leinemann
632f872b3c [server, dashboard] Extend getNotifications to: AppNotification 2023-02-22 11:02:52 +01:00
Anton Kosyakov
532513a848 fix #12208: gp env to respect workspace env vars 2023-02-20 18:36:50 +01:00
Huiwen
0810836f85 [server,dashboard] add endpoints to get ide credentials 2023-02-15 08:44:19 +01:00
Sven Efftinge
0c0178b610 [server] pass organizationId to create ws 2023-02-14 12:07:19 +01:00
Milan Pavlik
db05a7f5be [server] Typed workspace region 2023-02-10 15:26:15 +01:00
Filip Troníček
880f186042 gp timeout set and gp timeout show to echo back the server-interpreted display duration
This means that 1439m doesn't become "1439 minutes", but rather "29 hours and 59 minutes"
2023-02-10 11:38:15 +01:00
Filip Troníček
d5b7d3ada9 Minor improvements to the workspace timeout validation
1. Only allow decimal values in timeouts
    This allowed users to have durations in other number systems like hexadecimal. For example `0xfd` was a valid timeout.
2. Remove "d" (day) as a unit
    Because this unit is both rejected by the backend and timeouts cannot be longer than 24 hours, it does not make sense to allow it.

Co-authored-by: Lou Bichard <contact@louisjohnbichard.co.uk>
2023-02-10 11:38:15 +01:00
Filip Troníček
527f1eb1fd Add a 24-hour timeout limit to workspace timeouts 2023-02-10 11:38:15 +01:00
Filip Troníček
626b0e1386 Add humanReadableDuration as return value from setWorkspaceTimeout 2023-02-10 11:38:15 +01:00
Sven Efftinge
74aa6db6e4 [ws-manager-api] Add region for cluster selection 2023-02-08 10:51:46 +01:00
Brad Harris
64d46a9aac Adding Git Integrations to Team Settings 2023-02-07 11:31:45 +01:00
Brad Harris
3077ef5b43 creating distinct fns for org provider calls 2023-02-02 16:01:41 +01:00
Brad Harris
d24ae32b27 Removing ownerId from method params 2023-02-02 16:01:41 +01:00
Brad Harris
7b8b3e09ea adding flag check on methods 2023-02-02 16:01:41 +01:00
Brad Harris
fff28968f1 Adds org id to auth providers & new api methods 2023-02-02 16:01:41 +01:00
Sven Efftinge
03a5fb6ac7 [billing] provide human readable price info 2023-01-23 11:55:30 +01:00
Sven Efftinge
95996df038 [server, cli] Allow flexible workspace timeouts 2023-01-18 16:14:26 +01:00
Sven Efftinge
9b1917b68d [server] mandatory team name on update 2023-01-16 18:41:24 +01:00
Sven Efftinge
837844d7f8 [server] Added updateTeam call
see #5067
2023-01-16 18:41:24 +01:00
Sven Efftinge
0605514421 [server] Allow options on ws start
introduces IDE and workspace class arguments on WS Start
2022-12-16 08:42:25 -03:00
Christian Weichel
478a75e744 Switch license to AGPL 2022-12-08 13:05:19 -03:00
Milan Pavlik
b79af4c184 [server] Move admin endpoints on GitpodServer to AdminServer 2022-12-06 12:08:16 -03:00
Sven Efftinge
e044c1d49f [admin] allow usage adjustments 2022-11-22 06:31:51 -03:00
Sven Efftinge
17424c972b [gitpod-protocol] remove dependency to usage-api 2022-11-16 17:32:46 +02:00
Jan Keromnes
0d740fc3ea [server][dashboard] Fetch and use the actual cost center billing cycle dates in usage-based Billing pages 2022-11-11 13:32:41 +02:00
Milan Pavlik
600e155ae6 [server] Remove userId from removeTeam() rpc 2022-11-09 17:15:39 +02:00
Sven Efftinge
81177d2eac Incremental workspaces 2022-11-08 09:33:37 +01:00
Milan Pavlik
87485bf48c [server] Add getTeam 2022-11-02 09:34:06 +01:00
Gero Posmyk-Leinemann
07bf05a90b [server] Use CostCenter to determine BillingAccount options 2022-10-21 11:31:36 +02:00
Jan Keromnes
53c1a1f5c5 [server] Make 'subscribeToStripe' return the new usage limit 2022-10-13 11:45:28 +02:00
Jan Keromnes
30a58cddd0 [server][dashboard] Always explicitly set a usage limit when upgrading to Stripe 2022-10-13 11:45:28 +02:00
Andrew Farries
63c4fec94e Remove all references to layoutData 2022-10-04 08:15:20 +02:00
Jan Keromnes
a99b0c3a74 [server] Refactor StripeService.createCustomer to only use attributionIds 2022-09-23 15:53:24 +02:00
Jan Keromnes
064755b7c4 [server][dashboard] Refactor createOrUpdateStripeCustomerFor{User,Team} to createStripeCustomer 2022-09-23 15:53:24 +02:00
Andrew Farries
317d157bc1 Remove findStripeSubscriptionIdForTeam method 2022-09-23 09:18:24 +02:00
Andrew Farries
a4cb27d61e Remove get/setUsageLimitForTeam methods 2022-09-23 09:18:24 +02:00
Andrew Farries
c846cc8480 Remove getStripePortalUrlForTeam method 2022-09-23 09:18:24 +02:00
Andrew Farries
a1e9700142 Remove subscribeTeamToStripe method 2022-09-23 09:18:24 +02:00
Alex Tugarev
eb8e1d7167 Update notifications on updates to subscription 2022-09-15 16:25:16 +02:00
Jan Keromnes
3182ee45f9 [dashboard][protocol] Remove unused params from CreateProjectParams 2022-09-15 11:35:16 +02:00
Andrew Farries
743dcf7690 Add getUsageLimitFor and setUsageLimitFor
Add two new methods to the server API for getting and setting usage
limits. Both new functions take an attributionId and work for both users
and teams.

For backwards compatibility, leave the `getUsageLimitForTeam` and
`setUsageLimitForTeam` methods as they are still used by the dashboard,
but change them to be implemented in terms of the more general `get/set`
methods.
2022-09-14 08:58:15 +02:00
Jan Keromnes
23f216b831 [server] Remove deprecated sendFeedback method 2022-09-13 17:16:14 +02:00