b9a7bc6202
* Add support for composite actions * Fix to make more complex composite actions work * Fix to make more complex composite actions work * Let's validate the steps in the composite steps to fail on uses and run's without shell, like the real world * Add support for composite actions * Add workflow to test composite actions * Log instead of panicing when output is mismatched * Merge maps so environment variables are not lost * Remove Debug * Correect merge error * Remove invalid composite tests. * Fix composite test Co-authored-by: Casey Lee <cplee@nektos.com> Co-authored-by: monkers <mikem@msquaredconsulting.co.uk> Co-authored-by: Mike Moncrieffe <69815687+mikemonkers@users.noreply.github.com>
48 lines
1.1 KiB
YAML
48 lines
1.1 KiB
YAML
---
|
|
name: "Test Composite Action"
|
|
description: "Test action uses composite"
|
|
|
|
inputs:
|
|
test_input_required:
|
|
description: "Required input"
|
|
required: true
|
|
test_input_optional:
|
|
description: "optional defaulted input"
|
|
required: false
|
|
default: "test_input_optional_value"
|
|
|
|
outputs:
|
|
test_output:
|
|
description: "Output value to pass up"
|
|
value: ${{ step.output.outputs.test_output }}
|
|
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
- run: |
|
|
echo "#####################################"
|
|
echo "Inputs:"
|
|
echo "---"
|
|
echo "test_input_required=${{ inputs.test_input_required }}"
|
|
echo "test_input_optional=${{ inputs.test_input_optional }}"
|
|
echo "---"
|
|
shell: bash
|
|
|
|
# Let's test the inputs
|
|
- run: |
|
|
if [ "${{ inputs.test_input_required }}" != "test_input_required_value" ]; then
|
|
exit 1
|
|
fi
|
|
shell: bash
|
|
|
|
- run: |
|
|
if [ "${{ inputs.test_input_optional }}" != "test_input_optional_value" ]; then
|
|
exit 1
|
|
fi
|
|
shell: bash
|
|
|
|
# Let's send up an output to test
|
|
- run: echo "::set-output name=test_output::test_output_value"
|
|
shell: bash
|
|
|
|
|