You signed in with another tab or window.Reload to refresh your session.You signed out in another tab or window.Reload to refresh your session.You switched accounts on another tab or window.Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: _docs/integrations/octopus-deploy.md
+63-5Lines changed: 63 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -116,7 +116,7 @@ The table describes the instance fields you need to define.
116
116
| Octopus instance variable | Description|
117
117
| ------------- | ------- |
118
118
|`OCTOPUS_URL` | The Octopus Server URL on which to run your Octopus Deploy steps. See [Getting started with Octopus](https://octopus.com/docs/getting-started){:target="\_blank"} for an overview of deploy concepts. |
119
-
| `OCTOPUS_API_KEY` | The Octopus Deploy API Key required for authentication. Use an existing key or create a new API key. See [Creating an API Key](https://octopus.com/docs/octopus-rest-api/how-to-create-an-api-key#HowtocreateanAPIkey-CreatinganAPIkey){:target="\_blank"}. |
119
+
| `OCTOPUS_API_KEY` | The Octopus Deploy API Key required for authentication. Use an existing key or create a new API key. See [Creating an API Key](https://octopus.com/docs/octopus-rest-api/how-to-create-an-api-key#HowtocreateanAPIkey-CreatinganAPIkey){:target="\_blank"}.<br> Alternatively, you can log in with [OIDC access tokens](#log-in-with-access-token). |
120
120
| `OCTOPUS_SPACE` | The Space in which to run steps. See [Spaces](https://octopus.com/docs/administration/spaces){:target="\_blank"}.|
121
121
|`PROJECT` | The Octopus Deploy project to which to deploy the release. See [Setting up a project](https://octopus.com/docs/projects/setting-up-projects){:target="\_blank"}.|
122
122
@@ -170,20 +170,77 @@ For a tenanted release, see [Deploy a tenanted release](#deploy-a-tenanted-relea
170
170
171
171
## Optional Octopus Deploy steps in Codefresh pipelines
172
172
173
+
### Log in with access token
174
+
175
+
To authenticate with Octopus using an access token instead of an API key, use the `octopusdeploy-login` step. This approach enhances security by leveraging short-lived access tokens.
176
+
177
+
The step accepts an ID token as input, performing a token exchange with the Octopus server to generate an Octopus access token.
178
+
179
+
180
+
##### Usage requirements
181
+
* Codefresh `obtain_id_token` step
182
+
The `obtain_id_token` step must run _before_ the `octopusdeploy-login` step to generate the `ID_TOKEN` required by `octopusdeploy-login`.
The Octopus server must be configured to support OIDC authentication, as described in [Using OpenID Connect in Octopus with other issuers](https://octopus.com/docs/octopus-rest-api/openid-connect/other-issuers){:target="\_blank"}.
195
+
196
+
##### Example
197
+
Here's an example of a pipeline with the `octopusdeploy-login` step, the `obtain-oidc-id-token` and the `octopusdeploy-run-runbook` steps.
198
+
Here, `run-runbook` is configured to authenticate with the `OCTOPUS_ACCESS_TOKEN` instead of the `OCTOPUS_API_KEY`.
To deploy a tenanted release, use the `octopusdeploy-deploy-release-tenanted` step. Define the tenants to deploy to using either tenants or tenant tags.
176
231
For an untenanted release, see [Deploy a release](#deploy-a-release).
177
232
178
233
Customize the deployment of the tenanted release with prompted variable values, tenants, tenant tags, and guided failure mode. This step returns a json array of created deployments, with properties `DeploymentId` and `ServerTaskId`.
179
234
180
-
### Run a runbook
235
+
### Run a Runbook
236
+
237
+
To run a Runbook, use the `octopusdeploy-run-runbook` step.
238
+
239
+
The step requires the name of the Runbook to run, the project and environment name(s). Optional arguments include variables to use within the Runbook, the option to run for specific tenants or tenant tags, as well as the option to use guided failure mode.
181
240
182
-
To run a runbook, use the `octopusdeploy-run-runbook` step.
183
241
184
-
The steprequires the nameofthe runbook to run, the projectandenvironment name(s). Optional arguments include variables to use within the runbook, the option to run for specific tenants or tenant tags, as well as the option to use guided failure mode.
242
+
The stepreturns a JSON arrayofcreated Runbook runs, with properties `RunbookRunId`and`ServerTaskId`.
185
243
186
-
The step returns a JSON array of created runbook runs, with properties `RunbookRunId` and `ServerTaskId`.
187
244
188
245
### Push build information
189
246
@@ -217,6 +274,7 @@ This step has no output.
217
274
## Related articles
218
275
[Steps in pipelines]({{site.baseurl}}/docs/pipelines/steps/)
219
276
[Variables in pipelines]({{site.baseurl}}/docs/pipelines/variables/)