github.com/nektos/act@v0.2.83/pkg/schema/action_schema.json (about) 1 { 2 "definitions": { 3 "action-root": { 4 "description": "Action file", 5 "mapping": { 6 "properties": { 7 "name": "string", 8 "description": "string", 9 "inputs": "inputs", 10 "runs": "runs", 11 "outputs": "outputs" 12 }, 13 "loose-key-type": "non-empty-string", 14 "loose-value-type": "any" 15 } 16 }, 17 "inputs": { 18 "mapping": { 19 "loose-key-type": "non-empty-string", 20 "loose-value-type": "input" 21 } 22 }, 23 "input": { 24 "mapping": { 25 "properties": { 26 "default": "input-default-context" 27 }, 28 "loose-key-type": "non-empty-string", 29 "loose-value-type": "any" 30 } 31 }, 32 "outputs": { 33 "mapping": { 34 "loose-key-type": "non-empty-string", 35 "loose-value-type": "output-definition" 36 } 37 }, 38 "output-definition": { 39 "mapping": { 40 "properties": { 41 "description": "string", 42 "value": "output-value" 43 } 44 } 45 }, 46 "runs": { 47 "one-of": ["container-runs", "node-runs", "plugin-runs", "composite-runs"] 48 }, 49 "container-runs": { 50 "mapping": { 51 "properties": { 52 "using": "non-empty-string", 53 "image": "non-empty-string", 54 "entrypoint": "non-empty-string", 55 "args": "container-runs-args", 56 "env": "container-runs-env", 57 "pre-entrypoint": "non-empty-string", 58 "pre-if": "non-empty-string", 59 "post-entrypoint": "non-empty-string", 60 "post-if": "non-empty-string" 61 } 62 } 63 }, 64 "container-runs-args": { 65 "sequence": { 66 "item-type": "container-runs-context" 67 } 68 }, 69 "container-runs-env": { 70 "context": ["inputs"], 71 "mapping": { 72 "loose-key-type": "non-empty-string", 73 "loose-value-type": "string" 74 } 75 }, 76 "node-runs": { 77 "mapping": { 78 "properties": { 79 "using": "non-empty-string", 80 "main": "non-empty-string", 81 "pre": "non-empty-string", 82 "pre-if": "non-empty-string", 83 "post": "non-empty-string", 84 "post-if": "non-empty-string" 85 } 86 } 87 }, 88 "plugin-runs": { 89 "mapping": { 90 "properties": { 91 "plugin": "non-empty-string" 92 } 93 } 94 }, 95 "composite-runs": { 96 "mapping": { 97 "properties": { 98 "using": "non-empty-string", 99 "steps": "composite-steps" 100 } 101 } 102 }, 103 "composite-steps": { 104 "sequence": { 105 "item-type": "composite-step" 106 } 107 }, 108 "composite-step": { 109 "one-of": ["run-step", "uses-step"] 110 }, 111 "run-step": { 112 "mapping": { 113 "properties": { 114 "name": "string-steps-context", 115 "id": "non-empty-string", 116 "if": "step-if", 117 "run": { 118 "type": "string-steps-context", 119 "required": true 120 }, 121 "env": "step-env", 122 "continue-on-error": "boolean-steps-context", 123 "working-directory": "string-steps-context", 124 "shell": { 125 "type": "string-steps-context", 126 "required": true 127 } 128 } 129 } 130 }, 131 "uses-step": { 132 "mapping": { 133 "properties": { 134 "name": "string-steps-context", 135 "id": "non-empty-string", 136 "if": "step-if", 137 "uses": { 138 "type": "non-empty-string", 139 "required": true 140 }, 141 "continue-on-error": "boolean-steps-context", 142 "with": "step-with", 143 "env": "step-env" 144 } 145 } 146 }, 147 "container-runs-context": { 148 "context": ["inputs"], 149 "string": {} 150 }, 151 "output-value": { 152 "context": [ 153 "github", 154 "strategy", 155 "matrix", 156 "steps", 157 "inputs", 158 "job", 159 "runner", 160 "env" 161 ], 162 "string": {} 163 }, 164 "input-default-context": { 165 "context": [ 166 "github", 167 "strategy", 168 "matrix", 169 "job", 170 "runner", 171 "hashFiles(1,255)" 172 ], 173 "string": {} 174 }, 175 "non-empty-string": { 176 "string": { 177 "require-non-empty": true 178 } 179 }, 180 "string-steps-context": { 181 "context": [ 182 "github", 183 "inputs", 184 "strategy", 185 "matrix", 186 "steps", 187 "job", 188 "runner", 189 "env", 190 "hashFiles(1,255)" 191 ], 192 "string": {} 193 }, 194 "boolean-steps-context": { 195 "context": [ 196 "github", 197 "inputs", 198 "strategy", 199 "matrix", 200 "steps", 201 "job", 202 "runner", 203 "env", 204 "hashFiles(1,255)" 205 ], 206 "boolean": {} 207 }, 208 "step-env": { 209 "context": [ 210 "github", 211 "inputs", 212 "strategy", 213 "matrix", 214 "steps", 215 "job", 216 "runner", 217 "env", 218 "hashFiles(1,255)" 219 ], 220 "mapping": { 221 "loose-key-type": "non-empty-string", 222 "loose-value-type": "string" 223 } 224 }, 225 "step-if": { 226 "context": [ 227 "github", 228 "inputs", 229 "strategy", 230 "matrix", 231 "steps", 232 "job", 233 "runner", 234 "env", 235 "always(0,0)", 236 "failure(0,0)", 237 "cancelled(0,0)", 238 "success(0,0)", 239 "hashFiles(1,255)" 240 ], 241 "string": {} 242 }, 243 "step-with": { 244 "context": [ 245 "github", 246 "inputs", 247 "strategy", 248 "matrix", 249 "steps", 250 "job", 251 "runner", 252 "env", 253 "hashFiles(1,255)" 254 ], 255 "mapping": { 256 "loose-key-type": "non-empty-string", 257 "loose-value-type": "string" 258 } 259 } 260 } 261 }