From 3672e94be5d0449cf70008233f2ba8335c7b905a Mon Sep 17 00:00:00 2001 From: Adam Becker Date: Sun, 9 Sep 2018 15:37:49 -0600 Subject: [PATCH] gitlab-ci integration (#140) --- .gitlab-ci.yml | 58 ++++++++++++++++++++++++++++++++++++++ gitlab-ci/SDL2-CS.nuspec | 23 +++++++++++++++ gitlab-ci/build-net461.sh | 4 +++ gitlab-ci/build-netcore.sh | 4 +++ gitlab-ci/deploy.sh | 10 +++++++ gitlab-ci/package.sh | 12 ++++++++ 6 files changed, 111 insertions(+) create mode 100644 .gitlab-ci.yml create mode 100644 gitlab-ci/SDL2-CS.nuspec create mode 100755 gitlab-ci/build-net461.sh create mode 100755 gitlab-ci/build-netcore.sh create mode 100755 gitlab-ci/deploy.sh create mode 100755 gitlab-ci/package.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..83255e8 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,58 @@ +stages: + - build + - package + - deploy + +build_net461: + image: mono + stage: build + only: + - schedules + script: + - ./gitlab-ci/build-net461.sh + artifacts: + paths: + - bin/ + tags: + - docker + +build_netcore: + image: microsoft/dotnet:2.1-sdk + stage: build + only: + - schedules + script: + - ./gitlab-ci/build-netcore.sh + artifacts: + paths: + - bin/ + tags: + - docker + +package_nuget: + image: mono + stage: package + only: + - schedules + script: + - ./gitlab-ci/package.sh + dependencies: + - build_net461 + - build_netcore + artifacts: + paths: + - '*.nupkg' + +deploy_nuget: + image: mono + stage: deploy + only: + - schedules + script: + - ./gitlab-ci/deploy.sh + dependencies: + - package_nuget + environment: + name: nuget + url: http://nuget.org/ + diff --git a/gitlab-ci/SDL2-CS.nuspec b/gitlab-ci/SDL2-CS.nuspec new file mode 100644 index 0000000..ab0f1a1 --- /dev/null +++ b/gitlab-ci/SDL2-CS.nuspec @@ -0,0 +1,23 @@ + + + + SDL2-CS-Rolling + %version% + flibitijibibo + beannaich + https://github.com/flibitijibibo/SDL2-CS/blob/master/LICENSE + https://github.com/flibitijibibo/SDL2-CS + false + SDL2# - C# Wrapper for SDL2 + Copyright 2013-2018 + SDL2# SDL2 SDL + + + + + + + + + + diff --git a/gitlab-ci/build-net461.sh b/gitlab-ci/build-net461.sh new file mode 100755 index 0000000..74ee1b4 --- /dev/null +++ b/gitlab-ci/build-net461.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +msbuild /p:Configuration=Debug SDL2-CS.csproj + diff --git a/gitlab-ci/build-netcore.sh b/gitlab-ci/build-netcore.sh new file mode 100755 index 0000000..54ffa91 --- /dev/null +++ b/gitlab-ci/build-netcore.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +dotnet build SDL2-CS.Core.csproj + diff --git a/gitlab-ci/deploy.sh b/gitlab-ci/deploy.sh new file mode 100755 index 0000000..0d4aca9 --- /dev/null +++ b/gitlab-ci/deploy.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +set -e + +nuget setApiKey $NUGET_API_KEY -verbosity quiet + +for package in `find *.nupkg`; do + nuget push $package -source https://nuget.org/ +done + diff --git a/gitlab-ci/package.sh b/gitlab-ci/package.sh new file mode 100755 index 0000000..17a9adf --- /dev/null +++ b/gitlab-ci/package.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +set -e + +version=`date +"%Y.%m.%d"` + +nuspec="gitlab-ci/SDL2-CS.nuspec" + +sed -i -e "s/%version%/$version/g" $nuspec + +nuget pack $nuspec +