Skip to content

Conversation

@pull
Copy link

@pull pull bot commented Aug 19, 2025

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.3)

Can you help keep this open source service alive? 💖 Please sponsor : )

filiptronicek and others added 30 commits January 29, 2025 04:48
…ation (#20560)

* [server] Add organization image auth context to workspace image validation

Tool: gitpod/catfood.gitpod.cloud

* Introduce `listOrgEnvVarsWithValues`

Tool: gitpod/catfood.gitpod.cloud
…ts (#20565)

* [server] make gRPC clients viable in non-HTTP/2-compatible environments

Tool: gitpod/catfood.gitpod.cloud

* Address review comments

Co-authored-by: Gero Posmyk-Leinemann <gero@gitpod.io>
Tool: gitpod/catfood.gitpod.cloud

---------

Co-authored-by: Gero Posmyk-Leinemann <gero@gitpod.io>
* [JetBrains] display workspace name on the remote navbar

* Use workspace name
…ityTime` (#20569)

* [server] Don't block soft deletion rewinds in `updateDeletionEligibilityTime`

Tool: gitpod/catfood.gitpod.cloud

* Use ISO date strings for comparison

Co-authored-by: Gero Posmyk-Leinemann <gero@gitpod.io>

---------

Co-authored-by: Gero Posmyk-Leinemann <gero@gitpod.io>
* [server] implement `recommendedRepositories` API field

Tool: gitpod/catfood.gitpod.cloud

* [dashboard] implement org-suggested repositories

Tool: gitpod/catfood.gitpod.cloud

* [dashboard] Spacing and pill labels

Tool: gitpod/catfood.gitpod.cloud

* update copy

Tool: gitpod/catfood.gitpod.cloud

* Get rid of debug fluff

Tool: gitpod/catfood.gitpod.cloud

* Fix onboarding page heading

Tool: gitpod/catfood.gitpod.cloud

* minor nitfix

Tool: gitpod/catfood.gitpod.cloud

* Cascade project deletions to repo recommendations

Tool: gitpod/catfood.gitpod.cloud

* Fix db tests

Tool: gitpod/catfood.gitpod.cloud

* Fix docs link

Tool: gitpod/catfood.gitpod.cloud

* add db test

Tool: gitpod/catfood.gitpod.cloud

* Fix showing suggested repos even with no user contributions

Tool: gitpod/catfood.gitpod.cloud

* Add organization suggested repositories to RepositoryFinder

Tool: gitpod/catfood.gitpod.cloud

* Don't add recommended repos to workspace list for now

Tool: gitpod/catfood.gitpod.cloud

* Regular repo icon for org-suggested repos

Tool: gitpod/catfood.gitpod.cloud
* [go components] Fixed "go test ./..." in various components

Tool: gitpod/catfood.gitpod.cloud

* [go components] Update k8s 0.29.3 -> 0.30.9 API

 - update the go-update-wc-deps.sh script to handle the brunt of that transition
 - fixes Maintenance- + Subscriber-Controller
 - document steps

Tool: gitpod/catfood.gitpod.cloud

* [ws-manager-mk2] Decide how to apply appamor config based on serverversion to support k8s 1.30+

Tool: gitpod/catfood.gitpod.cloud

* [gpctl] Missing go mod tidy

Tool: gitpod/catfood.gitpod.cloud

* Replace vulnerable outcaste-io/badger/v3 with original dgraph-io/badger/v3

Tool: gitpod/catfood.gitpod.cloud

* more go mod tidy

Tool: gitpod/catfood.gitpod.cloud

* [image-builder-bob, installer] Select the correct version of containerd....

Tool: gitpod/catfood.gitpod.cloud

---------

Co-authored-by: Gero Posmyk-Leinemann <gero@gitpod.io>
* center view button

Tool: gitpod/catfood.gitpod.cloud

* Small drive-by for insights export toast

Tool: gitpod/catfood.gitpod.cloud

* Colored suggestions

Tool: gitpod/catfood.gitpod.cloud

* Remove suggested repository management from repository list

Tool: gitpod/catfood.gitpod.cloud

* Add recommended list to getting started

Tool: gitpod/catfood.gitpod.cloud

* fix copy

Tool: gitpod/catfood.gitpod.cloud
…20583)

* [dashboard] Don't show User Notifications and Feedback on Dedicated

Tool: gitpod/catfood.gitpod.cloud

* fix import

Tool: gitpod/catfood.gitpod.cloud

* Fixe-da-imports-a

Tool: gitpod/catfood.gitpod.cloud

* Fix second place where Feedback menu item appears

Tool: gitpod/catfood.gitpod.cloud
* Replace usage menu item with insights on Dedicated

Tool: gitpod/catfood.gitpod.cloud

* Rename usage-related functions to insights in download module

Tool: gitpod/catfood.gitpod.cloud
…for non-owners (#20593)

* Add permission check for Insights page and don't show it in the menu for non-owners

Tool: gitpod/catfood.gitpod.cloud

* Make necessary permission clear

Co-authored-by: Gero Posmyk-Leinemann <gero@gitpod.io>
Tool: gitpod/catfood.gitpod.cloud

* Bring more disjunction to your life

Tool: gitpod/catfood.gitpod.cloud

---------

Co-authored-by: Gero Posmyk-Leinemann <gero@gitpod.io>
* [docker-up] Minor fixes and add tests

Tool: gitpod/catfood.gitpod.cloud

* [image-builder-bob] Tests&fixes from an experimental PR

Tool: gitpod/catfood.gitpod.cloud

* [supervisor, ws-manager] Write docker credentials into client config file if passed into workspace

Tool: gitpod/catfood.gitpod.cloud

* [server] Introduce project.settings.enableDockerdAuthentication and expose it on the API

Tool: gitpod/catfood.gitpod.cloud

* [dashboard] Add "Docker registry authentication" toggle under projects/env vars

Tool: gitpod/catfood.gitpod.cloud

* [server] Guard project.settings.enableDockerdAuthentication by org write_settings permission

Tool: gitpod/catfood.gitpod.cloud

* review comments with cleanup + small fixes

Tool: gitpod/catfood.gitpod.cloud
Tool: gitpod/catfood.gitpod.cloud
Tool: gitpod/catfood.gitpod.cloud
* Update Platform Version of JetBrains Backend Plugin (EAP) to

Tool: gitpod/catfood.gitpod.cloud

* Make it build

Tool: gitpod/catfood.gitpod.cloud

* Fix rider

Tool: gitpod/catfood.gitpod.cloud

* Fix use-latest checkbox not working

Tool: gitpod/catfood.gitpod.cloud

---------

Co-authored-by: Robo Quat <roboquat@gitpod.io>
* squashed (- oidc/newUser)

Tool: gitpod/catfood.gitpod.cloud

* [server, db] Cleanup UpdateOrgSettings API handling

Tool: gitpod/catfood.gitpod.cloud

* [dashboard] Render WelcomeMessage based on a) user.createdAt and b) localStorage

Tool: gitpod/catfood.gitpod.cloud

* [api, server] Add missing update_allowed_workspace_classes field

Tool: gitpod/catfood.gitpod.cloud

* [dashboard] Fix updateOrgSettings API usage

Tool: gitpod/catfood.gitpod.cloud

* [dashboard, server] Fix duration handling/conversion

Tool: gitpod/catfood.gitpod.cloud

---------

Co-authored-by: Gero Posmyk-Leinemann <gero@gitpod.io>
* [JetBrains] Update IDE images to new build version

* Revert gradle properties changes

Tool: gitpod/catfood.gitpod.cloud

---------

Co-authored-by: Huiwen <mhqnwt@gmail.com>
…P) (#20612)

* Update Platform Version of JetBrains Gateway Plugin (EAP) to

* Revert gradle properties changes

Tool: gitpod/catfood.gitpod.cloud

---------

Co-authored-by: Huiwen <mhqnwt@gmail.com>
* feat(dashboard): Enhance team onboarding with member avatar and framework selection

- Add OrgMemberAvatarInput component with improved member selection using Popover and Command
- Implement ComboboxDemo for framework selection
- Update Button variant and add cmdk package
- Improve UI components with more flexible selection and filtering

Tool: gitpod/catfood.gitpod.cloud

* fix(orgs): when updating org welcome msg settings, enforce updating `featuredMemberId`

Tool: gitpod/catfood.gitpod.cloud

* A proper fix with existing prebuild list combobox

Tool: gitpod/catfood.gitpod.cloud

* chore: Remove unused cmdk package and related components

- Remove cmdk package from package.json
- Delete Command.tsx component
- Remove unused featuredMemberId state from TeamOnboarding
- Clean up yarn.lock dependencies related to cmdk and radix-ui packages

Tool: gitpod/catfood.gitpod.cloud

* Clean up

Tool: gitpod/catfood.gitpod.cloud
* [ipfs] rebuild components

Tool: gitpod/catfood.gitpod.cloud

* Fix kubo version

Tool: gitpod/catfood.gitpod.cloud

* Consolidate IPFS versions to workspace.yaml

Tool: gitpod/catfood.gitpod.cloud

* Also package scheduler-extender

Tool: gitpod/catfood.gitpod.cloud
* [api, server, dashboard] Cleanup UpdateOrganizationSettings API

Tool: gitpod/catfood.gitpod.cloud

* Org settings partial updates improvements (#20626)

Tool: gitpod/catfood.gitpod.cloud

* review comment

Tool: gitpod/catfood.gitpod.cloud
* [dashboard] fix toast contrast

Tool: gitpod/catfood.gitpod.cloud

* driveby: less `isGitpodIo`

Tool: gitpod/catfood.gitpod.cloud

* Align colors with info alert

Tool: gitpod/catfood.gitpod.cloud
corneliusludmann and others added 30 commits December 5, 2025 16:25
* [dev] disable npm lifecycle scripts and npx

* Add npm-tools

* update npm-tools

* dev/image/Dockerfile

* update

Co-authored-by: Ona <no-reply@ona.com>

* Bump leeay version to 0.10.6

Co-authored-by: Ona <no-reply@ona.com>

* Fix npx removal to also delete the target script

The symlink at /root/.nvm/.../bin/npx points to npx-cli.js.
Remove both to ensure npx is fully disabled.

Co-authored-by: Ona <no-reply@ona.com>

* Remove gce-github-runner usage from all workflows

Replace self-hosted GCE runner pattern with GitHub-hosted ubuntu-latest runners across all workflows. This removes the three-phase pattern (create-runner, use-runner, delete-runner) and simplifies workflow execution.

Changes:
- Remove create-runner and delete-runner jobs from all workflows
- Replace runs-on: ${{ needs.create-runner.outputs.label }} with runs-on: ubuntu-latest
- Remove create-runner from job dependencies
- Preserve all other job dependencies and concurrency controls

Affected workflows:
- build.yml (8 jobs)
- workspace-integration-tests.yml (4 jobs)
- ide-integration-tests.yml (4 jobs)
- preview-env-check-regressions.yml (4 jobs)
- preview-env-gc.yml (2 jobs)
- jetbrains-auto-update-template.yml (1 job)
- jetbrains-integration-test.yml (1 job)
- code-nightly.yml (1 job)
- preview-env-delete.yml (1 job)

Co-authored-by: Ona <no-reply@ona.com>

* [dev] use ubuntu-latest-16-cores for builds

* Fix container permissions for GitHub-hosted runners

Add 'options: --user root' to all container configurations to resolve EACCES permission errors when GitHub Actions tries to write to internal directories.

GitHub-hosted runners require containers to run as root to allow the Actions runtime to write to /__w/_temp/_runner_file_commands/ and other internal paths.

Affected workflows:
- build.yml (3 container jobs)
- workspace-integration-tests.yml (2 container jobs)
- ide-integration-tests.yml (2 container jobs)
- preview-env-check-regressions.yml (1 container job)
- preview-env-gc.yml (1 container job)
- jetbrains-auto-update-template.yml (1 container job)
- jetbrains-integration-test.yml (1 container job)
- code-nightly.yml (1 container job)

Co-authored-by: Ona <no-reply@ona.com>

* Fix dev/image build by adding leeway dependency for npm-tools

Create leeway generic build for dev/npm-tools and use it as a dependency in dev/image:docker build. This resolves the build error where npm-tools files were not accessible during Docker build.

Changes:
- Add dev/npm-tools/BUILD.yaml with generic package containing package.json and package-lock.json
- Add dev/npm-tools:pkg as dependency in dev/image/BUILD.yaml
- Update Dockerfile to use COPY from leeway dependency path (dev-npm-tools--pkg/)

This follows the established pattern used in other builds like install/installer where dependencies are copied from leeway-generated paths.

Co-authored-by: Ona <no-reply@ona.com>

* Fix npm-tools installation permissions in dev/image

Add chown command to fix EACCES permission error when installing npm-tools. The COPY command creates files owned by root, but npm ci runs as gitpod user and needs write access to create node_modules.

Changes:
- Add 'sudo chown -R gitpod:gitpod /opt/npm-tools' before npm ci
- This ensures the gitpod user can write to /opt/npm-tools/node_modules/

Error fixed:
  npm error code EACCES
  npm error syscall mkdir
  npm error path /opt/npm-tools/node_modules
  npm error errno -13

Co-authored-by: Ona <no-reply@ona.com>

* [dev] Split builds into branch and main

Co-authored-by: Ona <no-reply@ona.com>

---------

Co-authored-by: Cornelius Ludmann <cornelius@ona.com>
Co-authored-by: Ona <no-reply@ona.com>
Co-authored-by: Gero Posmyk-Leinemann <gero@gitpod.io>
Updates GitHub Actions workflows and Dockerfiles to use the latest
dev-environment image version.

Co-authored-by: Ona <no-reply@ona.com>
* Convert delete-preview action from Docker to composite

Fix permission issues on GitHub-hosted runners by converting the
delete-preview action from a Docker container action to a composite
action. This resolves credential access problems where
GOOGLE_APPLICATION_CREDENTIALS set by setup-environment was not
accessible inside the Docker container.

Changes:
- Convert metadata.yml from 'using: docker' to 'using: composite'
- Move commands from entrypoint.sh to composite action steps
- Remove Dockerfile and entrypoint.sh (no longer needed)
- Preserve all functionality: previewctl install and delete-preview

The composite action runs directly on the runner, allowing proper
access to GCP credentials and environment variables set by the
setup-environment action.

Co-authored-by: Ona <no-reply@ona.com>

* Add container to delete job for leeway availability

The composite action requires leeway to be available, which is only
present in the dev-environment container. Run the entire delete job
in the container to provide leeway and other required tools.

This matches the pattern used in preview-env-gc.yml for the stale job.

Co-authored-by: Ona <no-reply@ona.com>

* Fix duplicate workflow runs on PR push

Remove push trigger and use pull_request with synchronize type to
prevent duplicate workflow runs when pushing to a PR branch.

Previously, both push and pull_request events fired when pushing to a
PR branch, causing the workflow to run twice in parallel.

Changes:
- Remove push trigger (branches-ignore: main)
- Add synchronize and reopened to pull_request types
- Keep opened and edited for PR creation and description updates

The synchronize event fires when commits are pushed to a PR branch,
replacing the need for the push trigger.

Co-authored-by: Ona <no-reply@ona.com>

* Add comment explaining pull_request trigger types

Document the purpose of each pull_request event type to clarify when
the workflow runs and why each type is needed.

Co-authored-by: Ona <no-reply@ona.com>

---------

Co-authored-by: Ona <no-reply@ona.com>
Pin all external GitHub Actions to specific commit SHAs to prevent
supply chain attacks via malicious tag updates.

Actions pinned (27 unique actions, ~100 references):
- actions/cache@v3
- actions/checkout@master, @v2, @v4
- actions/github-script@v6, @v7
- actions/setup-go@v2
- actions/setup-java@v4
- actions/stale@v9
- actions/upload-artifact@v4
- authzed/action-spicedb-validate@v1.0.1
- BetaHuhn/repo-file-sync-action@v1
- bufbuild/buf-breaking-action@v1
- bufbuild/buf-lint-action@v1
- bufbuild/buf-setup-action@v1
- configcat/scan-repository@v2
- docker/login-action@v3
- FedericoCarboni/setup-ffmpeg@v1
- filiptronicek/get-last-job-status@main
- google-github-actions/auth@v1
- imjasonh/setup-crane@v0.1
- KeisukeYamashita/create-comment@v1
- peter-evans/create-pull-request@v6
- rtCamp/action-slack-notify@v2
- slackapi/slack-github-action@v1.24.0
- test-summary/action@v2
- transferwise/sanitize-branch-name@v1

Exception:
- gitpod-io/gh-app-auth: internal action, not pinned

Part of PDE-138
Closes PDE-215

Co-authored-by: Ona <no-reply@ona.com>
* Fix test skip mechanism to handle empty env vars

The ifEnvVarNotSet function was only checking for undefined, but in CI
environments variables can be set to empty strings. This caused tests
to run when they should have been skipped, resulting in 401 errors.

Now checks for both undefined and empty string values.

Co-authored-by: Ona <no-reply@ona.com>

* [content-service] Fix outdated test expectations

* [dev] Drop "--ignore-scripts" for yarn, as we rely on it in a number of places

* [dev] Use new dev-image throughout CI: dev-environment:fix-skip-if-empty-env-vars-gha.22

* [dev] Update leeway to v0.10.7

Co-authored-by: Ona <no-reply@ona.com>

* [dev] Use new dev-image throughout CI: dev-environment:fix-skip-if-empty-env-vars-gha.25

Co-authored-by: Ona <no-reply@ona.com>

* [dev] Update dev-environment image in GitHub action Dockerfiles

Co-authored-by: Ona <no-reply@ona.com>

* [dev] Update leeway to v0.10.8

Co-authored-by: Ona <no-reply@ona.com>

* [dev] Use new dev-image throughout CI: dev-environment:fix-skip-if-empty-env-vars-gha.29

Co-authored-by: Ona <no-reply@ona.com>

* [installer] Fix dependency to outdated helm registry

Co-authored-by: Ona <no-reply@ona.com>

---------

Co-authored-by: Ona <no-reply@ona.com>
* [content-service] Fix git init default branch in tests

The tests were failing in CI because they depend on git's default branch
configuration. The git client sets HOME=/home/gitpod where no .gitconfig
exists, causing git to fall back to 'master' as the default branch.

This fix explicitly sets --initial-branch=main for all git init calls
in tests, making them deterministic regardless of the environment's
git configuration.

Co-authored-by: Ona <no-reply@ona.com>

* [supervisor] Update test expectations for HISTFILE command

The getCommand function now prepends a HISTFILE command for non-headless
tasks to enable bash history. Updated test expectations to match the new
output format.

Co-authored-by: Ona <no-reply@ona.com>

---------

Co-authored-by: Ona <no-reply@ona.com>
Updated sunset date for Gitpod Classic pay-as-you-go.
* [npm] Switch to npm (v11.7) publish with OIDC support

Co-authored-by: Ona <no-reply@ona.com>

* [dev] dev-enviroment image: bump to most-recent gpl-npm-oidc-support-gha.42 to use same config in CI

---------

Co-authored-by: Ona <no-reply@ona.com>
OIDC-based npm publishing doesn't require explicit token env vars.
Keeps publish.js token handling for manual releases.

Co-authored-by: Ona <no-reply@ona.com>
Required for npm provenance publishing with OIDC.

Co-authored-by: Ona <no-reply@ona.com>
Updated SVG file to include a new design for the button.
Comment out ide-code-updates and ide-jb-updates job triggers
to prevent VS Code and JetBrains update workflows from running
on main branch builds.

Co-authored-by: Ona <no-reply@ona.com>
* [preview] Add container to GC delete job

The delete job was missing the container specification, causing
'leeway: command not found' errors. Use the same dev-environment
container as the stale job.

Co-authored-by: Ona <no-reply@ona.com>

* [preview] Convert Docker actions to composite actions

Convert preview-create, deploy-gitpod, and deploy-monitoring-satellite
from Docker-based actions to composite actions. This fixes GCP OIDC
authentication failures caused by credential file permission issues
when Docker actions mount the workspace.

Docker actions run in isolated containers where the credentials file
path from the host doesn't match the container's filesystem, and file
permissions prevent access. Composite actions run in the same context
as the job, avoiding these issues.

Changes:
- Convert 3 Docker actions to composite actions
- Add container spec to infrastructure/install/monitoring jobs in:
  - build.yml
  - branch-build.yml
  - ide-integration-tests.yml
  - workspace-integration-tests.yml
  - preview-env-check-regressions.yml
- Remove unused inputs (infrastructure_provider, image_repo_base,
  previewctl_hash) from action calls

Co-authored-by: Ona <no-reply@ona.com>

* [preview] Add container to delete jobs

Add missing container specification to delete jobs in:
- ide-integration-tests.yml
- workspace-integration-tests.yml
- preview-env-check-regressions.yml

The delete-preview action is a composite action that requires leeway,
which is only available in the dev-environment container.

Co-authored-by: Ona <no-reply@ona.com>

* [dev] Align leeway config between CI and workspace/environment

---------

Co-authored-by: Ona <no-reply@ona.com>
Add resolutions for transitive dependencies with known vulnerabilities:
- @babel/traverse: CVE-2023-45133
- browserify-sign: pulls in fixed elliptic
- cipher-base: CVE-2025-21531
- elliptic: CVE-2024-48949
- exec-sh: removes vulnerable merge@1.x (GHSA-7wpw-2hjm-89gp)
- loader-utils: CVE-2022-37601
- pbkdf2: CVE-2025-21532
- tough-cookie: CVE-2023-26136

Co-authored-by: Ona <no-reply@ona.com>
* [previewctl] Log output when SSH key installation fails

When installVMSSHKeys() fails, the error message only shows 'exit status 1'
without any context about what went wrong. This makes debugging preview
environment deployment failures difficult.

Capture and log the command output when the ssh-vm.sh script fails.

Co-authored-by: Ona <no-reply@ona.com>

* [build] Disable install-app job for staging and production

Temporarily disable the install-app workflow trigger that deploys to
staging and production environments.

Co-authored-by: Ona <no-reply@ona.com>

* [build] Enable shell tracing in deploy-gitpod action

Add -x flag to show executed commands and their arguments for easier
debugging of deployment failures.

Co-authored-by: Ona <no-reply@ona.com>

---------

Co-authored-by: Ona <no-reply@ona.com>
* Upgrade caddy 2.9.1 -> 2.10.2

Co-authored-by: Ona <no-reply@ona.com>

* Upgrade proxy component to Caddy 2.10.2

- Update Dockerfile to use caddy:2.10.2-builder and caddy/caddy:2.10.2-alpine
- Update all 10 plugin go.mod files from Caddy v2.7.6 to v2.10.2
- Fix sshtunnel plugin: replace deprecated caddy.Listen() with NetworkAddress.Listen()
- Remove intermediate Go version upgrade stage (caddy:2.10.2-builder includes Go 1.24+)

Fixes several HIGH severity vulnerabilities:
- GHSA-7jwh-3vrq-q3m8 (pgproto3 SQL injection)
- GHSA-m7wr-2xf7-cm9p (pgx SQL injection)
- GHSA-mrww-27vc-gghv (pgx SQL injection)
- GHSA-c33x-xqrf-c478 (quic-go DoS)
- GHSA-vrw8-fxc6-2r93 (chi host header injection)

Co-authored-by: Ona <no-reply@ona.com>

* [protocol] Fix dirty git state on rebuild

Co-authored-by: Ona <no-reply@ona.com>

* Upgrade to Caddy 2.11.0-beta.2 to fix critical vulnerability

Upgrade from Caddy 2.10.2 to 2.11.0-beta.2 to fix GHSA-h8cp-697h-8c8p
(Critical - authorization bypass in smallstep/certificates ACME/SCEP).

- proxy: Use caddy:builder with xcaddy build v2.11.0-beta.2
- ide-proxy, dashboard: Use caddy/caddy:2.11-alpine
- Update all plugin go.mod files to Caddy v2.11.0-beta.2

Co-authored-by: Ona <no-reply@ona.com>

* [proxy] Add small TODO to fix builder dependency once available

Co-authored-by: Ona <no-reply@ona.com>

---------

Co-authored-by: Ona <no-reply@ona.com>
Log errors with context at each failure point in the install() function
to help diagnose which step is failing during preview environment setup.

Co-authored-by: Ona <no-reply@ona.com>
…21248)

The caddy/caddy:2.11-alpine Docker image is built from v2.11.0-beta.1
which still contains the vulnerable smallstep/certificates v0.28.4.

Build Caddy from source using xcaddy to get v2.11.0-beta.2 which
includes smallstep/certificates v0.29.0, fixing GHSA-h8cp-697h-8c8p.

Co-authored-by: Ona <no-reply@ona.com>
GitHub Actions sets HOME=/github/home when running in a container, but
this directory doesn't exist in the dev-environment image. This causes
previewctl install-context to fail when generating SSH keys.

Restore HOME=/home/gitpod to match the original Docker-based action
behavior from before commit 80317ca.

Co-authored-by: Ona <no-reply@ona.com>
The previous fix (#21252) only applied HOME=/home/gitpod to the
'Deploy Gitpod' step, but the 'Install previewctl' step runs first
and also needs the fix.

Leeway fails with 'getwd: no such file or directory' when HOME points
to a non-existent directory.

Validated locally:
  docker run --rm --user root -e HOME=/github/home ...
  leeway run dev/preview/previewctl:install
  # Fails: getwd: no such file or directory

  docker run --rm --user root -e HOME=/github/home ...
  export HOME=/home/gitpod
  leeway run dev/preview/previewctl:install
  # Succeeds

Co-authored-by: Ona <no-reply@ona.com>
Co-authored-by: Ona <no-reply@ona.com>
When terraform plan -destroy returns exit code 0 (no changes because
resources were already deleted), the script exited before deleting the
terraform workspace. This caused the same preview environments to appear
in subsequent GC runs.

Co-authored-by: Ona <no-reply@ona.com>
Co-authored-by: Ona <no-reply@ona.com>
Tasks using leeway (initGo, installLocalAppCli, buildJava) now depend on
configurePreview to ensure GCP authentication is complete before they run.

Without this, leeway cannot access the remote cache bucket and falls back
to rebuilding all packages locally.

Co-authored-by: Ona <no-reply@ona.com>
* Add minimal gitpod.io mode and redirect logging

Task 1: Add redirect logging to Caddy proxy
- New (enable_redirect_log) snippet that logs all 3xx responses
- Captures source URL, destination, status code, and user agent
- Added to http://, https://{GITPOD_DOMAIN}, and workspace blocks

Task 2: Implement minimal gitpod.io mode in dashboard
- Only active on exact "gitpod.io" domain
- Controlled by ConfigCat flag "minimal_gitpod_io_mode"
- localStorage override for testing: minimal_gitpod_io_mode=true/false
- Handles redirects without booting full React app:
  - Website slugs -> www.gitpod.io
  - Hash-based workspace creation -> app.ona.com
  - Legacy URL formats -> app.ona.com
  - App routes and root path -> minimal login page
  - Unknown paths -> www.gitpod.io
- Minimal login page shows Ona branding and "Continue with Ona" button

Part of CLC-2206: Reduce Compute Engine costs

Co-authored-by: Ona <no-reply@ona.com>

* Fix ConfigCat client usage in minimal mode

Use existing getExperimentsClient() wrapper instead of raw configcat-js API.

Co-authored-by: Ona <no-reply@ona.com>

* fix: use existing isGitpodIo function

* Update minimal login page to match current PAYG layout

- Two-panel layout: white left panel with login, gradient right panel with Ona branding
- Gitpod orange logo on left panel
- 'What do you want to get done today?' subtitle
- Black outlined 'Continue with Ona' button
- Sunset notice with links to Ona
- Terms of service and privacy policy footer
- Right panel with Ona wordmark, description, and 'Try Ona' button
- Responsive: hides right panel on smaller screens

Co-authored-by: Ona <no-reply@ona.com>

* Extract minimal login page to external HTML file

- Move inline HTML template to src/minimal-login.html for easier review
- Add webpack config to import HTML as raw string
- Add TypeScript declaration for HTML imports

Co-authored-by: Ona <no-reply@ona.com>

* Add HTML files to dashboard build sources

Co-authored-by: Ona <no-reply@ona.com>

* Fix minimal login page styling

- Fix button styling: dark background with white text (matching current design)
- Remove terms of service footer (no longer applicable)
- Add ona-application.webp to public folder for the preview image

Co-authored-by: Ona <no-reply@ona.com>

---------

Co-authored-by: Ona <no-reply@ona.com>
Add description meta tag and update manifest to inform users that
Gitpod is now Ona while keeping Gitpod Classic branding.

Co-authored-by: Ona <no-reply@ona.com>
…lation (#21289)

- Remove ConfigCat feature flag dependency for minimal mode detection
- gitpod.io: always use minimal mode (synchronous, no network call)
- Preview environments: use isDedicatedInstallation with localStorage caching
- Dedicated/self-hosted: never use minimal mode
- Replace document.write() with innerHTML to avoid deprecation issues
- Change GITPOD_WITH_DEDICATED_EMU default to true in preview deployments

The localStorage override (minimal_gitpod_io_mode=true/false) still works for testing.

Co-authored-by: Ona <no-reply@ona.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.