eclipse-theia / theia-ide

The Eclipse IDE is a modern and open IDE for cloud and desktop. The Theia IDE is based on the Theia platform. The Theia IDE is available as a downloadable desktop application. You can also try the latest version of the Theia IDE online. For more details, see the Readme below.
https://theia-ide.org/#theiaide
MIT License
343 stars 129 forks source link

Introduce Update Channels #278 #327

Closed jfaltermeier closed 9 months ago

jfaltermeier commented 9 months ago

What it does

The goal of this PR is to add a second update channel.

Until now every commit was built and the result was pushed to https://download.eclipse.org/theia/ide/

With this PR we will instead push the results to https://download.eclipse.org/theia/ide-preview/ The ide-preview location may be used for testing the IDE before we promote it to https://download.eclipse.org/theia/ide/

For the promotion there will be a new Jenkinsfile in this PR that will be used to copy the results. This needs to be triggered manually on the build server then.

Finally there is a new preference for selecting an update channel. The current options are stable (https://download.eclipse.org/theia/ide/ Released Theia Version, Theia IDE was tested before promotion) and preview (https://download.eclipse.org/theia/ide-preview/ Released Theia Versions, Used for testing before promotion to general public). We may add a third option for Theia Nightlies in the future (non-released nightly builds of Theia).

Contributed on behalf of STMicroelectronics

How to test

Update channels

Testing the update channels requires some local adjustments. See the image below to check a valid file structure for local testing on linux.. This structure mimics our download.eclipse.org layout

 HTTP  1/19/2024 2:35:23 PM ::1 GET /ide/latest/linux/latest-linux.yml?noCache=1hkguts90
 HTTP  1/19/2024 2:35:23 PM ::1 Returned 200 in 5 ms
 HTTP  1/19/2024 2:35:25 PM ::1 GET /ide/latest/linux/latest-linux.yml?noCache=1hkguttlg
 HTTP  1/19/2024 2:35:25 PM ::1 Returned 200 in 0 ms
 HTTP  1/19/2024 2:35:58 PM ::1 GET /ide/latest/linux/latest-linux.yml?noCache=1hkguuu1a
 HTTP  1/19/2024 2:35:58 PM ::1 Returned 200 in 1 ms

ksnip_20240119-145339

Build Jobs

The build jobs need to be tested on the Eclipse CI. I don't have local testing instructions.

Review checklist

Reminder for reviewers

JonasHelming commented 9 months ago

Great description, btw :-)