stages: - build - test - docs - update-assembly-info - build-release - semantic-release - release build: before_script: - PowerShell .\build.ps1 -Target Clean - PowerShell .\build.ps1 -Target Restore-NuGet-Packages stage: build script: - PowerShell .\build.ps1 -Target Build except: variables: - $GITLAB_USER_ID == $GIT_BOT_USER_ID test: stage: test script: - PowerShell .\build.ps1 -Target Resharper - PowerShell .\build.ps1 -Target Run-Unit-Tests variables: GIT_STRATEGY: none dependencies: - build artifacts: reports: junit: TestResult.xml except: variables: - $GITLAB_USER_ID == $GIT_BOT_USER_ID update-assembly-info: stage: update-assembly-info script: - PowerShell .\build.ps1 -Target Update-Assembly-Info variables: GIT_STRATEGY: none dependencies: - test only: - master except: variables: - $GITLAB_USER_ID == $GIT_BOT_USER_ID build-release: before_script: - PowerShell .\build.ps1 -Target Clean - PowerShell .\build.ps1 -Target Restore-NuGet-Packages stage: build-release script: - PowerShell .\build.ps1 -Target Build-Release variables: GIT_STRATEGY: none dependencies: - update-assembly-info only: - master except: variables: - $GITLAB_USER_ID == $GIT_BOT_USER_ID docs: stage: docs script: - .\publishDocs.ps1 $GITLAB_TOKEN variables: GIT_STRATEGY: none dependencies: - test only: - master except: variables: - $GITLAB_USER_ID == $GIT_BOT_USER_ID semantic-release: stage: semantic-release script: - PowerShell .\build.ps1 -Target Semantic-Release variables: GIT_STRATEGY: none dependencies: - test only: - master except: variables: - $GITLAB_USER_ID == $GIT_BOT_USER_ID release: stage: release script: - PowerShell .\build.ps1 -Target Build-Release variables: GIT_STRATEGY: none artifacts: paths: - dist only: - tags