Files
action/action.yml
T
2025-11-28 11:30:28 +05:00

47 lines
1.3 KiB
YAML

name: 'Finite State Machine (FSM) Action'
description: 'Лёгкий конечный автомат на чистом Bash без Docker'
author: '4ma.su community'
inputs:
states:
description: 'JSON с переходами (обязательно)'
required: true
initial:
description: 'Начальное состояние'
required: true
event:
description: 'Событие для обработки'
required: true
context:
description: 'JSON-контекст для подстановки в действия ${{ var }}'
required: false
default: '{}'
debug:
description: 'Включить отладку'
required: false
default: 'false'
outputs:
next_state:
description: 'Следующее состояние'
value: ${{ steps.fsm.outputs.next_state }}
executed_actions:
description: 'Массив выполненных действий'
value: ${{ steps.fsm.outputs.executed_actions }}
runs:
using: 'composite'
steps:
- id: fsm
name: Run FSM
shell: bash
env:
INPUT_STATES: ${{ inputs.states }}
INPUT_INITIAL: ${{ inputs.initial }}
INPUT_EVENT: ${{ inputs.event }}
INPUT_CONTEXT: ${{ inputs.context }}
INPUT_DEBUG: ${{ inputs.debug }}
run: ${{ github.action_path }}/fsm.sh
branding:
icon: 'activity'
color: 'blue'