CI: Adds build job for normal merge commits (#23)
* ci: Added build on commit job * ci: wrong nesting * ci: Switch to windows * update windows orb * ci: Pull using bot context * ci: add fingerprint * ci: pebkac * ci: removed unnecessary steps * ci: Assembly info props * ci: Use powershell env vars * try $TAG * do it in same step * ci: Updated publish_nuget job
This commit is contained in:
Родитель
83c72a7131
Коммит
adc8558edf
|
@ -1,41 +1,52 @@
|
|||
version: 2.1
|
||||
|
||||
orbs:
|
||||
win: circleci/windows@2.2.0
|
||||
win: circleci/windows@5.0.0
|
||||
|
||||
jobs:
|
||||
build:
|
||||
executor: win/default
|
||||
steps:
|
||||
- checkout
|
||||
- run:
|
||||
name: Restore packages
|
||||
command: dotnet restore GrasshopperAsyncComponent.sln
|
||||
- run:
|
||||
name: Build solution
|
||||
command: |
|
||||
$TAG = if([string]::IsNullOrEmpty($env:CIRCLE_TAG)) { "0.999.$($env:WORKFLOW_NUM)-ci" } else { $env:CIRCLE_TAG }
|
||||
dotnet build GrasshopperAsyncComponent.sln --no-restore -c Release /p:Version=$TAG /p:AssemblyVersionNumber=$TAG /p:AssemblyInformationalVersion=$TAG
|
||||
environment:
|
||||
WORKFLOW_NUM: << pipeline.number >>
|
||||
publish_nuget:
|
||||
executor: win/default
|
||||
steps:
|
||||
- checkout
|
||||
- run:
|
||||
name: Set version env var
|
||||
name: Restore packages
|
||||
command: dotnet restore GrasshopperAsyncComponent.sln
|
||||
- run:
|
||||
name: Build solution
|
||||
command: |
|
||||
$semver = if([string]::IsNullOrEmpty($env:CIRCLE_TAG)) { "0.0.999" } else { $env:CIRCLE_TAG }
|
||||
$ver = if($semver.Contains('-')) {$semver.Split("-")[0] } else { $semver }
|
||||
$version = "$($ver).$($env:WORKFLOW_NUM)"
|
||||
$TAG = if([string]::IsNullOrEmpty($env:CIRCLE_TAG)) { "0.999.$($env:WORKFLOW_NUM)-ci" } else { $env:CIRCLE_TAG }
|
||||
dotnet build GrasshopperAsyncComponent.sln --no-restore -c Release /p:Version=$TAG /p:AssemblyVersionNumber=$TAG /p:AssemblyInformationalVersion=$TAG
|
||||
environment:
|
||||
WORKFLOW_NUM: << pipeline.number >>
|
||||
- run:
|
||||
name: Restore packages
|
||||
command: nuget restore GrasshopperAsyncComponent.sln
|
||||
- run:
|
||||
name: Build solution
|
||||
command: msbuild GrasshopperAsyncComponent.sln /p:Configuration=Release /p:AssemblyVersionNumber=$version /p:AssemblyInformationalVersion=$semver /p:Version=$semver
|
||||
- run:
|
||||
name: Pack NuGet
|
||||
command: cd GrasshopperAsyncComponent; nuget pack GrasshopperAsyncComponent.csproj -Prop Configuration=Release -Symbols -SymbolPackageFormat snupkg
|
||||
- run:
|
||||
name: Push NuGet
|
||||
command: cd GrasshopperAsyncComponent; nuget push *.nupkg -Source https://api.nuget.org/v3/index.json -ApiKey $env:NUGET_APIKEY -SkipDuplicate
|
||||
command: nuget push **/*.nupkg -Source https://api.nuget.org/v3/index.json -ApiKey $env:NUGET_APIKEY -SkipDuplicate
|
||||
|
||||
workflows:
|
||||
build:
|
||||
jobs:
|
||||
- build:
|
||||
context: github-dev-bot
|
||||
publish:
|
||||
jobs:
|
||||
- publish_nuget:
|
||||
filters:
|
||||
tags:
|
||||
only: /^v.*/
|
||||
only: /.*/
|
||||
branches:
|
||||
ignore: /.*/
|
||||
context: nuget
|
||||
|
|
|
@ -21,6 +21,10 @@
|
|||
<PackageLicenseExpression>Apache-2.0</PackageLicenseExpression>
|
||||
<PackageProjectUrl>https://github.com/specklesystems/GrasshopperAsyncComponent</PackageProjectUrl>
|
||||
<PackageTags>grasshopper rhino mcneel gh_component</PackageTags>
|
||||
|
||||
<IncludeSymbols>true</IncludeSymbols>
|
||||
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
|
||||
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
Загрузка…
Ссылка в новой задаче