Skip to content

Commit 74ec81e

Browse files
authored
Added checks (#1660)
* Argo Submit a workflow * Add check for Argo CLI and workflow template name
1 parent 955eca7 commit 74ec81e

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

step-templates/argo-workflow-submit.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
"Name": "Submit Argo Workflow",
44
"Description": "Submit an Argo Worflow from a WorkflowTemplate",
55
"ActionType": "Octopus.KubernetesRunScript",
6-
"Version": 1,
6+
"Version": 2,
77
"CommunityActionTemplateId": null,
88
"Packages": [],
99
"GitDependencies": [],
1010
"Properties": {
1111
"Octopus.Action.Script.ScriptSource": "Inline",
1212
"Octopus.Action.Script.Syntax": "Bash",
13-
"Octopus.Action.Script.ScriptBody": "\n# Grab Variables\n\nexport wkf_name=$(get_octopusvariable 'ArgoWorkflowSubmit.Name')\nexport namespace=$(get_octopusvariable 'ArgoWorkflowSubmit.Namespace')\nexport parameter_array=$(get_octopusvariable \"ArgoWorkflowSubmit.Parameters\")\nexport options=$(get_octopusvariable 'ArgoWorkflowSubmit.Options')\n\n# Process optional parameters\nparameter_string=\"\"\nif [ -n \"$parameter_array\" ] ; then\n parameter_string=$(echo \"$parameter_array\" | awk '{printf \"-p %s \", $0}' | sed 's/ $//')\n echo \"Parameter string: $parameter_string\"\nelse\n echo \"No parameters passed\"\nfi\n\n\nCMD=\"argo submit -n $namespace --from workflowtemplate/$wkf_name $parameter_string $options -o name\"\necho \"Workflow Submit command: $CMD\"\n\nNAME=$($CMD)\nargo logs --follow $NAME\n\nPHASE=$(argo get $NAME -o json | jq -r '.status.phase')\n\nif [[ \"$PHASE\" == \"Succeeded\" ]]; then\n echo \"Workflow Succeeded.\"\n exit 0\nelif [[ \"$PHASE\" == \"Failed\" ]] || [[ \"$PHASE\" == \"Error\" ]]; then\n MESSAGE=$(argo get \"$NAME\" -o json | jq -r '.status.message')\n echo \"Workflow Phase: $PHASE.\"\n echo \"Message: $MESSAGE\"\n exit 1\nelse\n echo \"Workflow Phase: $PHASE (still running or unknown).\"\n exit 2\nfi"
13+
"Octopus.Action.Script.ScriptBody": "# Check for Argo\nif ! command -v argo -v >/dev/null 2>&1\nthen\n echo \"argo executable could not be found. Please use a target or container including it like octopuslabs/argo-workflow-workertools.\"\n exit 1\nfi\n\n# Grab Variables\nexport wkf_name=$(get_octopusvariable 'ArgoWorkflowSubmit.Name')\nexport namespace=$(get_octopusvariable 'ArgoWorkflowSubmit.Namespace')\nexport parameter_array=$(get_octopusvariable \"ArgoWorkflowSubmit.Parameters\")\nexport options=$(get_octopusvariable 'ArgoWorkflowSubmit.Options')\n\n# Check workflowTemplate name has been passed\nif [ -z \"$wkf_name\" ] ; then\n echo \"WorkflowTemplate name is required\"\n exit 1\nfi\n# Process optional parameters\nparameter_string=\"\"\nif [ -n \"$parameter_array\" ] ; then\n parameter_string=$(echo \"$parameter_array\" | awk '{printf \"-p %s \", $0}' | sed 's/ $//')\n echo \"Parameter string: $parameter_string\"\nelse\n echo \"No parameters passed\"\nfi\n\n\nCMD=\"argo submit -n $namespace --from workflowtemplate/$wkf_name $parameter_string $options -o name\"\necho \"Workflow Submit command: $CMD\"\n\nNAME=$($CMD)\nargo logs --follow $NAME\n\nPHASE=$(argo get $NAME -o json | jq -r '.status.phase')\n\nif [[ \"$PHASE\" == \"Succeeded\" ]]; then\n echo \"Workflow Succeeded.\"\n exit 0\nelif [[ \"$PHASE\" == \"Failed\" ]] || [[ \"$PHASE\" == \"Error\" ]]; then\n MESSAGE=$(argo get \"$NAME\" -o json | jq -r '.status.message')\n echo \"Workflow Phase: $PHASE.\"\n echo \"Message: $MESSAGE\"\n exit 1\nelse\n echo \"Workflow Phase: $PHASE (still running or unknown).\"\n exit 2\nfi"
1414
},
1515
"Parameters": [
1616
{
@@ -56,8 +56,8 @@
5656
],
5757
"StepPackageId": "Octopus.KubernetesRunScript",
5858
"$Meta": {
59-
"ExportedAt": "2026-03-10T15:15:54.763Z",
60-
"OctopusVersion": "2026.2.742",
59+
"ExportedAt": "2026-03-13T16:49:32.867Z",
60+
"OctopusVersion": "2026.2.999",
6161
"Type": "ActionTemplate"
6262
},
6363
"LastModifiedBy": "lrochette",

0 commit comments

Comments
 (0)