问题标签 [argo-workflows]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
argo-workflows - Argo UI 和 RBAC - 在命名空间安装中按组显示工作流
我刚刚阅读了很多关于 Argo Workflow 和 RBAC 的帖子,但找不到我们问题的答案。
- Argo 工作流程版本:v2.12.0-rc3
我们使用“命名空间”版本,不可能在我们的基础设施中增加命名空间......
- 按组使用 Keycloak 进行用户身份验证> OK
- 每个组都与一个 Kubernetes“ServiceAccount”相关联
在 Argo UI 中,是否可以让某些组仅在“命名空间”环境中看到某些工作流?
argo-workflows - Argo 等待容器卡在 Running 状态
Argo-2.11.7 发现一个奇怪的行为,命名空间中的一些工作流被卡在 Running 状态。仔细观察后,我们可以看到问题出在等待容器上。等待容器卡在运行状态的原因可能是什么?
等待容器的日志
argo-workflows - 使用 Argo Workflows 遍历 S3 文件夹中的所有文件
在 Argo 中,我有时想使用withSequence:
Workflow Step 的字段将 S3 文件夹中包含的每个项目传递给模板。我最好的想法是使用 Python 执行一个步骤,该步骤使用我在 CSV 中使用的类似过程列出整个文件夹,并将其转换为 JSON 对象列表。有没有内置的方法可以做到这一点?
kubernetes - Argo Workflow 如何使用 Kubernetes 执行控制流?
如果绝望,可以将 Argo Workflows 视为一种在 YAML 中实现并使用 Kubernetes 作为后端的编程语言。
- 可以使用定义一个过程
steps:
- 函数是具有两种形式的参数的模板:
- 参数,它们是字符串
- Artifacts,由某些工具共享的文件,例如 S3 或 NFS
- 有流量控制
- 条件由以下方式实现
when:
- 迭代器由
withSequence:
and实现withItems:
- 递归可以通过模板调用自己
- 条件由以下方式实现
模板在某种程度上直接映射到 Kubernetes YAML 规范。参数似乎通过注释共享,而工件则通过原生 Kubernetes 功能共享。
流量控制是如何实现的?Argo 使用 Kubernetes 的哪些功能来实现这一点?它与 Kubernetes 控制平面有关吗?
cloud - 带有主机文件配置的 Argo 工作流
我打算在 Argo 工作流程中使用 rclone。运行和挂载配置文件的 docker 命令是:
这工作正常。但是,将其$(pwd)/config
装入工作流容器的最佳方法是什么?我有这样的事情:
这给出了:
NOTICE: Config file "/config/rclone/rclone.conf" not found - using defaults
这也可以正常工作,但需要对配置进行硬编码:
如何从主机传递配置文件,而不是直接编写配置?
非常感谢!
kubernetes - 如何允许 Argo 工作流(Kind 集群)工作容器访问主机端口?
对于本地开发,我们希望允许 Argo 工作流工作容器访问主机上的端口,类似于 docker 中的主机模式网络。如何做到这一点?(我们将 Argo 部署在 Kind 集群之上)
谢谢!
argo-workflows - 如何将 Argo 工作流的多个输出工件指定到单个目录?
我正在使用 Argo Workflow,并希望生成 2 个单独的工件。如下定义输出工件,它告诉我path '/tmp' already mounted in inputs.artifacts.txt
。如何将 2 个单独的工件挂载到单个目录(在本例中为/tmp
)?
kubernetes - Argo 工作流 - 公平共享资源
是否可以在 Kubernetes 集群上同时调度两个(或更多)Argo 工作流,并在两个 50/50 之间共享集群资源?我正在寻找资源感知功能,如果它存在于 Argo 或其他工作流引擎中。
干杯。
single-sign-on - 想要将 argo 服务器与 keycloak 集成
我也尝试过隐身,但存在同样的问题。
目前我已经在 server-deployment.yaml 参数中添加了:- server - --auth-mode - sso
在 values.yaml 中
在 keycloak ui 中,我创建了客户端和客户端凭据。
在点击 argo 服务器 url 后,我需要手动点击登录选项,但在出现 keycloak 页面后,会再次弹出“登录失败:未授权”服务器日志:
kubernetes - Argo 提前停止工作流程,标记完成
想象一下,我有一个包含 5 个步骤的工作流程。
第 2 步可能会或可能不会创建一个文件作为其输出(然后将其用作后续步骤的输入)。
- 如果创建了文件,我想运行后续步骤。
- 如果在第 2 步中没有创建任何文件,我想将工作流标记为已完成,并且不执行第 3 步到第 5 步。
我确信必须有一种简单的方法来做到这一点,但我无法弄清楚如何。
我尝试在没有创建文件时使第 2 步返回非零退出代码,然后
when: "{{steps.step2.outputs.exitCode}} == 0"
在第 3 步上使用,但这仍然执行第 4 步和第 5 步(更不用说将第 2 步标记为“失败”)
所以我没有想法,任何建议都非常感谢。