Encrypt a file with PGP.

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

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
SubType string

The list of recipients the file will be generated.

The file to crypt

The public key use to sign the files

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

The passphrase use to unlock the secret ring

The public key use to sign the files

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

The public key use to sign the files

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

The user that will signed the files

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

Format uri

The encrypted files uri