-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathaction.yml
110 lines (104 loc) · 3.77 KB
/
action.yml
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
---
name: ansible-test-versions
author: Cédric Villemain <https://Data-Bene.io>
branding:
icon: check-circle
color: gray-dark
description: >-
GitHub Action for setting up job matrix based on expected ansible, python and
docker image support for Ansible Collections.
Inputs parameters are used to replace the defaults.
Default are in the versions.yml file in this repository.
inputs:
ansible-core-version:
description: >-
JSON array of ansible versions.
Default to all stable versions and devel
Example:
ansible-core-version: '[ "stable-2.12", "devel" ]'
required: false
docker-exclude:
description: >-
JSON array of exclusion for docker
Default to known not to work combination like ansible 2.9 and alpine3.
required: false
docker-image:
description: >-
JSON array of docker images
Default to all images supported by ansible-test
required: false
docker-include:
description: >-
JSON array of inclusions for docker
Default to known combination of interest
required: false
python-version:
description: >-
JSON array of python versions for the controler
Upstream action ansible-community/ansible-test-gh-action already provides
sane default, so it's empty here by default.
required: false
target-python-exclude:
description: >-
JSON array of exclusion for target python versions (managed)
Default to known incompatible cases.
required: false
target-python-version:
description: >-
JSON array of target python versions (managed)
Default to all versions collections are supposed to support.
required: false
outputs:
ansible-core-version:
description: >-
Return input JSON array of the same name or the defaults from the
versions.yml file
value: ${{ inputs.ansible-core-version || steps.get.outputs.ansible-core-version }}
docker-exclude:
description: >-
Return input JSON array of the same name or the defaults from the
versions.yml file
value: ${{ inputs.docker-exclude || steps.get.outputs.docker-exclude }}
docker-image:
description: >-
Return input JSON array of the same name or the defaults from the
versions.yml file
value: ${{ inputs.docker-image || steps.get.outputs.docker-image }}
docker-include:
description: >-
Return input JSON array of the same name or the defaults from the
versions.yml file
value: ${{ inputs.docker-include || steps.get.outputs.docker-include }}
python-version:
description: >-
Return input JSON array of the same name or the defaults from the
versions.yml file
value: ${{ inputs.python-version || steps.get.outputs.python-version }}
target-python-exclude:
description: >-
Return input JSON array of the same name or the defaults from the
versions.yml file
value: ${{ inputs.target-python-exclude || steps.get.outputs.target-python-exclude }}
target-python-version:
description: >-
Return input JSON array of the same name or the defaults from the
versions.yml file
value: ${{ inputs.target-python-version || steps.get.outputs.target-python-version }}
runs:
using: "composite"
steps:
- name: License
run: |
echo ::group::License
echo -e "\tansible-test-versions-gh-action"
echo -e "\tCopyright (C) 2021 Cédric Villemain ( https://Data-Bene.io)"
echo -e "\tThis program comes with ABSOLUTELY NO WARRANTY."
echo -e "\tThis is free software, and you are welcome to redistribute it"
echo -e "\tunder certain conditions."
echo ::endgroup::
shell: bash
- name: Set outputs variables
id: get
run: ${{ github.action_path }}/get_versions.sh ${{ github.action_path }}/versions.yml
shell: bash
...