620 Commits

Author SHA1 Message Date
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
Gero Posmyk-Leinemann
8d94dd8d01
Use User.fgaRelationshipsVersion instead of User.additionalAttributes.fgaRelationshipsVersion (#18838)
* [db] Add User.fgaRelationshipsVersion

* [server] Use User.fgaRelationshipsVersion
2023-09-29 09:34:07 +03:00
Gero Posmyk-Leinemann
d00f9c0df2
[db] Move towards sync deletion (away from PeriodicDeleter) - step I/II (#18833)
* [db] Tables: remove entries without deletionColumn (not used anymore)

* [db] DBAuthProviderEntry: Switch to sync deletion

* [db] DBTokenEntry: Switch to sync deletion

* [db] DBTeamMembership: Switch to sync deletion

* [db] DBUserStorageResource: remove from periodic deleter

* [db] DBGitpodToken: Switch to sync deletion

* [db] DBProjectUsage: Switch to sync deletion

* [db] DBUserSSHPublicKey: Switch to sync deletion
2023-09-29 09:15:07 +03:00
Gero Posmyk-Leinemann
83493bdb86
[db] Add index for user.verificationPhoneNumber (#18836) 2023-09-28 15:17:08 +03:00
Gero Posmyk-Leinemann
11fa2f3d84
[db] DBWorkspace: add ind_basedOnPrebuildId (#18832) 2023-09-28 15:13:07 +03:00
Pudong
d18ee26dd1
Fix compatibility issues with db-migration (#18831) 2023-09-28 08:39:06 +03:00
Gero Posmyk-Leinemann
91f76d0b76
[db] UserEnvVar: add index ind_userID (#18821) 2023-09-27 14:31:06 +03:00
Gero Posmyk-Leinemann
b21828b7eb
[usage] Add index for usage.draft (#18820) 2023-09-27 13:28:06 +03:00
Gero Posmyk-Leinemann
f617ea2a0c
[db] DBPrebuiltWorkspace: Add index ind_creationTime (#18818) 2023-09-27 13:26:06 +03:00
Gero Posmyk-Leinemann
6fce846355
[db] Optimize WorkspaceDB.findWorkspacesForGarbageCollection to avoid full table scan (#18817) 2023-09-27 10:31:06 +03:00
Gero Posmyk-Leinemann
3e552a3752
[db] DBCodeSyncResource/-Collection: Drop deleted column (#18808) 2023-09-27 10:06:05 +03:00
Gero Posmyk-Leinemann
2c7c770061
[server, usage, db] Drop CostCenter.deleted (not used) (#18809) 2023-09-27 10:05:06 +03:00
Gero Posmyk-Leinemann
ec8ca77143
[usage] FindRunningWorkspaceInstances: Make sure we use an index (#18807)
qcler
2023-09-27 09:16:06 +03:00
Sven Efftinge
c6e90d48cc
[stripe] reconcile missing invoices (#18810) 2023-09-26 18:39:05 +03:00
Manuel Alejandro de Brito Fontes
8ef82ff356
Update go modules to 1.21 (#18805) 2023-09-26 17:52:05 +03:00
Sven Efftinge
14a21a7657
[projects] lookup projects by id not cloneURL (#18774) 2023-09-25 11:13:04 +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
Huiwen
04e576fbe0
Add default workspace image to org setting (#18723)
* Add default workspace image to org setting

* [db] add migration

* fixup

* [dashboard] add org default image settings

* fixup

* dashboard fixup

* Add server image test TODO

* [server] assign global workspace default image

* [dashboard] allow to submit empty string (will fallback to global default)

* [gp-cli] support gp validate with default image

* [dashboard] save default image

* fixup

* fixup

* [gp-cli] improve output

* [gp-cli] improve gp init

* [gp-cli] gp validate compatibility

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

Co-authored-by: Filip Troníček <filip@gitpod.io>

* Remove org id / get org settings in supervisor

* Remove `WorkspaceConfigContext`

* Add unit tests

* Rename to `DefaultWorkspaceImage`

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

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

* Add empty image fallback to supervisor

* Fix default workspace image setup

* Update org settings fields

* fixup

* Allow empty image to set to default one

---------

Co-authored-by: Filip Troníček <filip@gitpod.io>
Co-authored-by: George Tsiolis <tsiolis.g@gmail.com>
2023-09-19 14:51:58 +02:00
Alex Tugarev
0189623c4b
🧹 Update mocha and remove resolutions (#18736)
* remove resolutions in root package.json

update mocha to avoid pulling in minimatch@3.0.4

* adjust mocha config

* also consider *.spec.db.*

* re-add missing exclude of node_modules

* remove recursive

* fix mocha execution
2023-09-19 09:22:58 +02:00
Gero Posmyk-Leinemann
5cb145e57f
Reconcile startWorkspace (#18673)
* [server] Reconcile workspace starts using redlock

* [server] Check abortSignal before updating the DB state

* [server] Add feature flag workspace_start_controller

review comments
2023-09-14 08:40:53 +02:00
Gero Posmyk-Leinemann
64080312e7
[db] Run test against the same (bitnami/)mysql:8.0.33 version (#18373) 2023-09-06 15:28:03 +02:00
Sven Efftinge
71912f721b
Allow renaming project (#18630)
remove project#slug
2023-09-04 09:42:01 +02:00
Gero Posmyk-Leinemann
86fa3ba709
[server] Separate instance creation from instance starting (again) (#18642)
* [server] Separate instance creation from instance starting (again)

* [server] Set instance.configuration.fromBackup
2023-09-04 09:33:01 +02:00
Sven Efftinge
af35dbfe9b
Fix gitstatus updates (#18613) 2023-08-30 10:26:56 +02:00
Alex Tugarev
c7e492b6ef
update node to 18.17.1 (#18525)
* update node to 18.17.1

* use new dev image

* fix webpack in supervisor-frontend

* bump webpack to 5.88.2 in dashboard

* streamline webpack versions

* Fix craco config

* streamline eslint versions

* Update eslint config and disable for now

* Enable eslint again

* Update vscode-jsonrpc for browser implementation

* Polyfill setimmeadiate

* Remove NODE_OPTIONS env var from supervisor front end scripts

* Fix css

* Fix css 2

* Fix checkboxchecked

* Add comment

* Fix yarn.lock

---------

Co-authored-by: Jean Pierre <jeanp413@hotmail.com>
2023-08-24 13:41:50 +02:00
Thomas Schubart
55c9165c0d
Support managed redis (#18581)
* [installer] Specify redis configuration for server

* [server] Configure Redis authentication

* [wsman-bridge] Configure Redis authentication

* [wsman-bridge] Add redis credentials to environment
2023-08-24 10:30:50 +02:00
Sven Efftinge
246d8eda48
[fga] check some admin functions (#18562) 2023-08-21 18:22:47 +02:00
Jean Pierre
b95a4687bf
[fga] Introduce EnvVarService (#18503) 2023-08-16 22:12:42 +02:00
Manuel Alejandro de Brito Fontes
513ca768f6
Update buildkit to v0.12.1 (#18505)
* Update buildkit to v0.12.1

* Update DisplaySolveStatus signature

* Switch to github.com/containerd/typeurl/v2
2023-08-15 09:17:40 +02:00
Huiwen
700b6050ba
Make db waiter to wait latest migration (#18455)
* Make db waiter to wait latest migration

* Move generate out of build

* Remove conn require

* Allow to ignore migration check

* Use shell

* Use fail and remote useless log

* Generate service-waiter txt when create migration

* Revert "Generate service-waiter txt when create migration"

This reverts commit 11c12b83544a448f9784f8aa94cdfd69cfb15f45.

* Add log
2023-08-10 13:51:36 +02:00
Anton Kosyakov
f44e55976e
[fga] migrate workspace relationships (#18459)
Co-authored-by: geropl <gero@gitpod.io>
2023-08-09 16:50:36 +02:00
Sven Efftinge
7e2b0efda3
[typeorm] increase/monitor connection pool (#18457) 2023-08-08 15:22:34 +02:00
Sven Efftinge
667bd2f005
[usage] add optional UserID to filter usage (#18449) 2023-08-08 07:46:33 +02:00
Gero Posmyk-Leinemann
0d36c68390
[fga] Workspace: create, get, stop and delete (#18403)
* [server] Cleanup to make tests pass

* [server] Introduce WorkspaceService with:
 - createWorkspace
 - getWorkspace
- stopWorkspace
- deleteWorkspace
- hardDeleteWorkspace

* add log info

* fix after rebase

* review comments

* address review comment: system user
2023-08-04 21:48:29 +08:00
Anton Kosyakov
b3ae12f956
git real time (#18323) 2023-08-03 20:51:28 +08:00
Sven Efftinge
8a8b148321
[server] make first user owner (#18417) 2023-08-03 16:31:28 +08:00
Alex Tugarev
436130bf26
Fix listeners leaks – EXP-206 (#18321)
* [server] fix leaking prebuild update listeners

- check for client be defined in gitpod-server-impl
- add prebuild subscribers only if the thing is not disposed yet
   - this might have happened frequently on very short living workspacePageClose events

* [server] fix metric registration

don't override default registry, which breaks other metrics.

* fixup for getMetricsAsArray

* [server] bump prom-client
2023-08-02 18:28:27 +08:00
Sven Efftinge
3d790a8cf6
[server] enhanced mocha setups (#18390) 2023-08-02 17:05:27 +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
d2b220f11c
[server] remove Project.userId (#18391)
We no longer support user-owned projects.
This removes related leftovers.
2023-07-31 21:27:26 +08:00
Manuel Alejandro de Brito Fontes
61f89f8436
Update go modules (#18372) 2023-07-28 16:20:30 +08:00
Manuel Alejandro de Brito Fontes
54c2040632
Update go modules to 1.20 (#18360) 2023-07-27 22:24:29 +08:00
Sven Efftinge
cae2dcc723
[server] make user a resource (#18312) 2023-07-26 16:25:43 +08:00
Milan Pavlik
66df7ffb04
[db] Move redis publisher to gitpod-db WEB-621 (#18275)
* [db] Move redis publisher to gitpod-db

* Fix

* fix
2023-07-25 19:24:41 +08:00
Sven Efftinge
78e607d26b
[server] bump js target (#18334) 2023-07-25 16:50:41 +08:00
Milan Pavlik
bd9c0de53f
[gitpod-db] Include redis client to share WEB-621 (#18264)
* [gitpod-db] Include redis client to share

* fix

* fix

* fix
2023-07-25 15:47:41 +08:00
Sven Efftinge
98aff7f782
[server] clean up DB tests (#18333) 2023-07-25 02:38:40 +08:00
Sven Efftinge
4a55b1ecbb
[server] improved testing infrastructure (#18183) 2023-07-07 16:29:23 +08:00
Manuel Alejandro de Brito Fontes
216f5a4b5d
Address registry-facade dependency issues (#18145)
* Update IPFS libraries references

* Update go modules
2023-07-07 14:26:24 +08:00
Sven Efftinge
075e14c47f
[build] enabled some eslint rules (#18165) 2023-07-04 22:32:21 +08:00