9
9
branches : [ main ]
10
10
pull_request :
11
11
branches : [ main ]
12
+ workflow_call :
13
+
14
+ permissions :
15
+ contents : read
12
16
13
17
jobs :
14
18
build :
15
-
19
+ env :
20
+ COMPOSEUI_SKIP_DOWNLOAD : ' true'
16
21
runs-on : windows-latest
17
22
strategy :
18
23
matrix :
19
24
dotnet-version : [ '6.0.x' ]
20
-
25
+ node-version : [ '18.x' ]
21
26
steps :
22
27
- uses : actions/checkout@v3
28
+ - name : Setup Node.js ${{ matrix.node-version }}
29
+ uses : actions/setup-node@v3
30
+ with :
31
+ node-version : ${{ matrix.node-version }}
32
+ COMPOSEUI_SKIP_DOWNLOAD : ${{env.COMPOSEUI_SKIP_DOWNLOAD}}
33
+ - name : Install NPM dependencies
34
+ run : npm ci
35
+
36
+ - name : Build JavaScript
37
+ run : npx lerna run build
38
+
39
+ - name : Test JavaScript
40
+ run : npx lerna run test
41
+
23
42
- name : Setup .NET Core SDK ${{ matrix.dotnet-version }}
24
43
uses : actions/setup-dotnet@v2
25
44
with :
26
45
dotnet-version : ${{ matrix.dotnet-version }}
27
- - name : Install dependencies
46
+ - name : Install Nuget dependencies
28
47
run : Get-ChildItem -Recurse -Include *.sln | ForEach-Object {dotnet restore $_}
29
- working-directory : src
30
- - name : Build
31
- run : Get-ChildItem -Recurse -Include *.sln | ForEach-Object {dotnet build $_ --configuration Release --no-restore; if ($LASTEXITCODE -ne 0 ) {throw "Build for $_ FAILED"; }}
32
- working-directory : src
33
- - name : Test
34
- run : Get-ChildItem -Recurse -Include *.sln | ForEach-Object {dotnet test $_ --configuration Release --no-restore --verbosity normal}
35
- working-directory : src
48
+
49
+ - name : Build .Net
50
+ run : Get-ChildItem -Recurse -Include *.sln | ForEach-Object {dotnet build $_ --configuration Release --no-restore; if ($LASTEXITCODE -ne 0 ) {throw "Build for $_ FAILED"; }}
51
+
52
+ - name : Test .Net
53
+ run : Get-ChildItem -Recurse -Include *.sln | ForEach-Object {dotnet test $_ --configuration Release --no-restore --verbosity normal --collect:"XPlat Code Coverage"}
54
+
55
+ - name : Codecov
56
+
57
+
58
+ # By uploading it's shared with the other workflows that are reusing this
59
+ - name : Upload Shell Binaries
60
+ uses : actions/upload-artifact@v3
61
+ with :
62
+ name : shell-binaries
63
+ path : ${{ github.workspace }}/src/shell/dotnet/Shell/bin/Release/net6.0-windows/
0 commit comments