Skip to content

Commit ca1c28e

Browse files
committed
Update ci build
1 parent 657c227 commit ca1c28e

File tree

2 files changed

+120
-340
lines changed

2 files changed

+120
-340
lines changed

.github/workflows/ci.yml

+120
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
pull_request:
8+
branches:
9+
- master
10+
workflow_dispatch:
11+
12+
jobs:
13+
filter:
14+
runs-on: ubuntu-latest
15+
outputs:
16+
workflow: ${{ steps.filter.outputs.workflow }}
17+
node_json_theia: ${{ steps.filter.outputs.node_json_theia }}
18+
node_json_vscode: ${{ steps.filter.outputs.node_json_vscode }}
19+
java_emf_theia: ${{ steps.filter.outputs.java_emf_theia }}
20+
java_emf_eclipse: ${{ steps.filter.outputs.java_emf_eclipse }}
21+
steps:
22+
- name: Checkout code
23+
uses: actions/[email protected]
24+
- name: Filter paths
25+
id: filter
26+
uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 #v3.0.2
27+
with:
28+
filters: |
29+
workflow:
30+
- 'workflow/**'
31+
node_json_theia:
32+
- 'project-templates/node-json-theia/**'
33+
node_json_vscode:
34+
- 'project-templates/node-json-vscode/**'
35+
java_emf_theia:
36+
- 'project-templates/java-emf-theia/**'
37+
java_emf_eclipse:
38+
- 'project-templates/java-emf-eclipse/**'
39+
40+
build-workflow-example:
41+
if: github.event_name == 'workflow_dispatch' || needs.filter.outputs.workflow == 'true'
42+
runs-on: ubuntu-latest
43+
needs: filter
44+
steps:
45+
- name: Checkout code
46+
uses: actions/[email protected]
47+
- name: Set up Node.js
48+
uses: actions/[email protected]
49+
with:
50+
node-version: '18.x'
51+
- name: Build
52+
env:
53+
NODE_OPTIONS: --max_old_space_size=4096
54+
run: yarn build:workflow
55+
56+
build-node-json-theia:
57+
if: github.event_name == 'workflow_dispatch' || needs.filter.outputs.node_json_theia == 'true'
58+
runs-on: ubuntu-latest
59+
needs: filter
60+
steps:
61+
- name: Checkout code
62+
uses: actions/[email protected]
63+
- name: Set up Node.js
64+
uses: actions/[email protected]
65+
with:
66+
node-version: '18.x'
67+
- name: Build
68+
env:
69+
NODE_OPTIONS: --max_old_space_size=4096
70+
run: yarn build:node-json-theia
71+
72+
build-node-json-vscode:
73+
if: github.event_name == 'workflow_dispatch' || needs.filter.outputs.node_json_vscode == 'true'
74+
runs-on: ubuntu-latest
75+
needs: filter
76+
steps:
77+
- name: Checkout code
78+
uses: actions/[email protected]
79+
- name: Set up Node.js
80+
uses: actions/[email protected]
81+
with:
82+
node-version: '18.x'
83+
- name: Build
84+
run: yarn build:node-json-vscode
85+
86+
build-java-emf-theia:
87+
if: github.event_name == 'workflow_dispatch' || needs.filter.outputs.java_emf_theia == 'true'
88+
runs-on: ubuntu-latest
89+
needs: filter
90+
steps:
91+
- name: Checkout code
92+
uses: actions/[email protected]
93+
- name: Set up Node.js
94+
uses: actions/[email protected]
95+
- name: Set up JDK
96+
uses: actions/[email protected]
97+
with:
98+
distribution: 'temurin'
99+
java-version: '17'
100+
- name: Build
101+
env:
102+
NODE_OPTIONS: --max_old_space_size=4096
103+
run: yarn build:java-emf-theia
104+
105+
build-java-emf-eclipse:
106+
if: github.event_name == 'workflow_dispatch' || needs.filter.outputs.java_emf_eclipse == 'true'
107+
runs-on: ubuntu-latest
108+
needs: filter
109+
steps:
110+
- name: Checkout code
111+
uses: actions/[email protected]
112+
- name: Set up Node.js
113+
uses: actions/[email protected]
114+
- name: Set up JDK
115+
uses: actions/[email protected]
116+
with:
117+
distribution: 'temurin'
118+
java-version: '17'
119+
- name: Build
120+
run: yarn build:jav-emf-eclipse

0 commit comments

Comments
 (0)