This repository has been archived by the owner on Aug 28, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
/
appveyor.yml
84 lines (69 loc) · 2.58 KB
/
appveyor.yml
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# General Configuration
version: '{build}'
skip_branch_with_pr: true
# Environment Configuration
image: Visual Studio 2017
cache:
- '%LocalAppData%\NuGet\v3-cache'
init:
- ps: |
If($Env:APPVEYOR_REPO_TAG -eq "true")
{
Write-Host "We now have a tagged release. Proper."
Write-Host "Tag is $Env:APPVEYOR_REPO_TAG_NAME"
$env:APPVEYOR_BUILD_VERSION=$env:APPVEYOR_REPO_TAG_NAME
Update-AppveyorBuild -Version "$Env:APPVEYOR_REPO_TAG_NAME"
}
else
{
$releases = "https://api.github.com/repos/$env:APPVEYOR_REPO_NAME/releases"
$tag = (Invoke-WebRequest $releases | ConvertFrom-Json)[0].tag_name
$spl = $tag.Split("-")[0]
Update-AppveyorBuild -Version "$spl.$Env:APPVEYOR_BUILD_VERSION-wip"
}
Write-Host "Hello. Build version is: $Env:APPVEYOR_BUILD_VERSION"
install:
#init and update submodules
- git submodule update --recursive --init
# version
assembly_info:
patch: true
file: AssemblyInfo.*
assembly_version: '{version}'
assembly_file_version: '{version}'
assembly_informational_version: '{version}'
# Build Configuration
platform: Any CPU
configuration: Release
before_build:
- nuget restore
build:
publish_nuget: true
include_nuget_references: true
publish_nuget_symbols: true
use_snupkg_format: true
project: SpeckleStructural.sln
verbosity: minimal
after_build:
# remove garbage
# - ps: |
# Remove-Item "$Env:APPVEYOR_BUILD_FOLDER\SpeckleStructural\bin\Release\x86" -Recurse -ErrorAction Ignore
# Remove-Item "$Env:APPVEYOR_BUILD_FOLDER\SpeckleStructural\bin\Release\x64" -Recurse -ErrorAction Ignore
# Remove-Item "$Env:APPVEYOR_BUILD_FOLDER\SpeckleStructural\bin\Release\*.pdb" -Recurse -ErrorAction Ignore
# Remove-Item "$Env:APPVEYOR_BUILD_FOLDER\SpeckleStructural\bin\Release\SpeckleStructural.dll.config" -Recurse -ErrorAction Ignore
# zip everything into a zip file containing package folder structure
- 7z a SpeckleStructural-%APPVEYOR_BUILD_VERSION%.zip "%APPVEYOR_BUILD_FOLDER%\SpeckleStructural\bin\Release\*"
test: off
artifacts:
path: SpeckleStructural-%APPVEYOR_BUILD_VERSION%.zip
name: Release
deploy:
- release: SpeckleStructural-$(APPVEYOR_BUILD_VERSION)
tag: $(APPVEYOR_REPO_TAG_NAME)
provider: GitHub
auth_token:
secure: D5tPFvdQMg9sIe0sSvQjEWw4KAdOk1jyxNwiH5qP5DpDmUH6n6NgTdA+56vXS1Pe # your encrypted token from GitHub
artifact: SpeckleStructural-$(APPVEYOR_BUILD_VERSION).zip
force_update: true
on: # release from master branch only
appveyor_repo_tag: true # deploy on tag push only