-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathaction.yml
More file actions
78 lines (73 loc) · 2.36 KB
/
Copy pathaction.yml
File metadata and controls
78 lines (73 loc) · 2.36 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
name: ContextFence boundary test
description: Test a RAG target against a versioned ContextFence boundary contract.
author: ContextFence contributors
branding:
icon: shield
color: green
inputs:
contract:
description: Path to the boundary contract, relative to working-directory.
required: false
default: boundary.yaml
target:
description: Optional target base URL override.
required: false
default: ""
format:
description: "Report format: pretty, json, junit, sarif, or html."
required: false
default: json
output:
description: Report path, relative to working-directory. Leave empty for stdout only.
required: false
default: contextfence-results.json
fail-on:
description: "Lowest severity that fails the step: none, low, medium, high, or critical."
required: false
default: low
timeout:
description: Per-probe timeout in milliseconds, including setup requests.
required: false
default: "30000"
concurrency:
description: Maximum number of probes to run concurrently.
required: false
default: "4"
dry-run:
description: Validate and plan the suite without calling its target.
required: false
default: "false"
working-directory:
description: Directory under the checked-out workspace in which to run.
required: false
default: .
version:
description: Exact ContextFence npm package version to execute.
required: false
default: 0.2.0
outputs:
report:
description: Absolute path to the report, or an empty string when output is disabled.
value: ${{ steps.run.outputs.report }}
runs:
using: composite
steps:
- name: Set up Node.js
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: 22.14.0
- name: Run ContextFence
id: run
shell: bash
env:
INPUT_CONTRACT: ${{ inputs.contract }}
INPUT_TARGET: ${{ inputs.target }}
INPUT_FORMAT: ${{ inputs.format }}
INPUT_OUTPUT: ${{ inputs.output }}
INPUT_FAIL_ON: ${{ inputs.fail-on }}
INPUT_TIMEOUT: ${{ inputs.timeout }}
INPUT_CONCURRENCY: ${{ inputs.concurrency }}
INPUT_DRY_RUN: ${{ inputs.dry-run }}
INPUT_WORKING_DIRECTORY: ${{ inputs.working-directory }}
INPUT_VERSION: ${{ inputs.version }}
run: "${{ github.action_path }}/scripts/run-action.sh"