Speed up named variables evaluation
[sdk/tools/netcoredbg.git] / appveyor.yml
1 image:
2   - Visual Studio 2017
3
4 environment:
5   CLI_VERSION: 2.1
6   RELEASE_BRANCH: master
7   RELEASE_REPO: Samsung/netcoredbg
8   GITHUB_API_KEY:
9     secure: MK8IauVT12d9kr6r2oxHhSyUxV7gGL4xk8Dkf0/5LxdxbyIlAEwYlAgJuN7G6e5Z
10
11 branches:
12   except:
13     - latest
14
15 cache:
16   - '%USERPROFILE%\.nuget\packages'
17   - coreclr\bin\Product\Windows_NT.x64.Release\inc
18   - coreclr\bin\Product\Windows_NT.x64.Release\lib
19   - coreclr\src\inc
20   - coreclr\src\debug\inc
21   - coreclr\src\debug\shim
22   - coreclr\src\dlls\dbgshim
23   - coreclr\src\coreclr\hosts\inc
24   - coreclr\src\ToolBox\SOS\Strike
25
26 install:
27   ps: |
28         $env:CORECLR_PRODUCT = "Windows_NT.x64.Release"
29         # Make CoreCLR sources and binaries available for build script
30         if (-not (Test-Path "coreclr\src\inc\.cache_valid")) {
31           # Invalidate cache and build CoreCLR, put dbgshim library into cached directory
32           rm -r -fo coreclr
33           git clone --depth 1 https://github.com/dotnet/coreclr -b "release/$env:CLI_VERSION"
34           cd coreclr
35           .\build.cmd skiptests release ; if($?) { cp bin\Product\$env:CORECLR_PRODUCT\dbgshim.dll bin\Product\$env:CORECLR_PRODUCT\lib ; echo $null >> src\inc\.cache_valid }
36           cd ..
37         } else {
38           # Restore dbgshim library location from cached directory
39           cp coreclr\bin\Product\$env:CORECLR_PRODUCT\lib\dbgshim.dll coreclr\bin\Product\$env:CORECLR_PRODUCT
40         }
41
42 build_script:
43   ps: |
44         mkdir build
45         cd build
46         cmake .. -G "Visual Studio 15 2017 Win64" -DCLR_DIR="$pwd\..\coreclr" -DCMAKE_INSTALL_PREFIX="$pwd\..\netcoredbg"
47         cmake --build . --config Release --target install
48         cd ..
49         dotnet build tests
50
51 after_build:
52   ps: |
53         7z a netcoredbg-win64-$env:APPVEYOR_REPO_BRANCH.zip netcoredbg
54
55 test_script:
56   ps: |
57         $env:PIPE = "$pwd\netcoredbg\netcoredbg.exe"
58         dotnet test tests\runner
59
60 artifacts:
61   - path: '*.zip'
62     name: netcoredbg
63
64 deploy:
65   tag: latest
66   description: '[Autogenerated] This is the latest version pushed to the $(APPVEYOR_REPO_BRANCH) branch.'
67   provider: GitHub
68   auth_token: $(GITHUB_API_KEY)
69   artifact: netcoredbg
70   draft: false
71   prerelease: false
72   repository: $(RELEASE_REPO)
73   force_update: true
74   on:
75     branch: $(RELEASE_BRANCH)