From 75a0f442dba76f0f4566f4726500ea2549c91f86 Mon Sep 17 00:00:00 2001 From: Sven Efftinge Date: Wed, 22 Nov 2023 14:59:14 +0000 Subject: [PATCH 1/3] [build] update leeway --- dev/image/Dockerfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dev/image/Dockerfile b/dev/image/Dockerfile index 81bfbf78daeba7..6b7ac7993ba787 100644 --- a/dev/image/Dockerfile +++ b/dev/image/Dockerfile @@ -48,12 +48,12 @@ RUN cd /usr/bin && curl -fsSL https://github.com/cert-manager/cert-manager/relea RUN cd /usr/bin && curl -fsSL https://github.com/praetorian-inc/gokart/releases/download/v0.4.0/gokart_0.4.0_linux_x86_64.tar.gz | tar xzv --no-anchored gokart # leeway -ARG LEEWAY_VERSION=0.7.9 +ARG LEEWAY_VERSION=0.8.0 ENV LEEWAY_MAX_PROVENANCE_BUNDLE_SIZE=8388608 ENV LEEWAY_WORKSPACE_ROOT=/workspace/gitpod ENV LEEWAY_REMOTE_CACHE_BUCKET=gitpod-core-leeway-cache-branch -ENV LEEWAY_CACHE_DIR=/var/tmp/cache -ENV LEEWAY_BUILD_DIR=/var/tmp/build +ENV LEEWAY_CACHE_DIR=/workspace/.leeway/cache +ENV LEEWAY_BUILD_DIR=/workspace/.leeway/build RUN cd /usr/bin && curl -fsSL https://github.com/gitpod-io/leeway/releases/download/v${LEEWAY_VERSION}/leeway_${LEEWAY_VERSION}_Linux_x86_64.tar.gz | tar xz # evans (gRPC client) From c2e0fa6db33c86fd3140d01aabca7b4ca203de0f Mon Sep 17 00:00:00 2001 From: Sven Efftinge Date: Wed, 22 Nov 2023 15:43:33 +0000 Subject: [PATCH 2/3] make use of image --- .github/actions/delete-preview/Dockerfile | 2 +- .github/actions/deploy-gitpod/Dockerfile | 2 +- .../actions/deploy-monitoring-satellite/Dockerfile | 2 +- .github/actions/preview-create/Dockerfile | 2 +- .github/workflows/build.yml | 6 +++--- .github/workflows/code-nightly.yml | 2 +- .github/workflows/ide-integration-tests.yml | 4 ++-- .github/workflows/lacework-inline-scanner.yml | 2 +- .github/workflows/preview-env-check-regressions.yml | 2 +- .github/workflows/preview-env-gc.yml | 2 +- .github/workflows/workspace-integration-tests.yml | 6 +++--- .gitpod.yml | 11 ++++------- components/server/src/workspace/gitpod-server-impl.ts | 2 -- package.json | 4 ++-- 14 files changed, 22 insertions(+), 27 deletions(-) diff --git a/.github/actions/delete-preview/Dockerfile b/.github/actions/delete-preview/Dockerfile index 57e1a33079ff22..43c79747fe97d3 100644 --- a/.github/actions/delete-preview/Dockerfile +++ b/.github/actions/delete-preview/Dockerfile @@ -1,4 +1,4 @@ -FROM eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 +FROM eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 COPY entrypoint.sh /entrypoint.sh ENTRYPOINT ["/entrypoint.sh"] diff --git a/.github/actions/deploy-gitpod/Dockerfile b/.github/actions/deploy-gitpod/Dockerfile index 57e1a33079ff22..43c79747fe97d3 100644 --- a/.github/actions/deploy-gitpod/Dockerfile +++ b/.github/actions/deploy-gitpod/Dockerfile @@ -1,4 +1,4 @@ -FROM eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 +FROM eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 COPY entrypoint.sh /entrypoint.sh ENTRYPOINT ["/entrypoint.sh"] diff --git a/.github/actions/deploy-monitoring-satellite/Dockerfile b/.github/actions/deploy-monitoring-satellite/Dockerfile index 57e1a33079ff22..43c79747fe97d3 100644 --- a/.github/actions/deploy-monitoring-satellite/Dockerfile +++ b/.github/actions/deploy-monitoring-satellite/Dockerfile @@ -1,4 +1,4 @@ -FROM eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 +FROM eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 COPY entrypoint.sh /entrypoint.sh ENTRYPOINT ["/entrypoint.sh"] diff --git a/.github/actions/preview-create/Dockerfile b/.github/actions/preview-create/Dockerfile index 57e1a33079ff22..43c79747fe97d3 100644 --- a/.github/actions/preview-create/Dockerfile +++ b/.github/actions/preview-create/Dockerfile @@ -1,4 +1,4 @@ -FROM eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 +FROM eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 COPY entrypoint.sh /entrypoint.sh ENTRYPOINT ["/entrypoint.sh"] diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6a13eb3181421b..638d6fbeac73e6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -98,7 +98,7 @@ jobs: cancel-in-progress: ${{ needs.configuration.outputs.is_main_branch == 'false' }} runs-on: ${{ needs.create-runner.outputs.label }} container: - image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 + image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 outputs: previewctl_hash: ${{ steps.build.outputs.previewctl_hash }} steps: @@ -161,7 +161,7 @@ jobs: ports: - 6379:6379 container: - image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 + image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 env: DB_HOST: "mysql" DB_PORT: "23306" @@ -401,7 +401,7 @@ jobs: - create-runner runs-on: ${{ needs.create-runner.outputs.label }} container: - image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 + image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 if: needs.configuration.outputs.with_integration_tests != '' concurrency: group: ${{ needs.configuration.outputs.preview_name }}-integration-test diff --git a/.github/workflows/code-nightly.yml b/.github/workflows/code-nightly.yml index d66e062043b37b..04a51fc3dc3d8e 100644 --- a/.github/workflows/code-nightly.yml +++ b/.github/workflows/code-nightly.yml @@ -16,7 +16,7 @@ jobs: runs-on: ${{ needs.create-runner.outputs.label }} needs: [create-runner] container: - image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 + image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 steps: - uses: actions/checkout@v4 - uses: ./.github/actions/setup-environment diff --git a/.github/workflows/ide-integration-tests.yml b/.github/workflows/ide-integration-tests.yml index da45241c8b9fa3..987daa180d4437 100644 --- a/.github/workflows/ide-integration-tests.yml +++ b/.github/workflows/ide-integration-tests.yml @@ -31,7 +31,7 @@ jobs: runs-on: ${{ needs.create-runner.outputs.label }} needs: [create-runner] container: - image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 + image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 outputs: name: ${{ steps.configuration.outputs.name }} version: ${{ steps.configuration.outputs.version }} @@ -101,7 +101,7 @@ jobs: needs: [configuration, infrastructure, create-runner] runs-on: ${{ needs.create-runner.outputs.label }} container: - image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 + image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 volumes: - /var/tmp:/var/tmp - /tmp:/tmp diff --git a/.github/workflows/lacework-inline-scanner.yml b/.github/workflows/lacework-inline-scanner.yml index 5068cd4eb3105d..d3450f2671c213 100644 --- a/.github/workflows/lacework-inline-scanner.yml +++ b/.github/workflows/lacework-inline-scanner.yml @@ -51,7 +51,7 @@ jobs: needs: [configuration,create-runner] if: ${{ needs.configuration.outputs.skip == 'false' }} container: - image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 + image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 steps: # Most of this is taken over from the Build workflow/preview-env-check-regressions workflow - uses: actions/checkout@v4 diff --git a/.github/workflows/preview-env-check-regressions.yml b/.github/workflows/preview-env-check-regressions.yml index ad53d4961c8db1..12086fc3f96a1e 100644 --- a/.github/workflows/preview-env-check-regressions.yml +++ b/.github/workflows/preview-env-check-regressions.yml @@ -86,7 +86,7 @@ jobs: if: ${{ needs.configuration.outputs.skip == 'false' }} runs-on: ${{ needs.create-runner.outputs.label }} container: - image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 + image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 volumes: - /var/tmp:/var/tmp - /tmp:/tmp diff --git a/.github/workflows/preview-env-gc.yml b/.github/workflows/preview-env-gc.yml index 9479783d34a8db..d6ccb1b955d5a5 100644 --- a/.github/workflows/preview-env-gc.yml +++ b/.github/workflows/preview-env-gc.yml @@ -15,7 +15,7 @@ jobs: runs-on: ${{ needs.create-runner.outputs.label }} needs: [create-runner] container: - image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 + image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 outputs: names: ${{ steps.set-matrix.outputs.names }} count: ${{ steps.set-matrix.outputs.count }} diff --git a/.github/workflows/workspace-integration-tests.yml b/.github/workflows/workspace-integration-tests.yml index 8e7ef7bc660176..379829dbcad181 100644 --- a/.github/workflows/workspace-integration-tests.yml +++ b/.github/workflows/workspace-integration-tests.yml @@ -45,7 +45,7 @@ jobs: runs-on: ${{ needs.create-runner.outputs.label }} needs: [create-runner] container: - image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 + image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 outputs: name: ${{ steps.configuration.outputs.name }} version: ${{ steps.configuration.outputs.version }} @@ -136,7 +136,7 @@ jobs: needs: [configuration, infrastructure, create-runner] runs-on: ${{ needs.create-runner.outputs.label }} container: - image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 + image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 steps: - uses: actions/checkout@v4 - id: auth @@ -167,7 +167,7 @@ jobs: if: inputs.skip_delete != 'true' && always() runs-on: ${{ needs.create-runner.outputs.label }} container: - image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 + image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 steps: - uses: actions/checkout@v4 - name: Delete preview environment diff --git a/.gitpod.yml b/.gitpod.yml index df332fb5930cfa..11b5bfaac3018c 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -1,4 +1,4 @@ -image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:aledbf-leeway-pigz-gha.18593 +image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 workspaceLocation: gitpod/gitpod-ws.code-workspace checkoutLocation: gitpod ports: @@ -57,12 +57,9 @@ tasks: (cd install/installer && make deps) exit 0 - name: Java - command: | - if [ -z "$RUN_GRADLE_TASK" ]; then - read -r -p "Press enter to continue Java gradle task" - fi - leeway exec --package components/supervisor-api/java:lib --package components/gitpod-protocol/java:lib -- ./gradlew build - leeway exec --package components/ide/jetbrains/backend-plugin:plugin-latest --package components/ide/jetbrains/gateway-plugin:publish-latest --parallel -- ./gradlew buildPlugin + init: | + leeway exec --package components/supervisor-api/java:lib --package components/gitpod-protocol/java:lib --cache-key gradle_build -- ./gradlew build + leeway exec --package components/ide/jetbrains/backend-plugin:plugin-latest --package components/ide/jetbrains/gateway-plugin:publish-latest --parallel --cache-key gradle_buildPlugin -- ./gradlew buildPlugin - name: TypeScript init: yarn --network-timeout 100000 && yarn build - name: Go diff --git a/components/server/src/workspace/gitpod-server-impl.ts b/components/server/src/workspace/gitpod-server-impl.ts index 78c9dfc9656691..7d129f7f057a43 100644 --- a/components/server/src/workspace/gitpod-server-impl.ts +++ b/components/server/src/workspace/gitpod-server-impl.ts @@ -99,7 +99,6 @@ import { v4 as uuidv4, validate as uuidValidate } from "uuid"; import { Disposable, CancellationToken } from "vscode-jsonrpc"; import { IAnalyticsWriter } from "@gitpod/gitpod-protocol/lib/analytics"; import { AuthProviderService } from "../auth/auth-provider-service"; -import { HostContextProvider } from "../auth/host-context-provider"; import { GuardedResource, ResourceAccessGuard, ResourceAccessOp } from "../auth/resource-access"; import { Config } from "../config"; import { NotFoundError, UnauthorizedError } from "../errors"; @@ -179,7 +178,6 @@ export class GitpodServerImpl implements GitpodServerWithTracing, Disposable { @inject(Config) private readonly config: Config, @inject(TracedWorkspaceDB) private readonly workspaceDb: DBWithTracing, @inject(ContextParser) private contextParser: ContextParser, - @inject(HostContextProvider) private readonly hostContextProvider: HostContextProvider, @inject(PrebuildManager) private readonly prebuildManager: PrebuildManager, @inject(IncrementalWorkspaceService) private readonly incrementalPrebuildsService: IncrementalWorkspaceService, diff --git a/package.json b/package.json index ed8eda81587b19..37469d0423ad73 100644 --- a/package.json +++ b/package.json @@ -12,9 +12,9 @@ "typescript": "~4.4.4" }, "scripts": { - "build": "leeway exec --filter-type yarn --components -- yarn build", + "build": "leeway exec --filter-type yarn --cache-key yarn_build -- yarn build", "watch": "leeway exec --package components:all --transitive-dependencies --filter-type yarn --components --parallel -- tsc -w --preserveWatchOutput", - "clean": "leeway exec --filter-type yarn --components -- yarn clean && rm -rf node_modules" + "clean": "leeway exec --filter-type yarn -- yarn clean && rm -rf node_modules" }, "workspaces": { "packages": [ From bc40f75698b2eca60a943244f5ee66db08b47518 Mon Sep 17 00:00:00 2001 From: Sven Efftinge Date: Wed, 22 Nov 2023 17:40:50 +0000 Subject: [PATCH 3/3] don't run the ide builds --- .gitpod.yml | 163 ++++++++++++++++++++++++++-------------------------- 1 file changed, 83 insertions(+), 80 deletions(-) diff --git a/.gitpod.yml b/.gitpod.yml index 11b5bfaac3018c..d55e5aa15c8d43 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -2,88 +2,91 @@ image: eu.gcr.io/gitpod-core-dev/dev/dev-environment:se-update-leeway-gha.20594 workspaceLocation: gitpod/gitpod-ws.code-workspace checkoutLocation: gitpod ports: - - port: 1337 - onOpen: open-preview - - port: 3000 - onOpen: ignore - - port: 3001 - onOpen: ignore - - port: 3306 - onOpen: ignore - - port: 4000 - onOpen: ignore - # VNC - - port: 5900 - onOpen: ignore - # noVNC - - port: 6080 - onOpen: ignore - # Werft - - port: 7777 - onOpen: ignore - - port: 9229 - onOpen: ignore - # Go proxy - - port: 9999 - onOpen: ignore - - port: 13001 - onOpen: ignore - # Dev Theia - - port: 13444 - # Used when using port-forwarding to SSH to preview environment VMs - - port: 8022 - onOpen: ignore + - port: 1337 + onOpen: open-preview + - port: 3000 + onOpen: ignore + - port: 3001 + onOpen: ignore + - port: 3306 + onOpen: ignore + - port: 4000 + onOpen: ignore + # VNC + - port: 5900 + onOpen: ignore + # noVNC + - port: 6080 + onOpen: ignore + # Werft + - port: 7777 + onOpen: ignore + - port: 9229 + onOpen: ignore + # Go proxy + - port: 9999 + onOpen: ignore + - port: 13001 + onOpen: ignore + # Dev Theia + - port: 13444 + # Used when using port-forwarding to SSH to preview environment VMs + - port: 8022 + onOpen: ignore tasks: - - name: Remove GCP_ADC_FILE - command: | - if [[ -n "${GCP_ADC_FILE}" ]]; then - echo "$GCP_ADC_FILE" > "/home/gitpod/.config/gcloud/application_default_credentials.json" - yes | gcloud auth application-default revoke - gp env -u GCP_ADC_FILE - fi - exit 0 - - name: Install `gitpod` CLI - command: | - leeway run components/local-app:install-cli - leeway run components/local-app:cli-completion - exit 0 - # This task takes care of configuring your workspace so it can manage and interact - # with preview environments. - - name: Preview environment configuration - init: leeway run dev/preview/previewctl:install - command: INSTALL_CONTEXT=true leeway run dev/preview:configure-workspace - - name: Installer dependencies - init: | - (cd install/installer && make deps) - exit 0 - - name: Java - init: | - leeway exec --package components/supervisor-api/java:lib --package components/gitpod-protocol/java:lib --cache-key gradle_build -- ./gradlew build - leeway exec --package components/ide/jetbrains/backend-plugin:plugin-latest --package components/ide/jetbrains/gateway-plugin:publish-latest --parallel --cache-key gradle_buildPlugin -- ./gradlew buildPlugin - - name: TypeScript - init: yarn --network-timeout 100000 && yarn build - - name: Go - before: pre-commit install --install-hooks - init: | - ./components/gitpod-protocol/go/scripts/generate-config.sh - leeway exec --filter-type go -v -- go mod verify + - name: Remove GCP_ADC_FILE + command: | + if [[ -n "${GCP_ADC_FILE}" ]]; then + echo "$GCP_ADC_FILE" > "/home/gitpod/.config/gcloud/application_default_credentials.json" + yes | gcloud auth application-default revoke + gp env -u GCP_ADC_FILE + fi + exit 0 + - name: Install `gitpod` CLI + command: | + leeway run components/local-app:install-cli + leeway run components/local-app:cli-completion + exit 0 + # This task takes care of configuring your workspace so it can manage and interact + # with preview environments. + - name: Preview environment configuration + init: leeway run dev/preview/previewctl:install + command: INSTALL_CONTEXT=true leeway run dev/preview:configure-workspace + - name: Installer dependencies + init: | + (cd install/installer && make deps) + exit 0 + - name: Java + command: | + if [ -z "$RUN_GRADLE_TASK" ]; then + read -r -p "Press enter to continue Java gradle task" + fi + leeway exec --package components/supervisor-api/java:lib --package components/gitpod-protocol/java:lib -- ./gradlew build + leeway exec --package components/ide/jetbrains/backend-plugin:plugin-latest --package components/ide/jetbrains/gateway-plugin:publish-latest --parallel -- ./gradlew buildPlugin + - name: TypeScript + init: yarn --network-timeout 100000 && yarn build + - name: Go + before: pre-commit install --install-hooks + init: | + ./components/gitpod-protocol/go/scripts/generate-config.sh + leeway exec --filter-type go -v -- go mod verify vscode: - extensions: - - EditorConfig.EditorConfig - - golang.go - - hashicorp.terraform - - ms-azuretools.vscode-docker - - ms-kubernetes-tools.vscode-kubernetes-tools - - stkb.rewrap - - zxh404.vscode-proto3 - - matthewpi.caddyfile-support - - heptio.jsonnet - - timonwong.shellcheck - - fwcd.kotlin - - dbaeumer.vscode-eslint - - esbenp.prettier-vscode - - akosyakov.gitpod-monitor - - hbenl.vscode-mocha-test-adapter + extensions: + - EditorConfig.EditorConfig + - golang.go + - hashicorp.terraform + - ms-azuretools.vscode-docker + - ms-kubernetes-tools.vscode-kubernetes-tools + - stkb.rewrap + - zxh404.vscode-proto3 + - matthewpi.caddyfile-support + - heptio.jsonnet + - timonwong.shellcheck + - fwcd.kotlin + - dbaeumer.vscode-eslint + - esbenp.prettier-vscode + - akosyakov.gitpod-monitor + - hbenl.vscode-mocha-test-adapter jetbrains: intellij: vmoptions: -Xmx4g