Octopus - Check for Argo CD Instances

Octopus.Script exported 2025-11-05 by twerthi belongs to ‘Octopus’ category.

Checks to see if there are any Argo CD instances registered to the space.

Parameters

When steps based on the template are included in a project’s deployment process, the parameters below can be set.

Octopus Deploy API Key

Template.Octopus.API.Key =

The Octopus Deploy API Key to use when making calls to the Octopus API.

Script body

Steps based on this template will execute the following PowerShell script.

# Fix ANSI Color on PWSH Core issues when displaying objects
if ($PSEdition -eq "Core") {
    $PSStyle.OutputRendering = "PlainText"
}

# Define variables
$isArgoPresent = $false

# Check to see if the Octopus.Web.ServerUri variable has a value
if (![string]::IsNullOrWhitespace($OctopusParameters["Octopus.Web.ServerUri"]))
{
  $baseUrl = $OctopusParameters["Octopus.Web.ServerUri"]
}
else
{
  $baseUrl = $OctopusParameters["Octopus.Web.BaseUrl"]
}

# Validate parameters
if ([string]::IsNullOrWhitespace($OctopusParameters["Template.Octopus.API.Key"]))
{
  Write-Highlight "An API Key was not provided, unable to check to see if there are any Argo CD instances registered in this space."
}
else
{
  $header = @{ "X-Octopus-ApiKey" = $OctopusParameters["Template.Octopus.API.Key"] }

  # Get registered Argo CD instances
  $argoInstances = Invoke-RestMethod -Method Get -Uri "$($baseUrl)/api/#{Octopus.Space.Id}/argocdinstances/summaries" -Headers $header

  # Check the returned values
  if ($argoInstances.Resources.Count -gt 0)
  {
    Write-Highlight "Found $($argoInstances.Resources.Count) Argo instance(s) registered!"
    $isArgoPresent = $true
  }
  else
  {
    Write-Highlight "No Argo CD instances registered to space $($OctopusParameters['Octopus.Space.Name']).  Please [register an Argo CD instance](https://octopus.com/docs/argo-cd/instances) with this space."
  }
}

# Set output variable
Set-OctopusVariable -Name ArgoPresent -Value $isArgoPresent

Provided under the Apache License version 2.0.

Report an issue

To use this template in Octopus Deploy, copy the JSON below and paste it into the Library → Step templates → Import dialog.

