23 Commits

Author SHA1 Message Date
Kyle Brennan
a5d64889e5
[preview] update to gen117 image (#20395) 2024-11-28 05:05:05 -05:00
Kyle Brennan
0be8880b7c
Update preview AMI (#20163) 2024-09-02 05:50:45 -04:00
Kyle Brennan
8b03f055f6
Update for gen115 (#19995) 2024-07-03 11:14:16 -04:00
Pudong
e6e412c809
Add devcontainer support (#19725)
* add devcontainer support

* root

* root2

* use $HOME

---------

Co-authored-by: hwen <mhqnwt@gmail.com>
Co-authored-by: Huiwen <huiwen@gitpod.io>
2024-05-10 23:03:48 +08:00
Kyle Brennan
606963acdf
[test] fix integration tests (#19692)
* [test] fix TestProcessPriority

Need to give ws-daemon time before it applies process priority

* [server] always limit network connections

We are not limiting network connections for preview environments

* Cleanup

* Fix

* Always do network limiting
* Regardless of billing mode
* If there's an error

* Wait a bit longer, just in-case, to make the test more durable

* Cleanup

* No parallel

* [preview] update to use gen111 image

* [test] fix TestOpenWorkspaceFromPrebuild test

It was failing with an exit code of 2 on grep, because it was trying to grep a folder, rather than recurse into it.

When the grep command was run manually from a workspace that started from a prebuild, we saw `grep: logs: Is a directory`. So, it's important for integration tests to output the exit code, but also error text.

* [test] fix TestOpenWorkspaceFromPrebuild

We need to wait for the started workspace to stop, before we try to restart it

* be parallel again

* Nope

* Set StripeSecret on Preview install

Otherwise this returns false:
643701c635/components/server/src/billing/billing-mode.ts (L25)

Because EnablePayment is set to false at install time:
643701c635/install/installer/pkg/components/server/configmap.go (L282)
2024-05-07 20:12:46 +08:00
Pudong
20e5eded62
[preview env] remove harvester dependency (#19543) 2024-03-15 07:45:24 +02:00
Kyle Brennan
c31ef8232e
[preview] update to gen108 VM image (#19403)
* [preview] update to gen108 VM image

* [preview] sleep longer

This is a bandaid. With a shorter sleep, the API server tries to come online, but fails. As a result, core-dns stays pending, and calico and other manifests are never applied.

* [preview] no local storage

* [preview] wait for containerd

* [preview] disable-network-policy, as per k3s suggestion when using calico as CNI

ref: https://docs.k3s.io/installation/network-options#custom-cni

* [preview] improve parity with prod

* [preview] gain more parity with prod

* [preview] scale coredns to 1

* [preview] use out of the box coredns

* remove tweak for containerd readiness in cloudinit.yaml
2024-02-11 20:21:53 +02:00
Kyle Brennan
9cbb9e5a8c
[workspace] update AMI for gen107 for previews (#19251) 2023-12-14 15:29:21 +02:00
Nandaja Varma
6c0bb90a74
Update k3s to gen 106 (#19004) 2023-11-07 10:26:44 +02:00
Wouter Verlaek
0a44cfab5a
Update k3s to gen105 (#18771)
* Update to gitpod-k3s-202309220546

* Update k3s
2023-09-22 17:36:02 +02:00
Kyle Brennan
35f98d9289
[preview] use k3s 1.26 (#18521)
Related to https://github.com/gitpod-io/gitpod-packer-gcp-image/pull/248
2023-08-22 21:51:48 +02:00
Kyle Brennan
34b4602286
[ws-manager-mk2] remove experimental mode feature (#18513)
* [installer] remove experimental mode

* [ws-manager-mk2] remove experimental node selector

* [ws-manager-api] remove ExperimentalMode from configuration

* Add `ws-manager-api` to vscode workspace

* [preview] remove experimental & bump deps

Depends on https://github.com/gitpod-io/gitpod-packer-gcp-image/pull/246

* [preview] LocalStorageCapacityIsolation is GA, no needed as a gate in 1.27
2023-08-15 06:37:41 +02:00
Kyle Brennan
581307b192
[preview] update VM image to account for kernel update (#18499)
Depends on https://github.com/gitpod-io/gitpod-packer-gcp-image/pull/245
2023-08-13 02:04:39 +02:00
Kyle Brennan
051f000ef0
[preview] update again for gen103 (#18489) 2023-08-11 14:15:37 +02:00
Kyle Brennan
deaee3fd7e
[preview] update vm image for gen103 (#18470) 2023-08-09 20:18:35 +02:00
Wouter Verlaek
7bf7966e23
Prepare for gen100 (#17920) 2023-06-20 05:32:10 +08:00
Kyle Brennan
41e12e3dab
[preview] update image for gen99 (#17855) 2023-06-08 08:12:58 +08:00
Kyle Brennan
80ac25ca97
[workspace] update deps for gen98 (#17719)
* [docker-up] update docker compose to 2.18.1-gitpod.2

* [workspace] update containerd

From v1.6.20 -> v1.6.21

* [image-builder-bob] fix build error after containerd update

Context:
[components/image-builder-bob:app] level=error msg="Running error: 1 error occurred:\n\t* can't run linter goanalysis_metalinter: buildir: failed to load package tracetransform: could not load export data: no export data for \"go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal/tracetransform\"\n\n"

* [preview] update VM image with fewer cached images

This will help us avoid pod eviction and improve stability

Related: https://github.com/gitpod-io/gitpod-packer-gcp-image/pull/235

* [test] more cowbell
2023-05-24 21:18:59 +08:00
Kyle Brennan
0e8322699d
[preview] update VM image to match gen97 (#17554)
Ref: https://github.com/gitpod-io/gitpod-packer-gcp-image/releases/tag/gitpod-k3s-202305091902
2023-05-10 07:28:55 +08:00
Kyle Brennan
99eb2593d5
[test] Fix workspace integration tests (#17222)
* [tests] unique ContextURL for commit only

* [tests] include std output in the error message for commit

Sometimes commit fails with status 1 w/o error output...so it's helpful to look at StdOut

* [tests] Fix TestGitActions by using the test case context

Prior to this, createWorkspace was working, but getWorkspace could not find the created workspace.

* [test] bypass exit code 1 on `git commit` with `--allow-empty`

* [test] Fix gcloud auth, do setup before auth

* Show all output

Might remove later...

* [test] avoid using deleted user, identity, and token

* [test] add organizationId to CreateWorkspaceOptions

It's expected on the Typescript side:
90b7d65858/components/server/src/workspace/gitpod-server-impl.ts (L1227-L1235)

* [test] orgId is required on createWorkspace

But sometimes there's no team 🤷

* [test] fix git context tests

We use UBP now, there is no more unleashed.

Also, remove the "ff" feature flag code (which was for PVC). It was mutating the username, resulting in Code 460 errors on createWorkspace

* [test] Use example test as the example

* [test] fix context tests when run as gitpod-integration-test user

* [test] clean-up

* [test] wait for workspaces to stop

Tests intermittently fail with  to avoid intermittent failures

* [test] add code owners

This way, we can assert tests are passing for all teams prior to merging

* [test] limit # of tests that can run in parallel

* [test] no parallel tests

Test to see if flakeyness goes away...
...and bump the timeout because we reduced parallel runs

* [preview] update the VM image to have parity with production

This:
1. updates from K3s 1.23 to 1.26
2. requires that we remove PodSecurityPolicy changes (as it's no longer supported)
3. resolves intermittent disk pressure issues

* [preview] no PSP in support of VM image update

* We were getting PSP from rook/ceph, which I think was for PVC
* We were getting PSP from the monitoring-satellite

* [test] don't wait for workspace stop with git_test.go, we're testing git actions.

Why? We miss state transitions, it's not guaranteed each one will be returned, and there are other tests waiting.

For example, in the below log, we miss INITIALIZING, RUNNING, and STOPPING.

 workspace.go:369: attempt to create the workspace as user 0565bb3c-e724-4da9-84fb-22e2a7b23b8c, with context github.com/gitpod-io/gitpod-test-repo/tree/integration-test/commit
    workspace.go:411: attempt to get the workspace information: gitpodio-gitpodtestrepo-nscsowy1njb
    workspace.go:423: not preparing
    workspace.go:432: got the workspace information: gitpodio-gitpodtestrepo-nscsowy1njb
    workspace.go:460: wait for workspace to be fully up and running
    workspace.go:569: prepare for a connection with ws-manager
    workspace.go:590: established for a connection with ws-manager
    workspace.go:598: check if the status of workspace is in the running phase: 462f1325-3019-4547-8666-508e8353335e
    workspace.go:631: status: 462f1325-3019-4547-8666-508e8353335e, PENDING
    workspace.go:598: check if the status of workspace is in the running phase: 462f1325-3019-4547-8666-508e8353335e
    workspace.go:631: status: 462f1325-3019-4547-8666-508e8353335e, PENDING
    workspace.go:598: check if the status of workspace is in the running phase: 462f1325-3019-4547-8666-508e8353335e
    workspace.go:631: status: 462f1325-3019-4547-8666-508e8353335e, CREATING
    workspace.go:598: check if the status of workspace is in the running phase: 462f1325-3019-4547-8666-508e8353335e
    workspace.go:631: status: 462f1325-3019-4547-8666-508e8353335e, CREATING
    workspace.go:598: check if the status of workspace is in the running phase: 462f1325-3019-4547-8666-508e8353335e
    workspace.go:631: status: 462f1325-3019-4547-8666-508e8353335e, CREATING
    workspace.go:598: check if the status of workspace is in the running phase: 462f1325-3019-4547-8666-508e8353335e
    workspace.go:504: waiting for stopping the workspace: 462f1325-3019-4547-8666-508e8353335e
    workspace.go:514: attemp to delete the workspace: 462f1325-3019-4547-8666-508e8353335e
    workspace.go:797: confirmed the worksapce is stopped: 462f1325-3019-4547-8666-508e8353335e, STOPPED
    workspace.go:538: successfully terminated workspace
    git_test.go:172: failed to wait for the workspace to start up: cannot wait for workspace: context deadline exceeded

* [preview] retry installing trust-manager

And use trust-manager from the packer image

* [test] clarify USER_TOKEN value for preview environments

* Cleanup

* [preview] remove commented out yaml related to PodSecurityPolicy
2023-05-04 04:07:41 +08:00
Kyle Brennan
47d1412e95
[preview] force gce when providing infrastructure, avoid harvester (#17475)
* [preview] force gce, no harvester

* [preview] default to using spot for GCE VMs

* [preview] bump sizes up now that we're using spot

...and actually use spot by changing the default for gce_use_spot

We'll address the disk pressure issues (which cause pods to evict on install, but eventually succeed) in a separate PR.
2023-05-04 01:54:42 +08:00
Aleksandar Aleksandrov
1769dbbc45 support with-large-vm 2023-01-31 13:43:38 +01:00
Aleksandar Aleksandrov
412d13c568 preview module 2023-01-18 12:23:26 +01:00