1
0
Fork 0
mirror of https://github.com/Ellpeck/MLEM.git synced 2024-11-27 06:58:34 +01:00

Compare commits

..

3 commits

Author SHA1 Message Date
Ell
289e35fc91 use dotnet nuget in cake rather than nuget.exe
(cherry picked from commit 840c528f06)
2023-09-15 15:13:22 +02:00
Ell
a4aeb61acd added woodpecker
(cherry picked from commit 053ad5967b)
2023-09-15 15:13:20 +02:00
Ell
2de37bc159 updated docfx and improved docs navbar 2023-09-15 15:10:24 +02:00
6 changed files with 45 additions and 58 deletions

View file

@ -113,6 +113,6 @@ resharper_xmldoc_attribute_indent = align_by_first_attribute
resharper_xmldoc_attribute_style = on_single_line
resharper_xmldoc_pi_attribute_style = on_single_line
[*.md]
[{*.md,*.yaml,*.yml}]
trim_trailing_whitespace = false
indent_size = 2

16
.woodpecker/build.yml Normal file
View file

@ -0,0 +1,16 @@
steps:
build:
image: runmymind/docker-android-sdk:ubuntu-standalone
commands:
# install xvfb to allow for graphics-dependent tests
- apt-get update && apt-get install -y --no-install-recommends xauth xvfb openjdk-11-jdk
# install dotnet
- curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin --version 7.0.305
- export DOTNET_ROOT=$HOME/.dotnet
- export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools
# run cake
- dotnet tool restore
- xvfb-run -a dotnet cake --target Publish --branch $CI_COMMIT_BRANCH
secrets:
- nuget_key
- baget_key

16
.woodpecker/docs.yml Normal file
View file

@ -0,0 +1,16 @@
steps:
document:
image: mcr.microsoft.com/dotnet/sdk:7.0.305
commands:
- dotnet tool restore
- dotnet cake --target Document --branch $CI_COMMIT_BRANCH
deploy:
image: debian:latest
when:
- event: [push, manual]
branch: release
commands:
- rm -rfv /var/www/MLEM/*
- cp -rv Docs/_site/. /var/www/MLEM/
volumes:
- /var/www/MLEM:/var/www/MLEM

View file

@ -1,6 +1,8 @@
- name: Home
href: /
- name: Tutorials
href: articles/
- name: API Documentation
href: api/
- name: Changelog
href: ../CHANGELOG.md
href: ../CHANGELOG.md

48
Jenkinsfile vendored
View file

@ -1,48 +0,0 @@
pipeline {
agent none
stages {
stage('Cake') {
agent any
stages {
stage('Submodules') {
steps {
sh 'git submodule update --init --recursive --force'
}
}
stage('Build') {
steps {
sh 'dotnet tool restore'
// we use xvfb to allow for graphics-dependent tests
sh 'xvfb-run -a dotnet cake --target Publish --branch ' + env.BRANCH_NAME
}
}
stage('Document') {
steps {
sh 'dotnet cake --target Document --branch ' + env.BRANCH_NAME
stash includes: 'Docs/_site/**', name: 'site'
}
}
}
post {
always {
nunit testResultsPattern: '**/TestResults.xml'
cobertura coberturaReportFile: '**/coverage.cobertura.xml'
}
}
}
stage('Publish Docs') {
when { branch 'release' }
agent { label 'web' }
options { skipDefaultCheckout() }
steps {
unstash 'site'
sh 'rm -rf /var/www/MLEM/*'
sh 'cp Docs/_site/** /var/www/MLEM/ -r'
}
}
}
environment {
BAGET = credentials('3db850d0-e6b5-43d5-b607-d180f4eab676')
NUGET = credentials('e1bf7f6c-6047-4f7e-b639-15240a8f8351')
}
}

View file

@ -1,5 +1,5 @@
#addin nuget:?package=Cake.DocFx&version=1.0.0
#tool dotnet:?package=docfx&version=2.67.5
#tool dotnet:?package=docfx&version=2.70.3
// this is the upcoming version, for prereleases
var version = Argument("version", "6.2.0");
@ -9,11 +9,12 @@ var config = Argument("configuration", "Release");
var serve = HasArgument("serve");
Task("Prepare").Does(() => {
DotNetWorkloadInstall("android");
DotNetRestore("MLEM.sln");
DotNetRestore("MLEM.FNA.sln");
if (branch != "release") {
var buildNum = EnvironmentVariable("BUILD_NUMBER");
var buildNum = EnvironmentVariable("CI_PIPELINE_NUMBER");
if (buildNum != null)
version += "-ci." + buildNum;
}
@ -49,20 +50,20 @@ Task("Pack").IsDependentOn("Test").Does(() => {
});
Task("Push").WithCriteria(branch == "main" || branch == "release").IsDependentOn("Pack").Does(() => {
NuGetPushSettings settings;
DotNetNuGetPushSettings settings;
if (branch == "release") {
settings = new NuGetPushSettings {
settings = new DotNetNuGetPushSettings {
Source = "https://api.nuget.org/v3/index.json",
ApiKey = EnvironmentVariable("NUGET")
ApiKey = EnvironmentVariable("NUGET_KEY")
};
} else {
settings = new NuGetPushSettings {
settings = new DotNetNuGetPushSettings {
Source = "https://nuget.ellpeck.de/v3/index.json",
ApiKey = EnvironmentVariable("BAGET")
ApiKey = EnvironmentVariable("BAGET_KEY")
};
}
settings.SkipDuplicate = true;
NuGetPush(GetFiles("**/MLEM*.nupkg"), settings);
DotNetNuGetPush("**/MLEM*.nupkg", settings);
});
Task("Document").Does(() => {