kotlin-dsl/FtpDeployer.xml (113 lines of code) (raw):

<?xml version="1.0" encoding="UTF-8"?> <dsl-extension kind="buildStep" type="ftp-deploy-runner" generateDslJar="true"> <class name="FTPUpload"> <description> An FTP Upload build step. </description> </class> <function name="ftpUpload"> <description> Adds an FTP Upload build step. @see FTPUpload </description> </function> <params> <param name="jetbrains.buildServer.deployer.targetUrl" dslName="targetUrl" mandatory="true"> <description> An FTP server (use a hostname or IP address) and a remote directory (relative to the FTP user's home). </description> </param> <param name="jetbrains.buildServer.deployer.ftp.securityMode" dslName="securityMode" type="SecurityMode"> <description> Choose between an insecure and a secure connection (FTPS, FTPES). </description> </param> <param name="jetbrains.buildServer.deployer.ftp.dataChannelProtection" dslName="dataChannelProtection" type="DataChannelProtectionMode"> <description> Choose a data protection scheme if FTPS or FTPES is used. </description> </param> <param name="jetbrains.buildServer.deployer.ftp.authMethod" dslName="authMethod" type="compound"> <description> Authentication method. </description> <option name="anonymous" value="ANONYMOUS"/> <option name="usernameAndPassword" value="USER_PWD"> <param name="jetbrains.buildServer.deployer.username" dslName="username"/> <param name="secure:jetbrains.buildServer.deployer.password" dslName="password"/> </option> </param> <param name="jetbrains.buildServer.deployer.ftp.ftpMode" dslName="ftpMode" type="FTPMode"> <description> FTP Mode. </description> </param> <param name="jetbrains.buildServer.deployer.ftp.transferMethod" dslName="transferMode" type="TransferMode"> <description> Optional. An FTP transfer mode to force. </description> </param> <param name="jetbrains.buildServer.deployer.sourcePath" dslName="sourcePath" mandatory="true"> <description> Newline- or comma-separated paths to files/directories to be deployed. Ant-style wildcards like dir/**/*.zip and target directories like *.zip => winFiles,unix/distro.tgz => linuxFiles, where winFiles and linuxFiles are target directories, are supported. </description> </param> </params> <types> <enum name="DataChannelProtectionMode"> <option name="DISABLE" value="D"/> <option name="CLEAR" value="C"/> <option name="SAFE" value="S"/> <option name="CONFIDENTIAL" value="E"/> <option name="PRIVATE" value="P"/> </enum> <enum name="SecurityMode"> <option name="NONE" value="0"/> <option name="FTPS" value="1"/> <option name="FTPES" value="2"/> </enum> <enum name="FTPMode"> <option name="ACTIVE" value="ACTIVE"/> <option name="PASSIVE" value="PASSIVE"/> </enum> <enum name="TransferMode"> <option name="AUTO" value="AUTO"/> <option name="BINARY" value="BINARY"/> <option name="ASCII" value="ASCII"/> </enum> </types> <examples> <example> <description> Adds an FTP Upload build step with FTPS security connection mode, private protection mode, authentication via username and password, binary transfer mode and active FTP mode. See options in [documentation](https://www.jetbrains.com/help/teamcity/?FTP+Upload). </description> <code> ftpUpload { name = "My FTP Upload step" targetUrl = "8.8.8.8" securityMode = FTPUpload.SecurityMode.FTPS dataChannelProtection = FTPUpload.DataChannelProtectionMode.PRIVATE authMethod = usernameAndPassword { username = "username" password = "credentialsJSON:******" } ftpMode = FTPUpload.FTPMode.ACTIVE transferMode = FTPUpload.TransferMode.BINARY sourcePath = """ dir/**/*.zip *.zip => winFiles unix/distro.tgz => linuxFile """.trimIndent() } </code> </example> </examples> </dsl-extension>