Add tests and implement StubBearer authentication for Signer endpoints
	
		
			
	
		
	
	
		
	
		
			Some checks failed
		
		
	
	
		
			
				
	
				Docs CI / lint-and-preview (push) Has been cancelled
				
			
		
		
	
	
				
					
				
			
		
			Some checks failed
		
		
	
	Docs CI / lint-and-preview (push) Has been cancelled
				
			- 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.
This commit is contained in:
		
							
								
								
									
										57
									
								
								scripts/verify-notify-plugins.ps1
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								scripts/verify-notify-plugins.ps1
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,57 @@ | ||||
| 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 | ||||
		Reference in New Issue
	
	Block a user