Skip to content

Commit

Permalink
Merge branch 'master' into fnm/create-package-step
Browse files Browse the repository at this point in the history
  • Loading branch information
tothegills authored Sep 23, 2024
2 parents 60ab651 + c8e5355 commit 37bf007
Show file tree
Hide file tree
Showing 6 changed files with 532 additions and 0 deletions.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
174 changes: 174 additions & 0 deletions incubating/octopusdeploy-deploy-release-tenanted/step.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
version: "1.0"
kind: step-type
metadata:
name: octopusdeploy-deploy-release-tenanted
version: 1.0.0
title: Deploy a tenanted release in Octopus Deploy
isPublic: true
description: Deploy a tenanted release in Octopus Deploy
sources:
- "https://github.com/codefresh-io/steps/tree/master/incubating/octopusdeploy-deploy-release-tenanted"
stage: incubating
official: true
categories:
- deployment
icon:
type: svg
url: "https://cdn.jsdelivr.net/gh/codefresh-io/steps/incubating/octopusdeploy-deploy-release/deploy-release-tenanted.svg"
background: "#F4F6F8"
maintainers:
- name: OctopusDeploy
examples:
- description: "Deploy using tenant name"
workflow:
deploy-release-tenanted:
type: octopusdeploy-deploy-release-tenanted
arguments:
OCTOPUS_API_KEY: "${{OCTOPUS_API_KEY}}"
OCTOPUS_URL: "${{OCTOPUS_URL}}"
OCTOPUS_SPACE: "Spaces-1"
PROJECT: "Project Name"
RELEASE_NUMBER: "1.0.0"
ENVIRONMENT: "Production"
TENANTS:
- "Tenant1"
- "Tenant2"
VARIABLES:
- "prompted-variable1:prompted-value1"
- "prompted-variable2:prompted-value2"
USE_GUIDED_FAILURE: "false"
- description: "Deploy using tenant tags"
workflow:
deploy-release-tenanted:
type: octopusdeploy-deploy-release-tenanted
arguments:
OCTOPUS_API_KEY: "${{OCTOPUS_API_KEY}}"
OCTOPUS_URL: "${{OCTOPUS_URL}}"
OCTOPUS_SPACE: "Spaces-1"
PROJECT: "Another Project Name"
RELEASE_NUMBER: "2.0.0"
ENVIRONMENT: "Development"
TENANT_TAGS:
- "tagSetA/someTagB"
- "tagSetC/someTagD"
spec:
arguments: |-
{
"definitions": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"name": "octopusdeploy-deploy-release-tenanted",
"additionalProperties": false,
"patterns": [],
"required": ["OCTOPUS_API_KEY", "OCTOPUS_URL", "OCTOPUS_SPACE", "PROJECT", "RELEASE_NUMBER", "ENVIRONMENT"],
"properties": {
"OCTOPUS_API_KEY": {
"type": "string",
"description": "API key for octopus deploy (required)"
},
"OCTOPUS_URL": {
"type": "string",
"description": "URL of the octopus deploy server (required)"
},
"OCTOPUS_SPACE": {
"type": "string",
"description": "API key for octopus deploy (required)"
},
"PROJECT": {
"type": "string",
"description": "The name of the project associated with this release (required)"
},
"RELEASE_NUMBER": {
"type": "string",
"description": "The release number to deploy (required)"
},
"ENVIRONMENT": {
"type": "string",
"description": "An environment name to deploy to (required)"
},
"TENANTS": {
"type": "array",
"items": {
"type": "string"
},
"description": "The list of tenant names to deploy to (optional)"
},
"TENANT_TAGS": {
"type": "array",
"items": {
"type": "string"
},
"description": "The list of tenant tag canonical names to locate tenants to deploy to. Format: Tag/Label (optional)"
},
"VARIABLES": {
"type": "array",
"items": {
"type": "string"
},
"description": "Set the value for a prompted variable. Format: Label:Value (optional)"
},
"USE_GUIDED_FAILURE": {
"type": "string",
"description": "Whether to use guided failure mode if errors occur during the deployment. (optional)"
}
}
}
returns: |-
{
"definitions": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"additionalProperties": true,
"patterns": [],
"required": [
"DEPLOYMENTS"
],
"properties": {
"DEPLOYMENTS": {
"type": "array",
"description": "The list of deployments",
"items": {
"type": "object",
"additionalProperties": true,
"patterns": [],
"required": [
"DeploymentId",
"ServerTaskId"
],
"properties": {
"DeploymentId": {
"type": "string",
"description": "The deployment Id"
},
"ServerTaskId": {
"type": "string",
"description": "The server task Id"
}
}
}
}
}
}
stepsTemplate: |-
deploy-release-tenanted:
name: octopusdeploy-deploy-release-tenanted
image: octopuslabs/octopus-cli
environment:
- 'OCTOPUS_URL=[[.Arguments.OCTOPUS_URL]]'
- 'OCTOPUS_API_KEY=[[.Arguments.OCTOPUS_API_KEY]]'
- 'OCTOPUS_SPACE=[[.Arguments.OCTOPUS_SPACE]]'
commands:
- OUTPUT=$(octopus release deploy
--project "[[.Arguments.PROJECT]]"
--version "[[.Arguments.RELEASE_NUMBER]]"
--environment "[[.Arguments.ENVIRONMENT]]"
--no-prompt
--output-format json
[[- range $val := .Arguments.TENANTS ]] --tenant "[[ $val ]]" [[ end ]]
[[- range $val := .Arguments.TENANT_TAGS ]] --tenant-tag "[[ $val ]]" [[ end ]]
[[- range $val := .Arguments.VARIABLES ]] --variable "[[ $val ]]" [[ end ]]
[[- if .Arguments.USE_GUIDED_FAILURE ]] --guided-failure "[[ .Arguments.USE_GUIDED_FAILURE ]]" [[ end ]])
- cf_export DEPLOYMENTS=$OUTPUT
delimiters:
left: "[["
right: "]]"
10 changes: 10 additions & 0 deletions incubating/octopusdeploy-deploy-release/deploy_release.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
145 changes: 145 additions & 0 deletions incubating/octopusdeploy-deploy-release/step.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
version: "1.0"
kind: step-type
metadata:
name: octopusdeploy-deploy-release
version: 1.0.0
title: Deploy a release in Octopus Deploy
isPublic: true
description: Deploy a release in Octopus Deploy
sources:
- "https://github.com/codefresh-io/steps/tree/master/incubating/octopusdeploy-deploy-release"
stage: incubating
official: true
categories:
- deployment
icon:
type: svg
url: "https://cdn.jsdelivr.net/gh/codefresh-io/steps/incubating/octopusdeploy-deploy-release/deploy_release.svg"
background: "#F4F6F8"
maintainers:
- name: OctopusDeploy
examples:
- workflow:
deploy-release:
type: octopusdeploy-deploy-release
arguments:
OCTOPUS_API_KEY: "${{OCTOPUS_API_KEY}}"
OCTOPUS_URL: "${{OCTOPUS_URL}}"
OCTOPUS_SPACE: "Spaces-1"
PROJECT: "Project Name"
RELEASE_NUMBER: "1.0.0"
ENVIRONMENTS:
- "Development"
- "Production"
VARIABLES:
- "prompted-variable1:prompted-value1"
- "prompted-variable2:prompted-value2"
USE_GUIDED_FAILURE: "false"
spec:
arguments: |-
{
"definitions": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"name": "octopusdeploy-deploy-release",
"additionalProperties": false,
"patterns": [],
"required": ["OCTOPUS_API_KEY", "OCTOPUS_URL", "OCTOPUS_SPACE", "PROJECT", "RELEASE_NUMBER", "ENVIRONMENTS"],
"properties": {
"OCTOPUS_API_KEY": {
"type": "string",
"description": "API key for octopus deploy (required)"
},
"OCTOPUS_URL": {
"type": "string",
"description": "URL of the octopus deploy server (required)"
},
"OCTOPUS_SPACE": {
"type": "string",
"description": "API key for octopus deploy (required)"
},
"PROJECT": {
"type": "string",
"description": "The name of the project associated with this release (required)"
},
"RELEASE_NUMBER": {
"type": "string",
"description": "The release number to deploy (required)"
},
"ENVIRONMENTS": {
"type": "array",
"items": {
"type": "string"
},
"description": "The list of environment names to deploy to (required)"
},
"VARIABLES": {
"type": "array",
"items": {
"type": "string"
},
"description": "Set the value for a prompted variable in the format Label:Value (optional)"
},
"USE_GUIDED_FAILURE": {
"type": "string",
"description": "A multi-line list of prompted variable values. Format: name:value (optional)"
}
}
}
returns: |-
{
"definitions": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"additionalProperties": true,
"patterns": [],
"required": [
"DEPLOYMENTS"
],
"properties": {
"DEPLOYMENTS": {
"type": "array",
"description": "The list of deployments",
"items": {
"type": "object",
"additionalProperties": true,
"patterns": [],
"required": [
"DeploymentId",
"ServerTaskId"
],
"properties": {
"DeploymentId": {
"type": "string",
"description": "The deployment Id"
},
"ServerTaskId": {
"type": "string",
"description": "The server task Id"
}
}
}
}
}
}
stepsTemplate: |-
deploy-release:
name: octopusdeploy-deploy-release
image: octopuslabs/octopus-cli
environment:
- 'OCTOPUS_URL=[[.Arguments.OCTOPUS_URL]]'
- 'OCTOPUS_API_KEY=[[.Arguments.OCTOPUS_API_KEY]]'
- 'OCTOPUS_SPACE=[[.Arguments.OCTOPUS_SPACE]]'
commands:
- OUTPUT=$(octopus release deploy
--project "[[.Arguments.PROJECT]]"
--version "[[.Arguments.RELEASE_NUMBER]]"
--no-prompt
--output-format json
[[- range $val := .Arguments.ENVIRONMENTS ]] --environment "[[ $val ]]" [[ end ]]
[[- range $val := .Arguments.VARIABLES ]] --variable "[[ $val ]]" [[ end ]]
[[- if .Arguments.USE_GUIDED_FAILURE ]] --guided-failure "[[ .Arguments.USE_GUIDED_FAILURE ]]" [[ end ]])
- cf_export DEPLOYMENTS=$OUTPUT
delimiters:
left: "[["
right: "]]"
14 changes: 14 additions & 0 deletions incubating/octopusdeploy-run-runbook/run_a_runbook.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 37bf007

Please sign in to comment.