|
|
|
|
@@ -19,7 +19,7 @@ jobs:
|
|
|
|
|
- uses: ./actions/docker-url
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
|
|
|
|
|
assert.Len(t, workflow.On(), 1)
|
|
|
|
|
@@ -38,7 +38,7 @@ jobs:
|
|
|
|
|
- uses: ./actions/docker-url
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
|
|
|
|
|
assert.Len(t, workflow.On(), 2)
|
|
|
|
|
@@ -64,7 +64,7 @@ jobs:
|
|
|
|
|
- uses: ./actions/docker-url
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
assert.Len(t, workflow.On(), 2)
|
|
|
|
|
assert.Contains(t, workflow.On(), "push")
|
|
|
|
|
@@ -83,7 +83,7 @@ jobs:
|
|
|
|
|
steps:
|
|
|
|
|
- uses: ./actions/docker-url`
|
|
|
|
|
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
assert.Equal(t, workflow.Jobs["test"].RunsOn(), []string{"ubuntu-latest"})
|
|
|
|
|
}
|
|
|
|
|
@@ -101,7 +101,7 @@ jobs:
|
|
|
|
|
steps:
|
|
|
|
|
- uses: ./actions/docker-url`
|
|
|
|
|
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
assert.Equal(t, workflow.Jobs["test"].RunsOn(), []string{"ubuntu-latest", "linux"})
|
|
|
|
|
}
|
|
|
|
|
@@ -126,7 +126,7 @@ jobs:
|
|
|
|
|
- uses: ./actions/docker-url
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
assert.Len(t, workflow.Jobs, 2)
|
|
|
|
|
assert.Contains(t, workflow.Jobs["test"].Container().Image, "nginx:latest")
|
|
|
|
|
@@ -156,7 +156,7 @@ jobs:
|
|
|
|
|
- uses: ./actions/docker-url
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
assert.Len(t, workflow.Jobs, 1)
|
|
|
|
|
|
|
|
|
|
@@ -194,7 +194,7 @@ jobs:
|
|
|
|
|
uses: ./some/path/to/workflow.yaml
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
assert.Len(t, workflow.Jobs, 6)
|
|
|
|
|
|
|
|
|
|
@@ -238,7 +238,7 @@ jobs:
|
|
|
|
|
uses: some/path/to/workflow.yaml
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
assert.Len(t, workflow.Jobs, 4)
|
|
|
|
|
|
|
|
|
|
@@ -280,7 +280,7 @@ jobs:
|
|
|
|
|
uses: ./local-action
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
_, err := ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
_, err := ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.Error(t, err, "read workflow should fail")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -312,7 +312,7 @@ jobs:
|
|
|
|
|
echo "${{ needs.test1.outputs.some-b-key }}"
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
assert.Len(t, workflow.Jobs, 2)
|
|
|
|
|
|
|
|
|
|
@@ -327,7 +327,7 @@ jobs:
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func TestReadWorkflow_Strategy(t *testing.T) {
|
|
|
|
|
w, err := NewWorkflowPlanner("testdata/strategy/push.yml", true)
|
|
|
|
|
w, err := NewWorkflowPlanner("testdata/strategy/push.yml", true, false)
|
|
|
|
|
assert.NoError(t, err)
|
|
|
|
|
|
|
|
|
|
p, err := w.PlanJob("strategy-only-max-parallel")
|
|
|
|
|
@@ -418,7 +418,7 @@ func TestReadWorkflow_WorkflowDispatchConfig(t *testing.T) {
|
|
|
|
|
yaml := `
|
|
|
|
|
name: local-action-docker-url
|
|
|
|
|
`
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err := ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
workflowDispatch := workflow.WorkflowDispatchConfig()
|
|
|
|
|
assert.Nil(t, workflowDispatch)
|
|
|
|
|
@@ -427,7 +427,7 @@ func TestReadWorkflow_WorkflowDispatchConfig(t *testing.T) {
|
|
|
|
|
name: local-action-docker-url
|
|
|
|
|
on: push
|
|
|
|
|
`
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
workflowDispatch = workflow.WorkflowDispatchConfig()
|
|
|
|
|
assert.Nil(t, workflowDispatch)
|
|
|
|
|
@@ -436,7 +436,7 @@ func TestReadWorkflow_WorkflowDispatchConfig(t *testing.T) {
|
|
|
|
|
name: local-action-docker-url
|
|
|
|
|
on: workflow_dispatch
|
|
|
|
|
`
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
workflowDispatch = workflow.WorkflowDispatchConfig()
|
|
|
|
|
assert.NotNil(t, workflowDispatch)
|
|
|
|
|
@@ -446,7 +446,7 @@ func TestReadWorkflow_WorkflowDispatchConfig(t *testing.T) {
|
|
|
|
|
name: local-action-docker-url
|
|
|
|
|
on: [push, pull_request]
|
|
|
|
|
`
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
workflowDispatch = workflow.WorkflowDispatchConfig()
|
|
|
|
|
assert.Nil(t, workflowDispatch)
|
|
|
|
|
@@ -455,7 +455,7 @@ func TestReadWorkflow_WorkflowDispatchConfig(t *testing.T) {
|
|
|
|
|
name: local-action-docker-url
|
|
|
|
|
on: [push, workflow_dispatch]
|
|
|
|
|
`
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
workflowDispatch = workflow.WorkflowDispatchConfig()
|
|
|
|
|
assert.NotNil(t, workflowDispatch)
|
|
|
|
|
@@ -467,7 +467,7 @@ func TestReadWorkflow_WorkflowDispatchConfig(t *testing.T) {
|
|
|
|
|
- push
|
|
|
|
|
- workflow_dispatch
|
|
|
|
|
`
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
workflowDispatch = workflow.WorkflowDispatchConfig()
|
|
|
|
|
assert.NotNil(t, workflowDispatch)
|
|
|
|
|
@@ -479,7 +479,7 @@ func TestReadWorkflow_WorkflowDispatchConfig(t *testing.T) {
|
|
|
|
|
push:
|
|
|
|
|
pull_request:
|
|
|
|
|
`
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
workflowDispatch = workflow.WorkflowDispatchConfig()
|
|
|
|
|
assert.Nil(t, workflowDispatch)
|
|
|
|
|
@@ -501,7 +501,7 @@ func TestReadWorkflow_WorkflowDispatchConfig(t *testing.T) {
|
|
|
|
|
- warning
|
|
|
|
|
- debug
|
|
|
|
|
`
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml))
|
|
|
|
|
workflow, err = ReadWorkflow(strings.NewReader(yaml), false)
|
|
|
|
|
assert.NoError(t, err, "read workflow should succeed")
|
|
|
|
|
workflowDispatch = workflow.WorkflowDispatchConfig()
|
|
|
|
|
assert.NotNil(t, workflowDispatch)
|
|
|
|
|
@@ -517,3 +517,19 @@ func TestReadWorkflow_WorkflowDispatchConfig(t *testing.T) {
|
|
|
|
|
Type: "choice",
|
|
|
|
|
}, workflowDispatch.Inputs["logLevel"])
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func TestReadWorkflow_InvalidStringEvent(t *testing.T) {
|
|
|
|
|
yaml := `
|
|
|
|
|
name: local-action-docker-url
|
|
|
|
|
on: push2
|
|
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
|
test:
|
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
|
steps:
|
|
|
|
|
- uses: ./actions/docker-url
|
|
|
|
|
`
|
|
|
|
|
|
|
|
|
|
_, err := ReadWorkflow(strings.NewReader(yaml), true)
|
|
|
|
|
assert.Error(t, err, "read workflow should succeed")
|
|
|
|
|
}
|
|
|
|
|
|