我在以下基本工作流程中努力将SBT用于CI流程:
~/.sbt和~/.ivy2/cachetarget我项目中的所有目录在后续步骤中:
~/.sbt并~/.ivy2/cachetarget包含.class文件和相同源代码的目录(应该是相同的签出)sbt test100%的时间,sbt test重新编译整个项目。我想了解或调试为什么会这样,因为自上次编译以来没有任何变化(嗯,什么也没有变化,那么是什么导致它相信某些东西呢?)
我当前正在将circleci与docker executor一起使用。这意味着从同一张图片开始,有一个新的docker实例运行每个步骤,尽管我希望缓存可以解决这个问题。
的相关部分.circleci/config.yml(如果您不使用圆形,则应该仍然可以使用;我已注释了我可以的内容):
---
version: 2
jobs:
# compile and cache compilation
test-compile:
working_directory: /home/circleci/myteam/myproj
docker:
- image: myorg/myimage:sbt-1.2.8
steps:
# the directory to be persisted (cached/restored) to the next step
- attach_workspace:
at: /home/circleci/myteam
# git pull to /home/circleci/myteam/myproj
- checkout
- restore_cache:
# look for a …Run Code Online (Sandbox Code Playgroud) continuous-integration scala sbt circleci circleci-workflows
Beam 的强大功能来自于它先进的窗口功能,但它也有点令人困惑。
在本地测试中看到一些奇怪的地方(我使用rabbitmq作为输入源),其中消息并不总是被发送ack,并且固定的窗口并不总是关闭,我开始挖掘StackOverflow和Beam代码库。
似乎对于何时设置确切的水印存在特定于源的问题:
(和别的)。此外,似乎存在与 相对的Checkpoints ( s) 的独立概念。CheckpointMarkWatermarks
所以我认为这是一个由多部分组成的问题:
ack删除。我刚刚开始在 Google Cloud Dataflow 上使用 Apache Beam。我有一个使用计费帐户设置的项目。我计划使用该项目的唯一目的是: 1. 数据流 - 用于所有数据处理 2. pubsub - 用于导出 Stackdriver 日志以供 Datadog 使用
现在,当我写这篇文章时,我当前没有运行任何数据流作业。
回顾过去一个月,我发现数据流成本约为 15 美元,Stackdriver Monitor API 成本约为 18 美元。看起来 Stackdriver Monitor API 的固定价格接近 1.46 美元/天。
我很好奇如何减轻这种情况。我不认为我想要或不需要 Stackdriver Monitoring。是强制性的吗?此外,虽然我觉得我没有运行任何东西,但在过去的一个小时里我看到了这一点:
所以我想问题是这些: 1. 这些调用是什么?2. 是否可以禁用数据流的 Stackdriver 监控或以其他方式降低成本?
google-cloud-platform google-cloud-dataflow stackdriver google-cloud-stackdriver