-
Notifications
You must be signed in to change notification settings - Fork 2
66 lines (66 loc) · 2.54 KB
/
build.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
on: [push]
name: Build
jobs:
build:
runs-on: [ windows-2019 ]
env:
VSPATH: 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise'
EXTSITE: https://marketplace.visualstudio.com/items?itemName=visualstudioclient.MicrosoftVisualStudio2015InstallerProjects
EXTURL: https://marketplace.visualstudio.com/_apis/public/gallery/publishers/VisualStudioClient/vsextensions/MicrosoftVisualStudio2017InstallerProjects/1.0.0/vspackage
# The following envs are used in BrowserSelectorBHO.vcxproj
# to build a 64-bit DLL in PostBuildEvent.
VSAPPIDDIR: ''
VSAPPIDNAME: 'devenv.exe'
steps:
- uses: actions/checkout@v2
- name: Fetch Visual Studio addons
run: |
Invoke-WebRequest -OutFile Installer.html -UseBasicParsing -SessionVariable session $env:EXTSITE
Invoke-WebRequest -OutFile InstallerProjects.vsix -WebSession $session $env:EXTURL
- name: Build binaries
shell: cmd
run: |
call "%VSPATH%\VC\Auxiliary\Build\vcvars32.bat"
InstallerProjects.vsix /quiet InstallerProjects.vsix
msbuild BrowserSelector.sln /m /p:Configuration=Release /p:Platform=Win32
devenv BrowserSelectorSetup/BrowserSelectorSetup.vdproj /Build "Release|Win32"
- name: Run tests
shell: cmd
run: |
call "%VSPATH%\VC\Auxiliary\Build\vcvars32.bat"
vstest.console Release\UnitTest.dll
- name: Upload Installer
uses: actions/upload-artifact@v2
with:
name: Installer
path: BrowserSelectorSetup\Release\*.msi
webextdev:
runs-on: [ ubuntu-latest ]
steps:
- uses: actions/checkout@v2
- name: Build Testing Extensions
run: |
cp webextensions/edge/manifest.json.dev webextensions/edge/manifest.json
make -C webextensions/edge
cp webextensions/chrome/manifest.json.dev webextensions/chrome/manifest.json
make -C webextensions/chrome
make -C webextensions/firefox
- name: Upload Extensions
uses: actions/upload-artifact@v2
with:
name: WebExtensionDev
path: webextensions/*/*.zip
webext:
runs-on: [ ubuntu-latest ]
steps:
- uses: actions/checkout@v2
- name: Build Web Extensions
run: |
make -C webextensions/edge
make -C webextensions/chrome
make -C webextensions/firefox
- name: Upload Extensions
uses: actions/upload-artifact@v2
with:
name: WebExtension
path: webextensions/*/*.zip