Encrypt Encrypt

yaml
type: "io.kestra.plugin.crypto.openpgp.Encrypt"

Encrypt a file with PGP

Examples

Encrypt a file not signed

yaml
id: crypto_encrypt
namespace: company.team

inputs:
  - id: file
    type: FILE

tasks:
  - id: encrypt
    type: io.kestra.plugin.crypto.openpgp.Encrypt
    from: "{{ inputs.file }}"
    key: |
      -----BEGIN PGP PUBLIC KEY BLOCK----- ...
    recipients:
      - [email protected]

Encrypt a file signed

yaml
id: crypto_encrypt
namespace: company.team

inputs:
  - id: file
    type: FILE

tasks:
  - id: encrypt
    type: io.kestra.plugin.crypto.openpgp.Encrypt
    from: "{{ inputs.file }}"
    key: |
      -----BEGIN PGP PUBLIC KEY BLOCK----- ...
    recipients:
      - [email protected]
    signPublicKey: |
      -----BEGIN PGP PUBLIC KEY BLOCK----- ...
    signPrivateKey: |
      -----BEGIN PGP PRIVATE KEY BLOCK-----
    signPassphrase: my-passphrase
    signUser: [email protected]

Properties

recipients

  • Type: array
  • SubType: string
  • Dynamic: ✔️
  • Required: ✔️

The list of recipients the file will be generated.

from

  • Type: string
  • Dynamic: ✔️
  • Required:

The file to crypt

key

  • Type: string
  • Dynamic: ✔️
  • Required:

The public key use to sign the files

Must be an ascii key export with gpg --export -a

signPassphrase

  • Type: string
  • Dynamic: ✔️
  • Required:

The passphrase use to unlock the secret ring

signPrivateKey

  • Type: string
  • Dynamic: ✔️
  • Required:

The public key use to sign the files

Must be an ascii key export with gpg --export -a

signPublicKey

  • Type: string
  • Dynamic: ✔️
  • Required:

The public key use to sign the files

Must be an ascii key export with gpg --export -a

signUser

  • Type: string
  • Dynamic: ✔️
  • Required:

The user that will signed the files

If you want to sign the file, you need to provide a privateKey

Outputs

uri

  • Type: string
  • Required:
  • Format: uri

The encrypted files uri

Was this page helpful?