Deploy a transfer
Weik.io 2026.2weikio deploy runs the transfer on an agent, which writes the rclone configuration for that deployment and runs rclone on the schedule. Product page · Video
Watch: Deploy it, and see a file move, 3:31
The video deploys the transfer to devtest and watches a file move.
Deploy the transfer to devtest the same way you deploy any integration:
$ weikio deploy finance/supplier-invoices --env devtestThe deploy checks first that an agent serves devtest and that every secret the two remotes need has a value there. When one is missing, the command fails at once with the command that sets it, before anything starts.
Watch the first run#
The transfer runs on its schedule. To see a run now, start one from the CLI, or with Run now on the deployment’s menu in the admin UI:
$ weikio invoke finance/supplier-invoices --env devtest --endpoint direct:mft-runThe run waits behind a run already in progress and the command returns at once. Follow the log lines as the files move:
$ weikio logs finance/supplier-invoices --env devtest -fEach file is one line while the run is still going, not a batch at the end. A line prints as rclone wrote it, one JSON object after the time, the level, the route mft-log and the agent. A moved file is a line whose msg says Copied or Moved, with the file in object and its size in size, and a run ends with a line of rclone’s stats: the files, the bytes and the errors.
What the agent sets up#
At deploy, the agent resolves the two remotes like any other configuration, unseals the secrets they refer to and writes one rclone.conf for that deployment. Only the agent’s user can read it, and the passwords in it are obscured as rclone expects:
[supplier-ftp]
type = ftp
host = ftp.supplier.example
user = weikio
pass = YWJjZGVmZ2hpamtsbW5vcHFy
[invoice-archive]
type = azureblob
account = financearchive
key = SGVsbG8gdGhlcmUsIG5vdCBhIHJlYWwga2V5At five o’clock the generated route runs, in effect, this command:
rclone --config runs/<deployment>/rclone.conf \
--use-json-log -v --log-file runs/<deployment>/rclone.json \
move supplier-ftp:/outgoing invoice-archive:invoices/incoming --filter "+ *.pdf" --filter "- **"rclone writes its JSON log into the run folder, and a second route follows that file as it grows. Each file’s line reaches the hub as an OpenTelemetry log record with the integration, the version, the project, the environment and the agent on it.
Where it runs#
A transfer is placed like any integration: on every agent whose capabilities match its requirements, its environment and its project. A transfer that reads a folder at your plant needs an agent there, so give it a requirement such as requirements: { site: factory }. When two agents match, the transfer still runs once: the copies elect a leader through a lock the hub keeps, and another copy takes over when the leader’s agent goes away.
weikio status finance/supplier-invoices shows where it runs, and the admin UI lists it under Integrations › Transfers. Its page has a Runs section with every run and its files, which Runs and transferred files explains.