Skip to content

Add Akeyless step templates for secrets management#1690

Open
baraka-akeyless wants to merge 3 commits into
OctopusDeploy:masterfrom
baraka-akeyless:add-akeyless-step-templates
Open

Add Akeyless step templates for secrets management#1690
baraka-akeyless wants to merge 3 commits into
OctopusDeploy:masterfrom
baraka-akeyless:add-akeyless-step-templates

Conversation

@baraka-akeyless

@baraka-akeyless baraka-akeyless commented Jun 11, 2026

Copy link
Copy Markdown

Summary

Adds community step templates for Akeyless secrets management, following the same pattern as the existing HashiCorp Vault and Keeper Secrets Manager templates.

Templates included:

  • Akeyless - Access Key Login — authenticate with Access ID + Access Key
  • Akeyless - JWT Login — authenticate with JWT or OIDC token
  • Akeyless - AWS IAM Login — authenticate with AWS IAM (auto Cloud ID from worker credentials)
  • Akeyless - Retrieve Static Secrets — fetch static secrets by path or folder
  • Akeyless - Retrieve Dynamic Secret — provision dynamic credentials
  • Akeyless - Retrieve Rotated Secret — fetch rotated secrets (optional linked-target host)

All templates use the Akeyless REST API via PowerShell (Invoke-RestMethod) and create sensitive Octopus output variables for use in later steps.

Test plan

  • Step template JSON validates (gulp lint:step-templates locally if needed)
  • Category logo added at step-templates/logos/akeyless.png
  • gulpfile.babel.js updated with akeyless category
  • Octopus team review
  • Sign Contributor License Agreement when requested

Notes

Source maintained in the Akeyless community plugin repo; templates are generated from readable PowerShell scripts and packed for import.

Made with Cursor

Introduce community step templates that authenticate to Akeyless and
retrieve static, dynamic, and rotated secrets as sensitive output variables.

Co-authored-by: Cursor <cursoragent@cursor.com>
@github-actions

Copy link
Copy Markdown

Review this PR in Hyponome for a side-by-side diff of the step-template JSON and any embedded scripts.

@CLAassistant

CLAassistant commented Jun 11, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

Replace the placeholder icon with the teal Akeyless mark cropped from
the official horizontal logo at 202x202 for the community library UI.

Co-authored-by: Cursor <cursoragent@cursor.com>
@baraka-akeyless

Copy link
Copy Markdown
Author

Community contribution adding Akeyless secrets step templates (auth + static/dynamic/rotated retrieve). CLA signed and checks passing — happy to address any feedback when the team has time to review.

@Rose-Northey Rose-Northey left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It matches our approval criteria - but maybe just check over the Invoke-AkeylessApis - it could literally be putting "https://api.akeyless.io/auth.TrimStart('/')" into your URIs

PowerShell string interpolation does not evaluate method calls on
variables unless wrapped in a subexpression. Normalize the gateway URL
and API path before building the request URI.

Co-authored-by: Cursor <cursoragent@cursor.com>
@baraka-akeyless

Copy link
Copy Markdown
Author

Thanks @Rose-Northey — good catch.

PowerShell was expanding "$base/$Path.TrimStart('/')" as $Path plus the literal .TrimStart('/'), so the URI could become https://api.akeyless.io/auth.TrimStart('/').

Fixed in 98680be by normalizing first:

$base = $GatewayUrl.TrimEnd('/')
$apiPath = $Path.TrimStart('/')
$uri = "$base/$apiPath"

All six templates have been repacked with the updated shared helper.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants