当我们运行Meltano构建/测试周期(例如在CI/CD管道中)时,我们希望我们的Singer管道运行如下:
。
start_date。(最初对一个月数据进行的“快速”测试最终会成为一个运行时间更长的测试,涵盖多个月。)对于任何点击名称tap-mysource,我们应该能够设置$TAP_MYSOURCE_START_DATE以提供默认的start_date配置值。为CI构建提供默认相对启动时间的好方法是什么?例如,滚动21天窗口?
我认为大多数用例可能运行在GitHub操作上,但我们也使用GitLab CI。
发布于 2022-04-01 15:58:38
到目前为止,还没有一种表达式语言可以执行today()-n并以这种方式提供相对的开始日期。但是,您可以在执行之前用相对日期初始化环境变量,Meltano可以通过命名约定<PLUGIN_NAME>_<SETTING_NAME>将该动态输入传递给tap。
根据您的操作系统风格,这可能需要稍加调整:
对Mac:
N_DAYS=1
TAP_MYSOURCE_START_DATE=$(date -v-1d "+%Y-%m-%d")
echo "Using dynamic start date of today-$N_DAYS: $TAP_MYSOURCE_START_DATE"
meltano elt tap-mysource target-mydest关于Ubuntu:
N_DAYS=1
TAP_MYSOURCE_START_DATE=$(date +%Y-%m-%d -d "$N_DAYS day ago")
echo "Using dynamic start date of today-$N_DAYS: $TAP_MYSOURCE_START_DATE"
meltano elt tap-mysource target-mydest参考:
https://stackoverflow.com/questions/70584527
复制相似问题