ln.build/build.ln

52 lines
1.9 KiB
Plaintext

{
"env": {
"NUGET_SOURCE": "https://nexus.niclas-thobaben.de/repository/l--n.de/",
"CONFIGURATION": "Release"
},
"stages": [
{
"name": "setup",
"env": {
"SOME_ENV_VAR": "Some text",
},
"commands": [
"SH echo Setting up build environment",
"SH set",
"SH rm -Rf .build"
]
},
{
"name": "prepare",
"commands": [
"SH dotnet restore",
"SH dotnet clean"
]
},
{
"name": "build",
"commands": [
"SH dotnet build -c $CONFIGURATION"
]
},
{
"name": "pack_and_publish",
"commands": [
"SH dotnet pack ln.build -o .build -c $CONFIGURATION",
"SH dotnet pack ln.build.server -o .build -c $CONFIGURATION",
"SH dotnet publish ln.build.server -p:PublishTrimmed=true -p:PublishSingleFile=true -p:PublishReadyToRun=true --self-contained -r linux-x64 -c $CONFIGURATION -o .build/linux-x64",
"SH dotnet publish ln.build.server -p:PublishTrimmed=true -p:PublishSingleFile=true -p:PublishReadyToRun=false --self-contained -r win-x64 -c $CONFIGURATION -o .build/windows-x64"
]
},
{
"name": "push",
"commands": [
"SH for NUPKG in .build/ln.build.*.nupkg; do dotnet nuget push $NUPKG -s $NUGET_SOURCE -k $NUGET_APIKEY; done",
"RELEASE .build/linux-x64/ln.build.server=ln.build.server-linux-amd64",
"RELEASE .build/windows-x64/ln.build.server.exe=ln.build.server-windows-x64.exe"
],
"secrets": {
"NUGET_APIKEY": "https://nexus.niclas-thobaben.de"
}
}
]
}