在 Argo 工作流中,要创建 Kubernetes 秘钥,可以使用 Kubernetes API 来完成。以下是一个示例代码,演示了如何在 Argo 工作流中创建一个 Kubernetes 秘钥。
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
generateName: create-k8s-secret-
spec:
entrypoint: create-k8s-secret
templates:
- name: create-k8s-secret
container:
image: bitnami/kubectl
command: ["/bin/sh", "-c"]
args:
- |
kubectl create secret generic my-secret --from-literal=username=admin --from-literal=password=passw0rd
outputs:
artifacts:
- name: k8s-secret
path: /tmp/k8s-secret.yaml
- name: print-k8s-secret
inputs:
artifacts:
- name: k8s-secret
path: /tmp/k8s-secret.yaml
container:
image: bitnami/kubectl
command: ["/bin/sh", "-c"]
args:
- |
cat /tmp/k8s-secret.yaml
这个 Argo 工作流定义了两个步骤:create-k8s-secret
和 print-k8s-secret
。在 create-k8s-secret
步骤中,我们使用 bitnami/kubectl
镜像来创建一个名为 my-secret
的 Kubernetes 秘钥,并设置了两个键值对:username=admin
和 password=passw0rd
。创建的秘钥将被保存到 /tmp/k8s-secret.yaml
文件中。
在 print-k8s-secret
步骤中,我们读取之前创建的秘钥文件,并将其打印到日志中。
这个示例中使用了 bitnami/kubectl
镜像,你可以根据自己的需要选择其他合适的镜像。确保你的 Argo 工作流环境中有适当的权限来创建 Kubernetes 秘钥。