mirror of
https://github.com/bunny-lab-io/Borealis.git
synced 2025-12-16 02:45:48 -07:00
41 lines
9.1 KiB
JSON
41 lines
9.1 KiB
JSON
{
|
|
"version": 1,
|
|
"name": "WinGet [WIN] (Unfinished)",
|
|
"description": "Installs or enables Microsoft WinGet, the Windows package manager, allowing automated installation and updates of software packages by their WinGet IDs. \n\nSupports an optional randomized start delay to stagger deployments and reduce network congestion across multiple systems.",
|
|
"category": "application",
|
|
"type": "powershell",
|
|
"script": "Iy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGhlbHBlcnMKZnVuY3Rpb24gVGVzdC1XaW5HZXRQcmVzZW50IHsKICAgIHRyeSB7CiAgICAgICAgJGNtZCA9IEdldC1Db21tYW5kIHdpbmdldCAtRXJyb3JBY3Rpb24gU3RvcAogICAgICAgIHJldHVybiAkdHJ1ZQogICAgfSBjYXRjaCB7CiAgICAgICAgcmV0dXJuICRmYWxzZQogICAgfQp9CgpmdW5jdGlvbiBJbnN0YWxsLVdpbkdldElmTWlzc2luZyB7CiAgICBpZiAoVGVzdC1XaW5HZXRQcmVzZW50KSB7CiAgICAgICAgV3JpdGUtSG9zdCAiW3dpbmdldF0gRm91bmQuIgogICAgICAgIHJldHVybgogICAgfQoKICAgIFdyaXRlLUhvc3QgIlt3aW5nZXRdIE5vdCBmb3VuZC4gQXR0ZW1wdGluZyBpbnN0YWxsIHZpYSBBcHAgSW5zdGFsbGVyIChNU0lYIGJ1bmRsZSkuLi4iCiAgICAkdGVtcFJvb3QgPSBKb2luLVBhdGggJGVudjpURU1QICJ3aW5nZXQtYm9vdHN0cmFwIgogICAgTmV3LUl0ZW0gLVBhdGggJHRlbXBSb290IC1JdGVtVHlwZSBEaXJlY3RvcnkgLUZvcmNlIHwgT3V0LU51bGwKICAgICRidW5kbGVQYXRoID0gSm9pbi1QYXRoICR0ZW1wUm9vdCAiQXBwSW5zdGFsbGVyLm1zaXhidW5kbGUiCgogICAgdHJ5IHsKICAgICAgICAjIFRoZSBha2EubXMgbGluayByZWRpcmVjdHMgdG8gdGhlIGN1cnJlbnQgQXBwIEluc3RhbGxlciBidW5kbGUKICAgICAgICAkdXJpID0gJ2h0dHBzOi8vYWthLm1zL2dldHdpbmdldCcKICAgICAgICBXcml0ZS1Ib3N0ICJbd2luZ2V0XSBEb3dubG9hZGluZyBBcHAgSW5zdGFsbGVyIGJ1bmRsZS4uLiIKICAgICAgICBbTmV0LlNlcnZpY2VQb2ludE1hbmFnZXJdOjpTZWN1cml0eVByb3RvY29sID0gW05ldC5TZWN1cml0eVByb3RvY29sVHlwZV06OlRsczEyIC1ib3IgYAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbTmV0LlNlY3VyaXR5UHJvdG9jb2xUeXBlXTo6VGxzMTEgLWJvciBgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtOZXQuU2VjdXJpdHlQcm90b2NvbFR5cGVdOjpUbHMKICAgICAgICBJbnZva2UtV2ViUmVxdWVzdCAtVXNlQmFzaWNQYXJzaW5nIC1VcmkgJHVyaSAtT3V0RmlsZSAkYnVuZGxlUGF0aCAtRXJyb3JBY3Rpb24gU3RvcAogICAgfSBjYXRjaCB7CiAgICAgICAgV3JpdGUtSG9zdCAiW3dpbmdldF0gRG93bmxvYWQgZmFpbGVkOiAkKCRfLkV4Y2VwdGlvbi5NZXNzYWdlKSIKICAgICAgICBXcml0ZS1Ib3N0ICJbd2luZ2V0XSBJZiB0aGlzIGRldmljZSBjYW5ub3QgYWNjZXNzIHRoZSBNaWNyb3NvZnQgU3RvcmUvQ0ROLCBpbnN0YWxsIEFwcCBJbnN0YWxsZXIgbWFudWFsbHkuIgogICAgICAgIGV4aXQgMQogICAgfQoKICAgIHRyeSB7CiAgICAgICAgIyBBZGQtQXBweFBhY2thZ2Ugd29ya3Mgb24gV2luZG93cyAxMC8xMSB3aXRoIERlc2t0b3AgQXBwIEluc3RhbGxlciBzdXBwb3J0LgogICAgICAgICMgU29tZSBTZXJ2ZXIvTFRTQyBidWlsZHMgbWF5IGxhY2sgdGhlIHJlcXVpcmVkIEFwcFggZnJhbWV3b3JrIHN1cHBvcnQuCiAgICAgICAgV3JpdGUtSG9zdCAiW3dpbmdldF0gSW5zdGFsbGluZyBBcHAgSW5zdGFsbGVyICh0aGlzIG1heSB0YWtlIGEgbWludXRlKS4uLiIKICAgICAgICBBZGQtQXBweFBhY2thZ2UgLVBhdGggJGJ1bmRsZVBhdGggLUZvcmNlQXBwbGljYXRpb25TaHV0ZG93biAtRm9yY2VVcGRhdGVGcm9tQW55VmVyc2lvbiAtRXJyb3JBY3Rpb24gU3RvcAogICAgfSBjYXRjaCB7CiAgICAgICAgV3JpdGUtSG9zdCAiW3dpbmdldF0gQXBwIEluc3RhbGxlciBhZGQgZmFpbGVkOiAkKCRfLkV4Y2VwdGlvbi5NZXNzYWdlKSIKICAgICAgICBXcml0ZS1Ib3N0ICJbd2luZ2V0XSBXaW5HZXQgbWF5IG5vdCBiZSBzdXBwb3J0ZWQgb24gdGhpcyBTS1UvYnVpbGQsIG9yIGRlcGVuZGVuY2llcyBhcmUgYmxvY2tlZC4iCiAgICAgICAgZXhpdCAxCiAgICB9CgogICAgU3RhcnQtU2xlZXAgLVNlY29uZHMgNAogICAgaWYgKC1ub3QgKFRlc3QtV2luR2V0UHJlc2VudCkpIHsKICAgICAgICBXcml0ZS1Ib3N0ICJbd2luZ2V0XSBJbnN0YWxsIGNvbXBsZXRlZCBidXQgJ3dpbmdldCcgc3RpbGwgbm90IGF2YWlsYWJsZS4iCiAgICAgICAgV3JpdGUtSG9zdCAiW3dpbmdldF0gQSByZWJvb3Qgb3IgV2luZG93cyBTdG9yZSBzaWduLWluIG1heSBiZSByZXF1aXJlZCBvbiBzb21lIGJ1aWxkcy4iCiAgICAgICAgZXhpdCAxCiAgICB9CgogICAgV3JpdGUtSG9zdCAiW3dpbmdldF0gSW5zdGFsbGVkLiIKfQoKZnVuY3Rpb24gSW52b2tlLVdpbkdldCB7CiAgICBwYXJhbSgKICAgICAgICBbUGFyYW1ldGVyKE1hbmRhdG9yeT0kdHJ1ZSldW3N0cmluZ10kQXJndW1lbnRzCiAgICApCiAgICAjIENvbW1vbiBub24taW50ZXJhY3RpdmUgZmxhZ3M6CiAgICAjICAgLS1hY2NlcHQtc291cmNlLWFncmVlbWVudHMgLS1hY2NlcHQtcGFja2FnZS1hZ3JlZW1lbnRzIC0tZGlzYWJsZS1pbnRlcmFjdGl2aXR5CiAgICAjIFdlIGRvIC1XYWl0IHRvIGtlZXAgbG9ncyBvcmRlcmVkIGFuZCBkZXRlcm1pbmlzdGljCiAgICAkZnVsbCA9ICIkQXJndW1lbnRzIC0tYWNjZXB0LXNvdXJjZS1hZ3JlZW1lbnRzIC0tYWNjZXB0LXBhY2thZ2UtYWdyZWVtZW50cyAtLWRpc2FibGUtaW50ZXJhY3Rpdml0eSIKICAgIFdyaXRlLUhvc3QgIlt3aW5nZXRdID4gd2luZ2V0ICRmdWxsIgogICAgJHAgPSBTdGFydC1Qcm9jZXNzIC1GaWxlUGF0aCAid2luZ2V0IiAtQXJndW1lbnRMaXN0ICRmdWxsIC1Ob05ld1dpbmRvdyAtV2FpdCAtUGFzc1RocnUKICAgIGlmICgkcC5FeGl0Q29kZSAtbmUgMCkgewogICAgICAgIFdyaXRlLUhvc3QgIlt3aW5nZXRdIEV4aXRDb2RlPSQoJHAuRXhpdENvZGUpIGZvcjogd2luZ2V0ICRBcmd1bWVudHMiCiAgICB9CiAgICByZXR1cm4gJHAuRXhpdENvZGUKfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIG9wdGlvbmFsIHJhbmRvbWl6ZWQgc3RhZ2dlcgoKJHN0YWdnZXJSYXcgPSAkZW52OnJhbmRvbWl6ZWRVcGRhdGVTdGFnZ2FyaW5nVGhyZXNob2xkCmlmICgkbnVsbCAtbmUgJHN0YWdnZXJSYXcgLWFuZCAiJHN0YWdnZXJSYXciLlRyaW0oKS5MZW5ndGggLWd0IDApIHsKICAgIFtpbnRdJHN0YWdnZXJNYXggPSAwCiAgICBbdm9pZF1baW50XTo6VHJ5UGFyc2UoIiRzdGFnZ2VyUmF3IiwgW3JlZl0kc3RhZ2dlck1heCkKICAgIGlmICgkc3RhZ2dlck1heCAtZ3QgMCkgewogICAgICAgIGlmICgkc3RhZ2dlck1heCAtZXEgMSkgeyAkc3RhZ2dlck1heCA9IDIgfQogICAgICAgICR3YWl0TWludXRlcyA9IEdldC1SYW5kb20gLU1pbmltdW0gMSAtTWF4aW11bSAkc3RhZ2dlck1heAogICAgICAgIFdyaXRlLUhvc3QgKCJbc3RhZ2dlcl0gV2FpdGluZyB7MH0gbWludXRlKHMpIChtYXg9ezF9KS4uLiIgLWYgJHdhaXRNaW51dGVzLCAkc3RhZ2dlck1heCkKICAgICAgICBTdGFydC1TbGVlcCAtU2Vjb25kcyAoJHdhaXRNaW51dGVzICogNjApCiAgICB9Cn0KCldyaXRlLUhvc3QgIj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0iCldyaXRlLUhvc3QgIldpbkdldCBib290c3RyYXAiCgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gZW5zdXJlIFdpbkdldCBpcyBwcmVzZW50CgpJbnN0YWxsLVdpbkdldElmTWlzc2luZwoKIyBTaG93IHZlcnNpb24vc291cmNlIGhlYWx0aCAoYmVzdC1lZmZvcnQ7IGlnbm9yZSBmYWlsdXJlcykKdHJ5IHsKICAgICR2ZXIgPSAoJiB3aW5nZXQgLS12ZXJzaW9uKSAyPiRudWxsCiAgICBpZiAoJHZlcikgeyBXcml0ZS1Ib3N0ICJbd2luZ2V0XSBWZXJzaW9uOiAkdmVyIiB9CiAgICBJbnZva2UtV2luR2V0ICJzb3VyY2UgdXBkYXRlIiB8IE91dC1OdWxsCn0gY2F0Y2ggeyB9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gdXBkYXRlIHBoYXNlCgokdXBkYXRlUmF3ID0gJGVudjpwYWNrYWdlc1RvVXBkYXRlCmlmICgkbnVsbCAtbmUgJHVwZGF0ZVJhdyAtYW5kICIkdXBkYXRlUmF3Ii5UcmltKCkuTGVuZ3RoIC1ndCAwKSB7CiAgICBpZiAoJHVwZGF0ZVJhdy5UcmltKCkuVG9VcHBlcigpIC1lcSAnQUxMJykgewogICAgICAgIFdyaXRlLUhvc3QgIlt1cGRhdGVdIFVwZ3JhZGluZyBBTEwgV2luR2V0LW1hbmFnZWQgcGFja2FnZXMuLi4iCiAgICAgICAgIyAtLWFsbCB1cGdyYWRlcyBldmVyeXRoaW5nIFdpbkdldCBrbm93cyBhYm91dAogICAgICAgIEludm9rZS1XaW5HZXQgInVwZ3JhZGUgLS1hbGwiCiAgICB9IGVsc2UgewogICAgICAgICRwYWNrYWdlcyA9ICR1cGRhdGVSYXcgLXNwbGl0ICdccysnIHwgV2hlcmUtT2JqZWN0IHsgJF8uVHJpbSgpLkxlbmd0aCAtZ3QgMCB9CiAgICAgICAgZm9yZWFjaCAoJHBrZyBpbiAkcGFja2FnZXMpIHsKICAgICAgICAgICAgIyBQcmVmZXIgbWF0Y2hpbmcgYnkgSWQgZm9yIGRldGVybWluaXNtOyBjYWxsZXIgc2hvdWxkIHBhc3MgY2Fub25pY2FsIElEcyAoZS5nLiwgTWljcm9zb2Z0LlBvd2VyU2hlbGwpCiAgICAgICAgICAgIFdyaXRlLUhvc3QgIlt1cGRhdGVdIFVwZ3JhZGluZzogJHBrZyIKICAgICAgICAgICAgIyBJZiB0aGUgSUQgaXMgbm90IGV4YWN0LCBXaW5HZXQgbWF5IHByb21wdCB0byByZXNvbHZlOyAtLWRpc2FibGUtaW50ZXJhY3Rpdml0eSBwcmV2ZW50cyBwcm9tcHRzLgogICAgICAgICAgICAjIElmIHJlc29sdXRpb24gaXMgcmVxdWlyZWQsIGNvbnNpZGVyIHVzaW5nICctLWlkJyB3aXRoIHRoZSBjYW5vbmljYWwgcGFja2FnZSBJRC4KICAgICAgICAgICAgSW52b2tlLVdpbkdldCAidXBncmFkZSAtLWlkIGAiJHBrZ2AiIgogICAgICAgIH0KICAgIH0KfSBlbHNlIHsKICAgIFdyaXRlLUhvc3QgIlt1cGRhdGVdIE5vIHBhY2thZ2VzVG9VcGRhdGUgc3BlY2lmaWVkOyBza2lwcGluZyB1cGdyYWRlIHBoYXNlLiIKfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGluc3RhbGwgcGhhc2UKCiRpbnN0YWxsUmF3ID0gJGVudjpwYWNrYWdlc1RvSW5zdGFsbAppZiAoJG51bGwgLW5lICRpbnN0YWxsUmF3IC1hbmQgIiRpbnN0YWxsUmF3Ii5UcmltKCkuTGVuZ3RoIC1ndCAwKSB7CiAgICAkdG9JbnN0YWxsID0gJGluc3RhbGxSYXcgLXNwbGl0ICdccysnIHwgV2hlcmUtT2JqZWN0IHsgJF8uVHJpbSgpLkxlbmd0aCAtZ3QgMCB9CiAgICBpZiAoJHRvSW5zdGFsbC5Db3VudCAtZ3QgMCkgewogICAgICAgIFdyaXRlLUhvc3QgKCJbaW5zdGFsbF0gSW5zdGFsbGluZyB7MH0gcGFja2FnZShzKTogezF9IiAtZiAkdG9JbnN0YWxsLkNvdW50LCAoJHRvSW5zdGFsbCAtam9pbiAnLCAnKSkKICAgICAgICBmb3JlYWNoICgkcGtnIGluICR0b0luc3RhbGwpIHsKICAgICAgICAgICAgV3JpdGUtSG9zdCAiW2luc3RhbGxdIEluc3RhbGxpbmc6ICRwa2ciCiAgICAgICAgICAgICMgLS1leGFjdC8tLWlkIGhlbHAgYXZvaWQgYW1iaWd1aXR5OyBtYW55IHBhY2thZ2VzIHN1cHBvcnQgc2lsZW50IGluc3RhbGxlcnMgYnkgZGVmYXVsdAogICAgICAgICAgICBJbnZva2UtV2luR2V0ICJpbnN0YWxsIC0taWQgYCIkcGtnYCIgLS1leGFjdCIKICAgICAgICB9CiAgICB9Cn0gZWxzZSB7CiAgICBXcml0ZS1Ib3N0ICJbaW5zdGFsbF0gTm8gcGFja2FnZXNUb0luc3RhbGwgc3BlY2lmaWVkOyBza2lwcGluZyBpbnN0YWxsIHBoYXNlLiIKfQoKV3JpdGUtSG9zdCAiPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSIKV3JpdGUtSG9zdCAiV2luR2V0IHRhc2tzIGNvbXBsZXRlLiIKV3JpdGUtSG9zdCAiRmluZCBwYWNrYWdlIElEcyB2aWE6IHdpbmdldCBzZWFyY2ggPG5hbWU+ICBvciBicm93c2U6IGh0dHBzOi8vd2luZ2V0LnJ1biIK",
|
|
"timeout_seconds": 3600,
|
|
"sites": {
|
|
"mode": "all",
|
|
"values": []
|
|
},
|
|
"variables": [
|
|
{
|
|
"name": "packagesToUpdate",
|
|
"label": "Packages to Update",
|
|
"description": "Tell Chocolatey what to upgrade. Provide one or more package IDs (space-separated), leave empty to skip, or set to ALL to upgrade everything Chocolatey manages.",
|
|
"type": "string",
|
|
"default": "ALL",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "packagesToInstall",
|
|
"label": "Packages to Install",
|
|
"description": "Provide one or more package IDs (space-separated) from https://community.chocolatey.org/packages",
|
|
"type": "string",
|
|
"default": "",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "randomizedUpdateStaggaringThreshold",
|
|
"label": "Rollout Randomization (Minutes)",
|
|
"description": "Set the maximum number of minutes to randomly delay before starting. Leave empty or non-numeric to start immediately",
|
|
"type": "number",
|
|
"default": "5",
|
|
"required": true
|
|
}
|
|
],
|
|
"files": [],
|
|
"script_encoding": "base64"
|
|
} |