56 lines
1.9 KiB
YAML
56 lines
1.9 KiB
YAML
# This is a simple gitlab continuous integration template (compatible with the shared runner provided on gitlab.com)
|
|
# using the official mono docker image to build a visual studio project.
|
|
#
|
|
# MyProject.sln
|
|
# MyProject\
|
|
# MyProject\
|
|
# MyProject.csproj (console application)
|
|
# MyProject.Test\
|
|
# MyProject.Test.csproj (test library using nuget packages "NUnit" and "NUnit.ConsoleRunner")
|
|
#
|
|
# Please find the full example project here:
|
|
# https://gitlab.com/tobiaskoch/gitlab-ci-example-mono
|
|
#
|
|
# You can copy and paste this template into a new `.gitlab-ci.yml` file.
|
|
# You should not add this template to an existing `.gitlab-ci.yml` file by using the `include:` keyword.
|
|
#
|
|
# To contribute improvements to CI/CD templates, please follow the Development guide at:
|
|
# https://docs.gitlab.com/ee/development/cicd/templates.html
|
|
# This specific template is located at:
|
|
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Mono.gitlab-ci.yml
|
|
|
|
# see https://hub.docker.com/_/mono/
|
|
image: mono:latest
|
|
|
|
stages:
|
|
- build
|
|
- test
|
|
- deploy
|
|
|
|
before_script:
|
|
- nuget restore -NonInteractive
|
|
|
|
release:
|
|
stage: deploy
|
|
rules:
|
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
artifacts:
|
|
paths:
|
|
- build/release/MyProject.exe
|
|
script:
|
|
# The output path is relative to the position of the csproj-file
|
|
- msbuild /p:Configuration="Release" /p:Platform="Any CPU"
|
|
/p:OutputPath="./../../build/release/" "MyProject.sln"
|
|
|
|
debug:
|
|
stage: test
|
|
script:
|
|
# The output path is relative to the position of the csproj-file
|
|
- msbuild /p:Configuration="Debug" /p:Platform="Any CPU"
|
|
/p:OutputPath="./../../build/debug/" "MyProject.sln"
|
|
- mono packages/NUnit.ConsoleRunner.3.6.0/tools/nunit3-console.exe build/debug/MyProject.Test.dll
|
|
|
|
deploy:
|
|
stage: deploy
|
|
script: echo "Define your deployment script!"
|
|
environment: production
|