Skip to content

Commit a2110ce

Browse files
mustard-mhroboquat
andauthored
[JetBrains] upgrade EAP version to 2024.1.2 (#19780)
* Update Platform Version of JetBrains Backend Plugin (EAP) to 242.10180-EAP-CANDIDATE-SNAPSHOT * Update EAP to use latest 2024.1 * fixup * resolve jetbrains eap images * fix preview no EAP * fixup * fix base image * fixup --------- Co-authored-by: Robo Quat <[email protected]>
1 parent 984fbea commit a2110ce

File tree

8 files changed

+66
-13
lines changed

8 files changed

+66
-13
lines changed

components/ide/jetbrains/backend-plugin/BUILD.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,3 +80,10 @@ packages:
8080
config:
8181
commands:
8282
- ["./build.sh"]
83+
- name: latest-info
84+
type: generic
85+
srcs:
86+
- "gradle-latest.properties"
87+
config:
88+
commands:
89+
- ["echo", "hello"]
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# See https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html
22
# for insight into build numbers and IntelliJ Platform versions.
3-
pluginSinceBuild=241.15989
3+
pluginSinceBuild=241.17011
44
pluginUntilBuild=241.*
55
# Plugin Verifier integration -> https://github.com/JetBrains/gradle-intellij-plugin#plugin-verifier-dsl
66
# See https://jb.gg/intellij-platform-builds-list for available build versions.
77
pluginVerifierIdeVersions=2024.1
88
# Version from "com.jetbrains.intellij.idea" which can be found at https://www.jetbrains.com/intellij-repository/snapshots
9-
platformVersion=241.15989-EAP-CANDIDATE-SNAPSHOT
9+
platformVersion=241.17011-EAP-CANDIDATE-SNAPSHOT

components/ide/jetbrains/image/BUILD.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,13 +91,19 @@ const generateIDEDownloadPackage = function (ideConfig, qualifier) {
9191
config: {
9292
commands: [["./download.sh"]],
9393
},
94+
deps: [],
9495
};
9596
if (qualifier === "stable") {
9697
pkg.env.push(`JETBRAINS_BACKEND_URL=${args[`${ideConfig.name}DownloadUrl`]}`);
9798
} else {
9899
let url = `https://download.jetbrains.com/product?type=release,rc,eap&distribution=linux&code=${ideConfig.productCode}`;
99100
if (args["buildNumber"]) {
100101
url = `${url}&build=${args["buildNumber"]}`;
102+
} else {
103+
pkg.srcs.push("resolve-latest-ide-version.sh");
104+
pkg.deps.push("components/ide/jetbrains/backend-plugin:latest-info");
105+
pkg.env.push("PRODUCT_CODE=" + ideConfig.productCode);
106+
pkg.env.push("PARSE_URL_FROM_LATEST_INFO=true");
101107
}
102108
pkg.env.push(`JETBRAINS_BACKEND_URL=${url}`);
103109
}

components/ide/jetbrains/image/download.sh

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,25 @@
44
# See License.AGPL.txt in the project root for license information.
55

66
mkdir backend && cd backend || exit
7+
8+
# get latest info from latest properties file for preview env
9+
if [ "$PARSE_URL_FROM_LATEST_INFO" = "true" ]; then
10+
TEMP_FILENAME=$(mktemp)
11+
PLUGIN_PLATFORM_VERSION=$(grep platformVersion= "../components-ide-jetbrains-backend-plugin--latest-info/gradle-latest.properties" | sed 's/platformVersion=//' | sed 's/-EAP-CANDIDATE-SNAPSHOT//') # Example: PLUGIN_PLATFORM_VERSION: 223.7571
12+
13+
curl -sL "https://data.services.jetbrains.com/products/releases?code=$PRODUCT_CODE&type=eap,rc,release&platform=linux" > "$TEMP_FILENAME"
14+
IDE_BUILD_VERSION=$(jq -r -c "first(.${PRODUCT_CODE}[] | select(.build | contains(\"$PLUGIN_PLATFORM_VERSION\")) | .build)" < "$TEMP_FILENAME") # Example: IDE_BUILD_VERSION: 223.7571.176
15+
rm "$TEMP_FILENAME"
16+
17+
if [ -n "$IDE_BUILD_VERSION" ]; then
18+
JETBRAINS_BACKEND_URL="https://download.jetbrains.com/product?type=release,rc,eap&distribution=linux&code=$PRODUCT_CODE&build=$IDE_BUILD_VERSION"
19+
else
20+
JETBRAINS_BACKEND_URL="https://download.jetbrains.com/product?type=release,rc,eap&distribution=linux&code=$PRODUCT_CODE"
21+
fi
22+
fi
23+
24+
echo "Downloading from $JETBRAINS_BACKEND_URL"
25+
726
curl -sSLo backend.tar.gz "$JETBRAINS_BACKEND_URL" && tar -xf backend.tar.gz --strip-components=1 && rm backend.tar.gz
827
# enable shared indexes by default
928
printf '\nshared.indexes.download.auto.consent=true' >> "bin/idea.properties"

components/ide/jetbrains/image/leeway.Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# Licensed under the GNU Affero General Public License (AGPL).
33
# See License.AGPL.txt in the project root for license information.
44

5-
FROM cgr.dev/chainguard/wolfi-base:latest@sha256:c6064a4b8a3ee16cf99084aa4071057ba2cb168fe83252b493dddf8e72d96b48 as base_builder
5+
FROM cgr.dev/chainguard/wolfi-base:latest@sha256:97a9dd83b120b33159b94f79db90cd51a205363305818f737605354b54311974 as base_builder
66
ARG JETBRAINS_DOWNLOAD_QUALIFIER
77
ARG SUPERVISOR_IDE_CONFIG
88
ARG JETBRAINS_BACKEND_VERSION
@@ -19,7 +19,7 @@ RUN mkdir /ide-desktop \
1919
&& cp /tmp/supervisor-ide-config.json /ide-desktop/${JETBRAINS_DOWNLOAD_QUALIFIER}/supervisor-ide-config.json
2020

2121
# for debugging
22-
# FROM cgr.dev/chainguard/wolfi-base:latest@sha256:c6064a4b8a3ee16cf99084aa4071057ba2cb168fe83252b493dddf8e72d96b48
22+
# FROM cgr.dev/chainguard/wolfi-base:latest@sha256:97a9dd83b120b33159b94f79db90cd51a205363305818f737605354b54311974
2323
FROM scratch
2424
ARG JETBRAINS_BACKEND_VERSION
2525
ARG JETBRAINS_DOWNLOAD_QUALIFIER

dev/preview/workflow/preview/patch-ide-configmap.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ function replaceImage(image) {
1111

1212
for (let ide in json.ideOptions.options) {
1313
if (["clion", "goland", "intellij", "phpstorm", "pycharm", "rider", "rubymine", "webstorm"].includes(ide)) {
14-
json.ideOptions.options[ide].latestImage = replaceImage(json.ideOptions.options[ide].latestImage);
1514
json.ideOptions.options[ide].versions = json.ideOptions.options[ide].versions?.map((version) => {
1615
version.image = replaceImage(version.image);
1716
version.imageLayers = version.imageLayers.map(replaceImage);

install/installer/pkg/components/ide-service/ide-configmap.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@
104104
"logo": "{{.IdeLogoBase}}/intellijIdeaLogo.svg",
105105
"label": "Ultimate",
106106
"image": "{{.Repository}}/ide/intellij:{{.WorkspaceVersions.Workspace.DesktopIdeImages.IntelliJImage.Version}}",
107-
"latestImage": "{{.Repository}}/ide/intellij:latest",
107+
"latestImage": "{{.ResolvedJBImageLatest.IntelliJ}}",
108108
"pluginImage": "{{.JetBrainsPluginImage}}",
109109
"pluginLatestImage": "{{.JetBrainsPluginLatestImage}}",
110110
"imageLayers": [
@@ -160,7 +160,7 @@
160160
"type": "desktop",
161161
"logo": "{{.IdeLogoBase}}/golandLogo.svg",
162162
"image": "{{.Repository}}/ide/goland:{{.WorkspaceVersions.Workspace.DesktopIdeImages.GoLandImage.Version}}",
163-
"latestImage": "{{.Repository}}/ide/goland:latest",
163+
"latestImage": "{{.ResolvedJBImageLatest.GoLand}}",
164164
"pluginImage": "{{.JetBrainsPluginImage}}",
165165
"pluginLatestImage": "{{.JetBrainsPluginLatestImage}}",
166166
"imageLayers": [
@@ -205,7 +205,7 @@
205205
"logo": "{{.IdeLogoBase}}/pycharmLogo.svg",
206206
"label": "Professional",
207207
"image": "{{.Repository}}/ide/pycharm:{{.WorkspaceVersions.Workspace.DesktopIdeImages.PyCharmImage.Version}}",
208-
"latestImage": "{{.Repository}}/ide/pycharm:latest",
208+
"latestImage": "{{.ResolvedJBImageLatest.PyCharm}}",
209209
"pluginImage": "{{.JetBrainsPluginImage}}",
210210
"pluginLatestImage": "{{.JetBrainsPluginLatestImage}}",
211211
"imageLayers": [
@@ -249,7 +249,7 @@
249249
"type": "desktop",
250250
"logo": "{{.IdeLogoBase}}/phpstormLogo.svg",
251251
"image": "{{.Repository}}/ide/phpstorm:{{.WorkspaceVersions.Workspace.DesktopIdeImages.PhpStormImage.Version}}",
252-
"latestImage": "{{.Repository}}/ide/phpstorm:latest",
252+
"latestImage": "{{.ResolvedJBImageLatest.PhpStorm}}",
253253
"pluginImage": "{{.JetBrainsPluginImage}}",
254254
"pluginLatestImage": "{{.JetBrainsPluginLatestImage}}",
255255
"imageLayers": [
@@ -293,7 +293,7 @@
293293
"type": "desktop",
294294
"logo": "{{.IdeLogoBase}}/rubymineLogo.svg",
295295
"image": "{{.Repository}}/ide/rubymine:{{.WorkspaceVersions.Workspace.DesktopIdeImages.RubyMineImage.Version}}",
296-
"latestImage": "{{.Repository}}/ide/rubymine:latest",
296+
"latestImage": "{{.ResolvedJBImageLatest.RubyMine}}",
297297
"pluginImage": "{{.JetBrainsPluginImage}}",
298298
"pluginLatestImage": "{{.JetBrainsPluginLatestImage}}",
299299
"imageLayers": [
@@ -337,7 +337,7 @@
337337
"type": "desktop",
338338
"logo": "{{.IdeLogoBase}}/webstormLogo.svg",
339339
"image": "{{.Repository}}/ide/webstorm:{{.WorkspaceVersions.Workspace.DesktopIdeImages.WebStormImage.Version}}",
340-
"latestImage": "{{.Repository}}/ide/webstorm:latest",
340+
"latestImage": "{{.ResolvedJBImageLatest.WebStorm}}",
341341
"pluginImage": "{{.JetBrainsPluginImage}}",
342342
"pluginLatestImage": "{{.JetBrainsPluginLatestImage}}",
343343
"imageLayers": [
@@ -389,7 +389,7 @@
389389
"type": "desktop",
390390
"logo": "{{.IdeLogoBase}}/riderLogo.svg",
391391
"image": "{{.Repository}}/ide/rider:{{.WorkspaceVersions.Workspace.DesktopIdeImages.RiderImage.Version}}",
392-
"latestImage": "{{.Repository}}/ide/rider:latest",
392+
"latestImage": "{{.ResolvedJBImageLatest.Rider}}",
393393
"pluginImage": "{{.JetBrainsPluginImage}}",
394394
"pluginLatestImage": "{{.JetBrainsPluginLatestImage}}",
395395
"imageLayers": [
@@ -433,7 +433,7 @@
433433
"type": "desktop",
434434
"logo": "{{.IdeLogoBase}}/clionLogo.svg",
435435
"image": "{{.Repository}}/ide/clion:{{.WorkspaceVersions.Workspace.DesktopIdeImages.CLionImage.Version}}",
436-
"latestImage": "{{.Repository}}/ide/clion:latest",
436+
"latestImage": "{{.ResolvedJBImageLatest.CLion}}",
437437
"pluginImage": "{{.JetBrainsPluginImage}}",
438438
"pluginLatestImage": "{{.JetBrainsPluginLatestImage}}",
439439
"imageLayers": [

install/installer/pkg/components/ide-service/ide_config_configmap.go

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,17 @@ func ideConfigConfigmap(ctx *common.RenderContext) ([]runtime.Object, error) {
3737
return ctx.ImageName(ctx.Config.Repository, name, bundledLatest.Version)
3838
}
3939

40+
type JBImages struct {
41+
IntelliJ string
42+
GoLand string
43+
PyCharm string
44+
PhpStorm string
45+
RubyMine string
46+
WebStorm string
47+
Rider string
48+
CLion string
49+
}
50+
4051
type ConfigTemplate struct {
4152
Repository string
4253
IdeLogoBase string
@@ -50,6 +61,7 @@ func ideConfigConfigmap(ctx *common.RenderContext) ([]runtime.Object, error) {
5061
JetBrainsLauncherImage string
5162
JetBrainsPluginImagePrevious string
5263
JetBrainsLauncherImagePrevious string
64+
ResolvedJBImageLatest JBImages
5365

5466
WorkspaceVersions versions.Components
5567
}
@@ -67,6 +79,16 @@ func ideConfigConfigmap(ctx *common.RenderContext) ([]runtime.Object, error) {
6779
JetBrainsLauncherImage: ctx.ImageName(ctx.Config.Repository, ide.JetBrainsLauncherImage, ctx.VersionManifest.Components.Workspace.DesktopIdeImages.JetBrainsLauncherImage.Version),
6880
JetBrainsPluginImagePrevious: ctx.ImageName(ctx.Config.Repository, ide.JetBrainsBackendPluginImage, "commit-e7eb44545510a8293c5c6aa814a0ad4e81852e5f"),
6981
JetBrainsLauncherImagePrevious: ctx.ImageName(ctx.Config.Repository, ide.JetBrainsLauncherImage, "commit-92fccc81ef03c56615d0b14c49a7ac6ddd9216e6"),
82+
ResolvedJBImageLatest: JBImages{
83+
IntelliJ: resolveLatestImage(ide.IntelliJDesktopIDEImage, "latest", ctx.VersionManifest.Components.Workspace.DesktopIdeImages.IntelliJLatestImage),
84+
GoLand: resolveLatestImage(ide.GoLandDesktopIdeImage, "latest", ctx.VersionManifest.Components.Workspace.DesktopIdeImages.GoLandLatestImage),
85+
PyCharm: resolveLatestImage(ide.PyCharmDesktopIdeImage, "latest", ctx.VersionManifest.Components.Workspace.DesktopIdeImages.PyCharmLatestImage),
86+
PhpStorm: resolveLatestImage(ide.PhpStormDesktopIdeImage, "latest", ctx.VersionManifest.Components.Workspace.DesktopIdeImages.PhpStormLatestImage),
87+
RubyMine: resolveLatestImage(ide.RubyMineDesktopIdeImage, "latest", ctx.VersionManifest.Components.Workspace.DesktopIdeImages.RubyMineLatestImage),
88+
WebStorm: resolveLatestImage(ide.WebStormDesktopIdeImage, "latest", ctx.VersionManifest.Components.Workspace.DesktopIdeImages.WebStormLatestImage),
89+
Rider: resolveLatestImage(ide.RiderDesktopIdeImage, "latest", ctx.VersionManifest.Components.Workspace.DesktopIdeImages.RiderLatestImage),
90+
CLion: resolveLatestImage(ide.CLionDesktopIdeImage, "latest", ctx.VersionManifest.Components.Workspace.DesktopIdeImages.CLionLatestImage),
91+
},
7092

7193
WorkspaceVersions: ctx.VersionManifest.Components,
7294
}

0 commit comments

Comments
 (0)