Skip to content

Commit b4dd94a

Browse files
author
Andrea Falzetti
committed
feat(jetbrains): add rider and clion
1 parent d334e95 commit b4dd94a

File tree

32 files changed

+896
-26
lines changed

32 files changed

+896
-26
lines changed

.github/workflows/jetbrains-auto-update-template.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ jobs:
5757
echo $IDE_VERSION
5858
- name: Leeway build
5959
if: ${{ steps.ide-version.outputs.result }}
60+
env:
61+
LEEWAY_MAX_PROVENANCE_BUNDLE_SIZE: '8388608'
6062
run: |
6163
gcloud auth configure-docker --quiet
6264
export LEEWAY_WORKSPACE_ROOT=$(pwd)

.github/workflows/jetbrains-auto-update.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,3 +65,21 @@ jobs:
6565
projectId: ${{ secrets.GCP_PROJECT_ID }}
6666
serviceAccountKey: ${{ secrets.GCP_SA_KEY }}
6767
slackWebhook: ${{ secrets.IDE_SLACK_WEBHOOK }}
68+
rider:
69+
uses: ./.github/workflows/jetbrains-auto-update-template.yml
70+
with:
71+
productId: rider
72+
productCode: RD
73+
secrets:
74+
projectId: ${{ secrets.GCP_PROJECT_ID }}
75+
serviceAccountKey: ${{ secrets.GCP_SA_KEY }}
76+
slackWebhook: ${{ secrets.IDE_SLACK_WEBHOOK }}
77+
clion:
78+
uses: ./.github/workflows/jetbrains-auto-update-template.yml
79+
with:
80+
productId: clion
81+
productCode: CL
82+
secrets:
83+
projectId: ${{ secrets.GCP_PROJECT_ID }}
84+
serviceAccountKey: ${{ secrets.GCP_SA_KEY }}
85+
slackWebhook: ${{ secrets.IDE_SLACK_WEBHOOK }}

WORKSPACE.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ defaultArgs:
1717
phpstormDownloadUrl: "https://download.jetbrains.com/webide/PhpStorm-2022.2.3.tar.gz"
1818
rubymineDownloadUrl: "https://download.jetbrains.com/ruby/RubyMine-2022.2.3.tar.gz"
1919
webstormDownloadUrl: "https://download.jetbrains.com/webstorm/WebStorm-2022.2.3.tar.gz"
20+
riderDownloadUrl: "https://download.jetbrains.com/rider/JetBrains.Rider-2022.2.3.tar.gz"
21+
clionDownloadUrl: "https://download.jetbrains.com/cpp/CLion-2022.2.3.tar.gz"
2022
REPLICATED_API_TOKEN: ""
2123
REPLICATED_APP: ""
2224
provenance:

components/BUILD.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,10 @@ packages:
5454
- components/ide/jetbrains/image:rubymine-latest
5555
- components/ide/jetbrains/image:webstorm
5656
- components/ide/jetbrains/image:webstorm-latest
57+
- components/ide/jetbrains/image:rider
58+
- components/ide/jetbrains/image:rider-latest
59+
- components/ide/jetbrains/image:clion
60+
- components/ide/jetbrains/image:clion-latest
5761
- components/image-builder-bob:docker
5862
- components/image-builder-mk3:docker
5963
- components/local-app:docker

components/gitpod-protocol/data/gitpod-schema.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -283,6 +283,14 @@
283283
"webstorm": {
284284
"$ref": "#/definitions/jetbrainsProduct",
285285
"description": "Configure WebStorm integration"
286+
},
287+
"rider": {
288+
"$ref": "#/definitions/jetbrainsProduct",
289+
"description": "Configure Rider integration"
290+
},
291+
"clion": {
292+
"$ref": "#/definitions/jetbrainsProduct",
293+
"description": "Configure CLion integration"
286294
}
287295
}
288296
},

components/gitpod-protocol/go/gitpod-config-types.go

Lines changed: 36 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

components/gitpod-protocol/src/protocol.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -802,6 +802,8 @@ export interface JetBrainsConfig {
802802
phpstorm?: JetBrainsProductConfig;
803803
rubymine?: JetBrainsProductConfig;
804804
webstorm?: JetBrainsProductConfig;
805+
rider?: JetBrainsProductConfig;
806+
clion?: JetBrainsProductConfig;
805807
}
806808
export interface JetBrainsProductConfig {
807809
prebuilds?: JetBrainsPrebuilds;
Lines changed: 1 addition & 0 deletions
Loading
Lines changed: 1 addition & 0 deletions
Loading

components/ide/jetbrains/image/BUILD.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,14 @@ const ideConfigs = [
2727
name: "webstorm",
2828
productCode: "WS",
2929
},
30+
{
31+
name: "rider",
32+
productCode: "RD",
33+
},
34+
{
35+
name: "clion",
36+
productCode: "CL",
37+
},
3038
];
3139

3240
const packages = [];

components/ide/jetbrains/image/download.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,7 @@ mkdir backend && cd backend || exit
77
curl -sSLo backend.tar.gz "$JETBRAINS_BACKEND_URL" && tar -xf backend.tar.gz --strip-components=1 && rm backend.tar.gz
88
# enable shared indexes by default
99
printf '\nshared.indexes.download.auto.consent=true' >> "bin/idea.properties"
10+
11+
# TODO(andreafalzetti): this is a workaround to build Rider, as these files are supposed to be for MacOS and leeway does not like them
12+
rm -rf bin/JBDevice.framework
13+
rm -rf bin/Bridge.framework

components/ide/jetbrains/image/gha-update-image/index.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,20 @@ const IDEs = [
4949
productType: "release",
5050
exampleRepo: "https://github.com/gitpod-io/template-jetbrains-webstorm",
5151
},
52+
{
53+
productName: "Rider",
54+
productId: "rider",
55+
productCode: "RD",
56+
productType: "release",
57+
exampleRepo: "https://github.com/gitpod-io/template-dotnet-core-cli-csharp",
58+
},
59+
{
60+
productName: "CLion",
61+
productId: "clion",
62+
productCode: "CL",
63+
productType: "release",
64+
exampleRepo: "https://github.com/gitpod-io/template-cpp",
65+
},
5266
];
5367

5468
(async () => {
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"entrypoint": "/ide-desktop/startup.sh",
3+
"entrypointArgs": [ "{DESKTOPIDEPORT}", "clion", "Open in CLion" ],
4+
"readinessProbe": {
5+
"type": "http",
6+
"http": {
7+
"path": "/status"
8+
}
9+
}
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"entrypoint": "/ide-desktop/startup.sh",
3+
"entrypointArgs": [ "{DESKTOPIDEPORT}", "rider", "Open in Rider" ],
4+
"readinessProbe": {
5+
"type": "http",
6+
"http": {
7+
"path": "/status"
8+
}
9+
}
10+
}

components/server/src/ide-service.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,10 @@ export class IDEService {
5959
productCode = "RM";
6060
} else if (key === "webstorm") {
6161
productCode = "WS";
62+
} else if (key === "rider") {
63+
productCode = "RD";
64+
} else if (key === "clion") {
65+
productCode = "CL";
6266
}
6367
const prebuilds = productCode && ws.config.jetbrains[key as keyof JetBrainsConfig]?.prebuilds;
6468
if (prebuilds) {

install/installer/cmd/testdata/render/aws-setup/output.golden

Lines changed: 58 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)