mirror of
https://code.forgejo.org/forgejo/runner.git
synced 2025-09-15 18:57:01 +00:00
fix: allow expressions in action descriptions and incomplete action inputs (#770)
They are commonly used for documentation purposes and never evaluated. <!--start release-notes-assistant--> <!--URL:https://code.forgejo.org/forgejo/runner--> - bug fixes - [PR](https://code.forgejo.org/forgejo/runner/pulls/770): <!--number 770 --><!--line 0 --><!--description Zml4OiBhbGxvdyBleHByZXNzaW9ucyBpbiBhY3Rpb24gZGVzY3JpcHRpb25zIGFuZCBpbmNvbXBsZXRlIGFjdGlvbiBpbnB1dHM=-->fix: allow expressions in action descriptions and incomplete action inputs<!--description--> <!--end release-notes-assistant--> Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/770 Co-authored-by: Earl Warren <contact@earl-warren.org> Co-committed-by: Earl Warren <contact@earl-warren.org>
This commit is contained in:
parent
9e02dd8c7e
commit
29cc7e1a71
4 changed files with 60 additions and 16 deletions
|
@ -123,12 +123,17 @@ jobs:
|
|||
}
|
||||
|
||||
func TestActionSchema(t *testing.T) {
|
||||
var node yaml.Node
|
||||
err := yaml.Unmarshal([]byte(`
|
||||
for _, testCase := range []struct {
|
||||
name string
|
||||
action string
|
||||
}{
|
||||
{
|
||||
name: "Expressions",
|
||||
action: `
|
||||
name: 'action name'
|
||||
author: 'action authors'
|
||||
description: |
|
||||
action description
|
||||
action ${{ env.SOMETHING }} description
|
||||
inputs:
|
||||
url:
|
||||
description: 'url description'
|
||||
|
@ -143,13 +148,41 @@ runs:
|
|||
echo "${{ github.action_path }}"
|
||||
env:
|
||||
MYVAR: ${{ vars.VARIABLE }}
|
||||
`), &node)
|
||||
if !assert.NoError(t, err) {
|
||||
return
|
||||
`,
|
||||
},
|
||||
{
|
||||
name: "NoInputs",
|
||||
action: `
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- run: echo OK
|
||||
`,
|
||||
},
|
||||
{
|
||||
name: "NoMappingInputs",
|
||||
action: `
|
||||
inputs:
|
||||
parameter1:
|
||||
parameter2:
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- run: echo OK
|
||||
`,
|
||||
},
|
||||
} {
|
||||
t.Run(testCase.name, func(t *testing.T) {
|
||||
var node yaml.Node
|
||||
err := yaml.Unmarshal([]byte(testCase.action), &node)
|
||||
if !assert.NoError(t, err) {
|
||||
return
|
||||
}
|
||||
err = (&Node{
|
||||
Definition: "action-root",
|
||||
Schema: GetActionSchema(),
|
||||
}).UnmarshalYAML(&node)
|
||||
assert.NoError(t, err)
|
||||
})
|
||||
}
|
||||
err = (&Node{
|
||||
Definition: "action-root",
|
||||
Schema: GetActionSchema(),
|
||||
}).UnmarshalYAML(&node)
|
||||
assert.NoError(t, err)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue