rsync 插件可用于将文件传输到远程机器,然后运行用户定义的脚本。

YAML 配置示例

kind: pipeline
name: default

steps:
- name: deploy
  image: drillster/drone-rsync
  settings:
    hosts: [ "server-prod1", "server-prod2" ]
    source: ./target
    target: ~/packages
    include: [ "app.jar", "app.jar.md5" ]
    script:
      - cd ~/packages
      - md5sum -c app.jar.md5

字段属性说明

  • hosts

    array必填项

    主机列表

    默认值:none

  • port

    number可选项

    远程机器上要连接的端口

    默认值:22

  • user

    string可选项

    用户在远程机器上进行连接

    默认值:root

  • key

    string可选项

    远程机器的 SSH 私钥

    推荐使用密钥 (Secret) 功能

    默认值:none

  • source

    string可选项

    从源文件夹复制

    默认值:./

  • target

    string可选项

    复制到远程计算机上的目标文件夹

    默认值:none

  • include

    array可选项

    rsync 包含过滤器

    默认值:none

  • exclude

    array可选项

    rsync 排除过滤器

    默认值:none

  • recursive

    boolean可选项

    指示插件递归复制

    默认值:false

  • delete

    boolean可选项

    指示插件在复制前删除目标文件夹

    默认值:false

  • args

    string可选项

    指示插件使用这些附加的 rsync CLI 参数,如"--blocking-io"。

    默认值:none

  • script

    array可选项

    rsync 发生后通过 SSH 在远程机器上执行的命令列表

    默认值:none

  • prescript

    array可选项

    在 rsync 之前在远程机器上执行的命令列表

    默认值:none