SSL - Write Certificate Pem and Key to the Filesystem

Octopus.Script exported 2020-08-13 by bobjwalker belongs to ‘SSL’ category.

Export the PEM and Key from an SSL certificate to the File System. This is useful in Linux for securing websites or Docker containers

Parameters

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

Root SSL Export Path

sslExportPath =

The base directory the key and pem file will be saved to

PEM File Name

sslPemFile =

The filename to write the PEM to

Key File Name

sslKeyFile =

The filename to write the Key to

SSL Certificate Variable

sslCertificate =

The name of the SSL certificate Variable

Script body

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


$CertName = $OctopusParameters["sslCertificate.Name"] 
Write-Host "Writing PEM and Key files for $Certname"

New-Item -ItemType directory $sslExportPath -Force -Verbose

"Certificate Pem:"
$pemPath = join-path $sslExportPath $sslPemFile
$OctopusParameters["sslCertificate.CertificatePem"] | out-file $pemPath -Force -Verbose

"-" * 30

"Certificate Key: "
$keypath = join-path $sslExportPath $sslKeyFile
$OctopusParameters["sslCertificate.PrivateKeyPem"] | out-file $keyPath -Force -Verbose

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": "9e7f1836-c7c5-4d52-bd9e-0948114b2a0e",
  "Name": "SSL - Write Certificate Pem and Key to the Filesystem",
  "Description": "Export the PEM and Key from an SSL certificate to the File System. This is useful in Linux for securing websites or Docker containers",
  "Version": 7,
  "ExportedAt": "2020-08-13T07:41:35.949Z",
  "ActionType": "Octopus.Script",
  "Author": "bobjwalker",
  "Packages": [],
  "Parameters": [
    {
      "Id": "c9cdd622-1a9a-4e5e-9eaa-ad738b76b356",
      "Name": "sslExportPath",
      "Label": "Root SSL Export Path",
      "HelpText": "The base directory the key and pem file will be saved to",
      "DefaultValue": "",
      "DisplaySettings": {
        "Octopus.ControlType": "SingleLineText"
      }
    },
    {
      "Id": "9211d56c-068e-47c5-9613-0f77eda72dca",
      "Name": "sslPemFile",
      "Label": "PEM File Name",
      "HelpText": "The filename to write the PEM to",
      "DefaultValue": "",
      "DisplaySettings": {
        "Octopus.ControlType": "SingleLineText"
      }
    },
    {
      "Id": "39dbe4a6-60c5-4bd2-8ad9-03a28f7148f0",
      "Name": "sslKeyFile",
      "Label": "Key File Name",
      "HelpText": "The filename to write the Key to",
      "DefaultValue": "",
      "DisplaySettings": {
        "Octopus.ControlType": "SingleLineText"
      }
    },
    {
      "Id": "65d6687e-badf-4772-ac14-70bd2790cd4d",
      "Name": "sslCertificate",
      "Label": "SSL Certificate Variable",
      "HelpText": "The name of the SSL certificate Variable",
      "DefaultValue": "",
      "DisplaySettings": {
        "Octopus.ControlType": "Certificate"
      }
    }
  ],
  "Properties": {
    "Octopus.Action.RunOnServer": "false",
    "Octopus.Action.Script.ScriptSource": "Inline",
    "Octopus.Action.Script.Syntax": "PowerShell",
    "Octopus.Action.Script.ScriptBody": "\n$CertName = $OctopusParameters[\"sslCertificate.Name\"] \nWrite-Host \"Writing PEM and Key files for $Certname\"\n\nNew-Item -ItemType directory $sslExportPath -Force -Verbose\n\n\"Certificate Pem:\"\n$pemPath = join-path $sslExportPath $sslPemFile\n$OctopusParameters[\"sslCertificate.CertificatePem\"] | out-file $pemPath -Force -Verbose\n\n\"-\" * 30\n\n\"Certificate Key: \"\n$keypath = join-path $sslExportPath $sslKeyFile\n$OctopusParameters[\"sslCertificate.PrivateKeyPem\"] | out-file $keyPath -Force -Verbose\n"
  },
  "Category": "SSL",
  "HistoryUrl": "https://github.com/OctopusDeploy/Library/commits/master/step-templates//opt/buildagent/work/75443764cd38076d/step-templates/ssl-write-certificate-pem-and-key.json",
  "Website": "/step-templates/9e7f1836-c7c5-4d52-bd9e-0948114b2a0e",
  "Logo": "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",
  "$Meta": {
    "Type": "ActionTemplate"
  }
}

History

Page updated on Thursday, August 13, 2020