从tftpconnection的密码文件中读取

时间:2014-11-14 16:01:25

标签: talend

我正在尝试使用tFTPConnection从FTP站点下载某些文件。

这是一个常规的FTP连接,在端口21上连接。

我希望能够从文件中读取密码,而不是将密码硬编码到作业中。

在我完成连接然后打印成功的那一刻:

Current job layout

关于如何处理或解决这个问题的任何建议?

1 个答案:

答案 0 :(得分:0)

Talend支持上下文变量的概念,允许您在运行时定义用于它们的值。

通常使用此方法,以便您可以“连接”连接,然后在多个环境中部署作业,并将连接连接到特定于环境的端点。

例如,作业可能需要连接到数据库,但每个开发,测试和生产环境的数据库都不同。

不是将连接参数硬编码到作业,而是在上下文组下创建一些上下文变量,并在连接参数中引用这些上下文变量:

Contextualised tMySqlConnection

现在,在运行时,我们让Talend作业使用隐式上下文加载从具有相关连接参数的文件加载这些上下文:

Example implicit context load settings

在这种情况下,作业将在运行时从名为test.csv的CSV中读取上下文变量,如下所示:

Example contexts file

现在,当这个作业运行时,它将尝试使用root用户和空密码连接到localhost:3306 / test。

如果我们在另一台机器上有另一个上下文文件(但具有相同的文件路径),那么这可能是指某个其他服务器上的数据库,或者只是使用不同的凭据,而该作业将改为连接到其他数据库。

对于您的用例,您只需使用FTP连接设置创建一个上下文组,包括密码(或者可能只是密码的上下文),然后以相同的方式引用它:

Contextualised password with a tFtpConnection component