Files
git.stella-ops.org/scripts/verify-notify-plugins.ps1
master 791e12baab
Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
Add tests and implement StubBearer authentication for Signer endpoints
- Created SignerEndpointsTests to validate the SignDsse and VerifyReferrers endpoints.
- Implemented StubBearerAuthenticationDefaults and StubBearerAuthenticationHandler for token-based authentication.
- Developed ConcelierExporterClient for managing Trivy DB settings and export operations.
- Added TrivyDbSettingsPageComponent for UI interactions with Trivy DB settings, including form handling and export triggering.
- Implemented styles and HTML structure for Trivy DB settings page.
- Created NotifySmokeCheck tool for validating Redis event streams and Notify deliveries.
2025-10-21 09:37:07 +03:00

58 lines
1.8 KiB
PowerShell

Set-StrictMode -Version Latest
$ErrorActionPreference = 'Stop'
$repoRoot = Split-Path -Parent $PSScriptRoot
$pluginsDir = Join-Path $repoRoot 'plugins\notify'
$assemblies = @{
slack = 'StellaOps.Notify.Connectors.Slack.dll'
teams = 'StellaOps.Notify.Connectors.Teams.dll'
email = 'StellaOps.Notify.Connectors.Email.dll'
webhook = 'StellaOps.Notify.Connectors.Webhook.dll'
}
$hasFailures = $false
foreach ($channel in $assemblies.Keys) {
$dir = Join-Path $pluginsDir $channel
if (-not (Test-Path -LiteralPath $dir -PathType Container)) {
Write-Host "ERROR: Missing plug-in directory '$dir'."
$hasFailures = $true
continue
}
$manifest = Join-Path $dir 'notify-plugin.json'
$assembly = Join-Path $dir $assemblies[$channel]
$baseName = [System.IO.Path]::GetFileNameWithoutExtension($assemblies[$channel])
$pdb = Join-Path $dir "$baseName.pdb"
$deps = Join-Path $dir "$baseName.deps.json"
if (-not (Test-Path -LiteralPath $manifest -PathType Leaf)) {
Write-Host "ERROR: Missing manifest for '$channel' connector ($manifest)."
$hasFailures = $true
}
if (-not (Test-Path -LiteralPath $assembly -PathType Leaf)) {
Write-Host "ERROR: Missing assembly for '$channel' connector ($assembly)."
$hasFailures = $true
}
Get-ChildItem -LiteralPath $dir -File | ForEach-Object {
switch ($_.Name) {
'notify-plugin.json' { return }
{ $_.Name -eq $assemblies[$channel] } { return }
{ $_.Name -eq "$baseName.pdb" } { return }
{ $_.Name -eq "$baseName.deps.json" } { return }
default {
Write-Host "ERROR: Unexpected file '$($_.Name)' in '$dir'."
$hasFailures = $true
}
}
}
}
if ($hasFailures) {
exit 1
}
exit 0