Add Policy DSL Validator, Schema Exporter, and Simulation Smoke tools
	
		
			
	
		
	
	
		
	
		
			Some checks failed
		
		
	
	
		
			
				
	
				Docs CI / lint-and-preview (push) Has been cancelled
				
			
		
		
	
	
				
					
				
			
		
			Some checks failed
		
		
	
	Docs CI / lint-and-preview (push) Has been cancelled
				
			- Implemented PolicyDslValidator with command-line options for strict mode and JSON output. - Created PolicySchemaExporter to generate JSON schemas for policy-related models. - Developed PolicySimulationSmoke tool to validate policy simulations against expected outcomes. - Added project files and necessary dependencies for each tool. - Ensured proper error handling and usage instructions across tools.
This commit is contained in:
		
							
								
								
									
										36
									
								
								ops/offline-kit/run-python-analyzer-smoke.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								ops/offline-kit/run-python-analyzer-smoke.sh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | ||||
| #!/usr/bin/env bash | ||||
| set -euo pipefail | ||||
|  | ||||
| repo_root="$(git -C "${BASH_SOURCE%/*}/.." rev-parse --show-toplevel 2>/dev/null || pwd)" | ||||
| project_path="${repo_root}/src/StellaOps.Scanner.Analyzers.Lang.Python/StellaOps.Scanner.Analyzers.Lang.Python.csproj" | ||||
| output_dir="${repo_root}/out/analyzers/python" | ||||
| plugin_dir="${repo_root}/plugins/scanner/analyzers/lang/StellaOps.Scanner.Analyzers.Lang.Python" | ||||
|  | ||||
| to_win_path() { | ||||
|   if command -v wslpath >/dev/null 2>&1; then | ||||
|     wslpath -w "$1" | ||||
|   else | ||||
|     printf '%s\n' "$1" | ||||
|   fi | ||||
| } | ||||
|  | ||||
| rm -rf "${output_dir}" | ||||
| project_path_win="$(to_win_path "$project_path")" | ||||
| output_dir_win="$(to_win_path "$output_dir")" | ||||
|  | ||||
| dotnet publish "$project_path_win" \ | ||||
|   --configuration Release \ | ||||
|   --output "$output_dir_win" \ | ||||
|   --self-contained false | ||||
|  | ||||
| mkdir -p "${plugin_dir}" | ||||
| cp "${output_dir}/StellaOps.Scanner.Analyzers.Lang.Python.dll" "${plugin_dir}/" | ||||
| if [[ -f "${output_dir}/StellaOps.Scanner.Analyzers.Lang.Python.pdb" ]]; then | ||||
|   cp "${output_dir}/StellaOps.Scanner.Analyzers.Lang.Python.pdb" "${plugin_dir}/" | ||||
| fi | ||||
|  | ||||
| repo_root_win="$(to_win_path "$repo_root")" | ||||
| exec dotnet run \ | ||||
|   --project "${repo_root_win}/tools/LanguageAnalyzerSmoke/LanguageAnalyzerSmoke.csproj" \ | ||||
|   --configuration Release \ | ||||
|   -- --repo-root "${repo_root_win}" | ||||
		Reference in New Issue
	
	Block a user