{
  "Id": "7da3a76e-57ca-4542-846a-73c00252206c",
  "Name": "Octopus - Check for Argo CD Instances",
  "Description": "Checks to see if there are any Argo CD instances registered to the space.",
  "Version": 1,
  "ExportedAt": "2025-11-05T23:41:23.320Z",
  "ActionType": "Octopus.Script",
  "Author": "twerthi",
  "Packages": [],
  "Parameters": [
    {
      "Id": "dfeca839-7c5d-4d5f-a941-27522f918a67",
      "Name": "Template.Octopus.API.Key",
      "Label": "Octopus Deploy API Key",
      "HelpText": "The Octopus Deploy API Key to use when making calls to the Octopus API.",
      "DefaultValue": "",
      "DisplaySettings": {
        "Octopus.ControlType": "Sensitive"
      }
    }
  ],
  "Properties": {
    "Octopus.Action.Script.ScriptSource": "Inline",
    "Octopus.Action.Script.Syntax": "PowerShell",
    "Octopus.Action.Script.ScriptBody": "# Fix ANSI Color on PWSH Core issues when displaying objects\nif ($PSEdition -eq \"Core\") {\n    $PSStyle.OutputRendering = \"PlainText\"\n}\n\n# Define variables\n$isArgoPresent = $false\n\n# Check to see if the Octopus.Web.ServerUri variable has a value\nif (![string]::IsNullOrWhitespace($OctopusParameters[\"Octopus.Web.ServerUri\"]))\n{\n  $baseUrl = $OctopusParameters[\"Octopus.Web.ServerUri\"]\n}\nelse\n{\n  $baseUrl = $OctopusParameters[\"Octopus.Web.BaseUrl\"]\n}\n\n# Validate parameters\nif ([string]::IsNullOrWhitespace($OctopusParameters[\"Template.Octopus.API.Key\"]))\n{\n  Write-Highlight \"An API Key was not provided, unable to check to see if there are any Argo CD instances registered in this space.\"\n}\nelse\n{\n  $header = @{ \"X-Octopus-ApiKey\" = $OctopusParameters[\"Template.Octopus.API.Key\"] }\n\n  # Get registered Argo CD instances\n  $argoInstances = Invoke-RestMethod -Method Get -Uri \"$($baseUrl)/api/#{Octopus.Space.Id}/argocdinstances/summaries\" -Headers $header\n\n  # Check the returned values\n  if ($argoInstances.Resources.Count -gt 0)\n  {\n    Write-Highlight \"Found $($argoInstances.Resources.Count) Argo instance(s) registered!\"\n    $isArgoPresent = $true\n  }\n  else\n  {\n    Write-Highlight \"No Argo CD instances registered to space $($OctopusParameters['Octopus.Space.Name']).  Please [register an Argo CD instance](https://octopus.com/docs/argo-cd/instances) with this space.\"\n  }\n}\n\n# Set output variable\nSet-OctopusVariable -Name ArgoPresent -Value $isArgoPresent"
  },
  "Category": "Octopus",
  "HistoryUrl": "https://github.com/OctopusDeploy/Library/commits/master/step-templates//opt/buildagent/work/a381802920158308/step-templates/octopus-check-for-argo-instance.json",
  "Website": "/step-templates/7da3a76e-57ca-4542-846a-73c00252206c",
  "Logo": "iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAMAAACahl6sAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAC1QTFRFT6Tl////L5Pg8vj9Y67omsvwPJrisdfzfbzs5fL7y+T32Ov5isLucLXqvt31CJPHWwAABMJJREFUeNrs3deW4jAMAFDF3U75/89dlp0ZhiU4blJEjvQ8hYubLJsA00UCBCIQgQhEIAIRiEAEIhCBCEQgAhGIQAQiEIEIhD8kJm+t+QprfdKfB9HbYpx6CWfspj8HMi+gMgHL/AmQA8W3JTKH+ALFvzCeL0RbpyoCPE9IJeNOSQwh5Z3qd6yRGWQ2qi2cZQWxqj1WzQYSjeoJmJlAklOd4VlArOqPhQEkqBERToeMcfRJBkC0Uep8CfBpjz4JsHJ0zF3dkEWNje0kiB/sUC6eApndaIiCMyAa1PiwJ0AWhRGJHJJQHG2dC7h1rNbO1QOxSA7lNCkkKrQIpJCAB1GREILYIC1NAiwbpKFJgGWDNExcwGstfExcZBCHC6nOglshHtmhViLIig1RNBCN7qjtW8C0Z1UvJcC1Z9XmwMBzzvobmgAyEzgq91dtEEsBsQSQQAFZCSBAATEEEApHZbrVBIkkEIUPSVeB+KtALA0kXQUSrwKZBCIQBnk8Y4i5CsReBeKvkqLM+BCSDWJlrZFvGk9SRTHshkgjZCGAaArIxm3H3grhVzFlW2msfl1ca79UJ1bofYvsDHHlNdTZnlh5MghuPd5NdBDUNZHyCkfktIh03XzALGRPlBDPac7qgWjHZzWcmF5zmmkhidMQ6boKiDXcDTUEaylZqCGJ0Vjvu/fLJtHqhSANEvqb2OYqkOUqEHuVMbJcZdZCGiPhKhC4yjqiIjEE7XThMp8fAWII3mY3kUIQD+AMKQTzPiBhgQ63HlT/KSvgtoi0dq5mCPah1UIE0eh3sT0NhOByvKeAkFzi8PgQomumFhsyOxpIzZN4gLOj5plVwNpR0b2AuePWKBEHQu24pSsJA+LVCeHHQxZ1SiyDIdqok8IOhSSnTottHEQTdyt4ettAj4KkzA4dMikk2Dht2S5ptm1vswnPDxn0YyDZ5oDM3iToo2T5voWaYe+Q+vdjH80QyAzZhCgcDtLMI1Tmtz9w++XHgziHQHJJu/OZ3bs9Xn8gQ72NcP3dKqEfkp10F51xhoIi2I91R+LurXV/5q7pH+wx061CzO16oSQleMyr8fXvwMA0Pro8432DPD/ySx8XrHfSuDAM8n6UhnjQabaiXf5Bq/lREHvEeNtn1rJ08+C/uXkQZHeguxAPC3UvtcJYUogLzZX5hhZZvS6onG5lxXtzWGaygwb79vT/IXhdlNibwlKYOR6T8xjI7W8n+xV7T+GH4tMzWwR+lZhRkJYSsC0thpmCYqyngOz3rN2FLBZ2wZflBCggUHF0Vnp88JKienzIXLSEZCZqU7IKr/gQW9yx3pzV7Y9kvWZWTRRIqDmTtRUnU7b2lLcTYmoqHqnmiO1poER0SPkAeZMAZxaJx0Y3TCdAclsIqDz03ALcyxfTCZBsthoGXWmigGyVhWPLFJJfuuKQWycoEFdXbH4dJJoJxNR1eD/kshz6yn48cF8yW8sFoitflB1w6Q8n+/15Za7oA17/pYNmYgP5fmWm8L1NOHPWgK8kuFew1/JXtOA0yJCv7ah7X8ObUuT5kObU30+fDZm8+zqP+HTIpK0xQ796b5Kv2hSIQAQiEIEIRCACEYhABCIQgQhEIAIRiEAEIpBf8UeAAQAEjtYmlDTcCgAAAABJRU5ErkJggg==",
  "$Meta": {
    "Type": "ActionTemplate"
  }
}

History

Page updated on Wednesday, November 5, 2025