maksit-lto-backup/utils/engines/release/scriptSettings.json
2026-09-30 20:43:56 +02:00

162 lines
5.2 KiB
JSON

{
"$schema": "https://json-schema.org/draft-07/schema",
"title": "LTO Backup Release Script Settings",
"description": "RepoUtils release pipeline for maksit-lto-backup application binaries.",
"repoUtilsSecretsShared": "RepoUtilsSecretsShared",
"repoUtilsSecrets": "RepoUtilsSecrets",
"plugins": [
{
"name": "DotNetReleaseVersion",
"stageLabel": "build",
"enabled": true,
"projectFiles": [
"..\\..\\..\\src\\MaksIT.LTO.Backup\\MaksIT.LTO.Backup.csproj",
"..\\..\\..\\src\\MaksIT.LTO.Backup.UI\\MaksIT.LTO.Backup.UI.csproj",
"..\\..\\..\\src\\MaksIT.LTO.Backup.Service\\MaksIT.LTO.Backup.Service.csproj"
]
},
{
"name": "DotNetTest",
"stageLabel": "test",
"enabled": true,
"project": "..\\..\\..\\src\\MaksIT.LTO.Tests",
"resultsDir": "..\\..\\..\\test-results"
},
{
"name": "QualityGate",
"stageLabel": "qualityGate",
"enabled": true,
"coverageThreshold": 0,
"failOnVulnerabilities": true,
"projectFiles": [
"..\\..\\..\\src\\MaksIT.LTO.Backup\\MaksIT.LTO.Backup.csproj",
"..\\..\\..\\src\\MaksIT.LTO.Backup.UI\\MaksIT.LTO.Backup.UI.csproj",
"..\\..\\..\\src\\MaksIT.LTO.Backup.Service\\MaksIT.LTO.Backup.Service.csproj"
]
},
{
"name": "DotNetPublish",
"stageLabel": "build",
"enabled": true,
"projectFiles": [
"..\\..\\..\\src\\MaksIT.LTO.Backup\\MaksIT.LTO.Backup.csproj",
"..\\..\\..\\src\\MaksIT.LTO.Backup.UI\\MaksIT.LTO.Backup.UI.csproj",
"..\\..\\..\\src\\MaksIT.LTO.Backup.Service\\MaksIT.LTO.Backup.Service.csproj"
],
"artifactsDir": "..\\..\\..\\releases",
"runtimeIdentifiers": [
"win-x64",
"linux-x64"
],
"selfContained": true,
"publishSingleFile": false
},
{
"name": "DotNetCreateArchive",
"stageLabel": "build",
"enabled": true,
"zipNamePattern": "maksit-lto-backup-{version}.zip",
"portableRuntimeIdentifier": "win-x64"
},
{
"name": "WindowsInstaller",
"stageLabel": "build",
"enabled": true,
"appName": "MaksIT LTO Backup",
"manufacturer": "MaksIT",
"installFolderName": "LTO Backup",
"upgradeCode": "b3f7c2a1-8e4d-4f90-9c1b-6a2e5d8f3b10",
"executableName": "MaksIT.LTO.Backup.UI.exe",
"runtimeIdentifier": "win-x64",
"publishDir": "..\\..\\..\\releases\\MaksIT.LTO.Backup.UI\\win-x64",
"installScope": "perMachine",
"iconPath": "..\\..\\..\\src\\MaksIT.LTO.Backup.UI\\Assets\\icon.ico",
"exeNamePattern": "maksit-lto-backup-{version}.exe"
},
{
"name": "FlatpakPack",
"stageLabel": "build",
"enabled": true,
"appId": "com.maks_it.ltobackup",
"appName": "MaksIT LTO Backup",
"command": "maksit-lto-backup",
"executableName": "MaksIT.LTO.Backup.UI",
"runtimeIdentifier": "linux-x64",
"publishDir": "..\\..\\..\\releases\\MaksIT.LTO.Backup.UI\\linux-x64",
"summary": "LTO tape backup and restore",
"description": "Desktop UI for LTO tape backup and restore. Inventory, backup, and restore jobs for a tape drive or library.",
"projectLicense": "GPL-2.0",
"categories": "Utility;Archiving;",
"iconPath": "..\\..\\..\\src\\MaksIT.LTO.Backup.UI\\Assets\\icon.png",
"metainfoPath": "..\\..\\..\\data\\com.maks_it.ltobackup.metainfo.xml",
"desktopPath": "..\\..\\..\\data\\com.maks_it.ltobackup.desktop",
"finishArgs": [
"--share=ipc",
"--share=network",
"--socket=wayland",
"--socket=x11",
"--device=all",
"--filesystem=home"
],
"bundleNamePattern": "maksit-lto-backup-{version}.flatpak",
"buildBundle": true,
"attachSourceZip": false,
"wslDistro": "Debian",
"whenBuilderMissing": "skip"
},
{
"name": "ReleasePublishGuard",
"stageLabel": "release",
"enabled": true,
"branches": [
"main"
],
"requireExactTagOnHead": true,
"tagVersionMustMatchDotNetRelease": true,
"whenRequirementsNotMet": "skip",
"requireCleanWorkingTree": false,
"ensureTagOnRemote": true,
"remoteName": "origin"
},
{
"name": "GitHub",
"stageLabel": "release",
"enabled": true,
"githubSecret": "GitClone",
"repository": "https://github.com/MAKS-IT-COM/maksit-lto-backup",
"releaseNotesFile": "..\\..\\..\\CHANGELOG.md",
"releaseTitlePattern": "Release {version}",
"requireReleaseAssets": true
},
{
"name": "DotNetNuGet",
"stageLabel": "release",
"enabled": false,
"nugetSecret": "NuGet",
"source": "https://api.nuget.org/v3/index.json"
},
{
"name": "NpmPublish",
"stageLabel": "release",
"enabled": false,
"npmSecret": "Npm",
"registry": "https://registry.npmjs.org",
"access": "public",
"workspaceRoot": "..\\..\\.."
},
{
"name": "CleanupArtifacts",
"stageLabel": "release",
"enabled": true,
"includePatterns": [
"*"
],
"excludePatterns": [
"*.zip",
"*.exe",
"*.flatpak"
]
}
]
}