platform.engineering/sftpofficialv0.1.1stableresource

SFTP file resource plugin

installation
$formae plugin install sftp

SFTP Plugin for formae

A formae plugin for managing files on SFTP servers. This plugin was created as part of the Plugin SDK Tutorial.

Supported Resources

Resource Type Description
SFTP::Files::File Manages files on an SFTP server

Configuration

Configure a target in your forma file:

import "@sftp/sftp.pkl"

new formae.Target {
  label = "sftp-server"
  config = new sftp.Config {
    url = "sftp://hostname:22"
  }
}

Credentials

The plugin reads SFTP credentials from environment variables:

Variable Description
SFTP_USERNAME SFTP username
SFTP_PASSWORD SFTP password

Set these environment variables before starting the formae agent.

Examples

See the examples/ directory for usage examples.

import "@sftp/sftp.pkl"

new sftp.File {
  label = "hello"
  path = "/upload/hello.txt"
  content = "Hello from formae!"
  permissions = "0644"
}
# Apply resources
formae apply --mode reconcile examples/basic/main.pkl

License

This plugin is licensed under FSL-1.1-ALv2.

type
resource
category
config
license
FSL-1.1-ALv2
originator
platform.engineering
namespace
SFTP
latest
v0.1.1 · stable
platforms
repo
github.com/platform-engineering-labs/formae-plugin-sftp
versions (3)
v0.1.0-dev.1beta
2026-05-13
v0.1.0stable
2026-05-13
v0.1.1stable
2026-05-13