Text
Number
Textarea
Date
Time
Email
URL
Dropdown
Checkbox
Radio
Color
File
Range
Toggle
*
Which environment should this workflow target?
*
Use semantic versioning, e.g. v1.4.0
(optional)
Skip deployment changes and validate configuration only.
Form Preview
Live preview of the dispatch form generated from your cards.
3 cards
Which environment should this workflow target?
Use semantic versioning, e.g. v1.4.0
Skip deployment changes and validate configuration only.
Export & Run
Generate a ready-to-run workflow and configuration for the Chrome extension.
Ready
Workflow preview
name: Advanced Actions Invoker
on:
workflow_dispatch:
inputs:
schema:
description: 'JSON schema for the composer'
required: true
default: '{"type":"object","properties":{"environment":{"type":"string","enum":["development","staging","production"],"title":"Environment","default":"staging","description":"Which environment should this workflow target?"},"version":{"type":"string","pattern":"^v\\d+\\.\\d+\\.\\d+$","title":"Release version","description":"Use semantic versioning, e.g. v1.4.0","default":"v1.0.0"},"dryRun":{"type":"boolean","title":"Dry run only","description":"Skip deployment changes and validate configuration only.","default":true}},"required":["environment","version"]}'
layout:
description: 'UI schema describing layout'
required: true
default: '{"type":"VerticalLayout","elements":[{"type":"Control","scope":"#/properties/environment"},{"type":"Control","scope":"#/properties/version"},{"type":"Control","scope":"#/properties/dryRun"}]}'
data:
description: 'Initial data payload'
required: false
default: '{"environment":"staging","version":"v1.0.0","dryRun":true}'
style:
description: 'Optional visual preferences'
required: false
default: '{}'
jobs:
render:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Parse form inputs
id: form
uses: ./resources/advanced-actions-invoker-utils
with:
schema: ${{ inputs.schema }}
layout: ${{ inputs.layout }}
data: ${{ inputs.data }}
style: ${{ inputs.style }}
- name: Use parsed values
run: |
echo "Schema keys: ${{ steps.form.outputs.schema_type }}"
echo "Layout elements: ${{ steps.form.outputs.layout_type }}"
echo "Data JSON: ${{ inputs.data }}"