×

Red Hat OpenShift GitOps argocd 命令行工具仅为技术预览功能。技术预览功能不受 Red Hat 生产服务级别协议 (SLA) 支持,并且可能功能不完整。Red Hat 不建议在生产环境中使用它们。这些功能可让客户提前访问即将推出的产品功能,从而能够在开发过程中测试功能并提供反馈。

有关 Red Hat 技术预览功能的支持范围的更多信息,请参阅 技术预览功能支持范围

本节列出了 GitOps argocd 命令行基础命令。

基本语法

GitOps argocd 命令行界面是一个用于通过命令行配置和管理 Red Hat OpenShift GitOps 和 Argo CD 资源的工具。

默认模式

在默认模式下,argocd 命令行客户端通过 API 请求与 Argo CD 服务器组件通信。要执行命令,必须使用您的 Argo CD 凭据登录到 Argo CD 服务器,并在整个会话期间保持登录状态。如果登录会话超时,可以使用 relogin 命令重新登录。使用完 argocd 命令后,可以使用 logout 命令注销。

命令语法

argocd [命令或选项] [参数…​]

核心模式

在此模式下,CLI 通过 `kubeconfig` 文件中设置的凭据直接与 Kubernetes API 服务器通信。默认的 `kubeconfig` 文件位于 `$HOME/.kube/config` 位置。您可以使用 `KUBECONFIG` 环境变量自定义此文件。要以 `core` 模式执行命令,您可以使用 `--core` 参数,无需登录 Argo CD 服务器进行用户身份验证。

要指定 Repo 服务器组件名称(格式为 `-repo-server`),您可以使用 `--repo-server-name` 命令行选项或设置 `ARGOCD_REPO_SERVER_NAME` 环境变量。

命令语法

KUBECONFIG=~/.kube/config argocd --core [命令或选项] [参数…​]

您可以选择以下选项之一以 `core` 模式执行 `argocd` 命令

如果正在使用多个 Argo CD 实例,请将当前上下文的默认命名空间设置为要与其交互的 ArgoCD 实例的命名空间。

  • 带有默认上下文的默认 `kubeconfig` 文件

    argocd --core [命令或选项] [参数…​]

    示例 1:显示应用程序列表
    $ argocd --core app list --repo-server-name openshift-gitops-repo-server
    示例 2:显示应用程序列表
    $ ARGOCD_REPO_SERVER_NAME=openshift-gitops-repo-server argocd --core app list
  • 带有自定义上下文的默认 `kubeconfig` 文件

    argocd --core --kube-context [上下文] [命令或选项] [参数…​]

    示例 1:显示应用程序列表
    $ argocd --core --kube-context kubeadmin-local app list --repo-server-name openshift-gitops-repo-server
    示例 2:显示应用程序列表
    $ ARGOCD_REPO_SERVER_NAME=openshift-gitops-repo-server argocd --core --kube-context kubeadmin-local app list
  • 带有默认上下文的自定义 `kubeconfig` 文件

    KUBECONFIG=~/.kube/custom_config argocd --core [命令或选项] [参数…​]

    示例:显示应用程序列表
    $ KUBECONFIG=~/.kube/custom_config argocd --core app list --repo-server-name openshift-gitops-repo-server
  • 带有自定义上下文的自定义 `kubeconfig` 文件

    KUBECONFIG=~/.kube/custom_config argocd --core --kube-context [上下文] [命令或选项] [参数…​]

    示例:显示应用程序列表
    $ KUBECONFIG=~/.kube/custom_config argocd --kube-context kubeadmin-local --core app list --repo-server-name openshift-gitops-repo-server

全局选项

全局选项适用于 `argocd` 的所有子命令。

表 1. 全局选项
选项 参数类型 描述

--auth-token

字符串

身份验证令牌。

--client-crt

字符串

客户端证书文件。

--client-crt-key

字符串

客户端证书密钥文件。

--config

字符串

Argo CD 配置文件的路径。默认为 `/home/user/.config/argocd/config` 路径。

--controller-name

字符串

Argo CD 应用控制器组件的名称,默认标签为 `argocd-application-controller`。

如果此组件名称的标签与默认值不同(例如,当您通过 Helm chart 安装它时),请设置 `--controller-name` 选项或 `ARGOCD_APPLICATION_CONTROLLER_NAME` 环境变量以指定组件的名称。

--core

N/A

如果设置为 `true`,CLI 将直接与 Kubernetes API 服务器通信,而不是使用 Argo CD API 服务器。

--grpc-web

N/A

为 Argo CD 服务器启用 gRPC-Web 协议。例如,如果服务器位于不支持 HTTP/2 协议的代理之后,这将非常有用。

--grpc-web-root-path

字符串

为 Argo CD 服务器启用 gRPC-Web 协议。例如,如果服务器位于不支持 HTTP/2 协议的代理之后,这将非常有用。设置 Web 根路径。

-H, --header

字符串

为 GitOps `argocd` CLI 发出的所有请求配置额外的标头。您可以通过多次设置此选项来添加多个标头。此选项还支持逗号分隔的标头。

-h, --help

N/A

GitOps `argocd` CLI 的帮助信息。

--http-retry-max

整数

设置与 Argo CD 服务器建立 HTTP 连接的最大重试次数。

--insecure

N/A

跳过服务器证书和域验证。

--kube-context

字符串

将命令定向到给定的 kube 上下文。

--logformat

字符串

将日志格式设置为文本或 JSON。默认为 `text`。

--loglevel

字符串

设置日志级别。默认为 `info`。可用级别为 `debug`、`info`、`warn` 和 `error`。日志级别按详细程度递减的顺序排列。

--plaintext

N/A

禁用传输层安全 (TLS) 协议。

--port-forward

N/A

使用端口转发连接到随机的 Argo CD 服务器端口。

--port-forward-namespace

字符串

用于端口转发的命名空间名称。

--redis-haproxy-name

字符串

Redis HA Proxy 部署的名称,默认标签为 `argocd-redis-ha-haproxy`。

如果此部署名称的标签与默认值不同(例如,当您通过 Helm chart 安装 HAProxy 时),请设置 `--redis-haproxy-name` 选项或 `ARGOCD_REDIS_HAPROXY_NAME` 环境变量以指定部署的名称。

--redis-name

字符串

Redis 部署的名称,默认标签为 `argocd-redis`。

如果此部署名称的标签与默认值不同(例如,当您通过 Helm chart 安装它时),请设置 `--redis-name` 选项或 `ARGOCD_REDIS_NAME` 环境变量以指定部署的名称。

--repo-server-name

字符串

Argo CD Repo 服务器的名称,默认标签为 `argocd-repo-server`。

如果此 Repo 服务器名称的标签与默认值不同(例如,当您通过 Helm chart 安装它时),请设置 `--repo-server-name` 选项或 `ARGOCD_REPO_SERVER_NAME` 环境变量以指定部署的名称。

--server

字符串

Argo CD 服务器地址。

--server-crt

字符串

服务器证书文件。

--server-name

字符串

Argo CD API 服务器的名称,默认标签为 `argocd-server`。

如果此 Argo CD API 服务器名称的标签与默认值不同(例如,当您通过 Helm chart 安装它时),请设置 `--server-name` 选项或 `ARGOCD_SERVER_NAME` 环境变量以指定部署的名称。

实用程序命令

argocd

GitOps `argocd` CLI 的父命令。

示例:显示所有选项
$ argocd

version

打印 CLI 的版本信息。

命令语法

argocd version [标志]

示例:将客户端和服务器的完整版本打印到标准输出
$ argocd version
示例:仅打印客户端的完整版本,不会连接到服务器。
$ argocd version --client
示例:仅打印服务器的完整版本
$ argocd version --server <server_url>
示例:以 JSON 格式打印客户端和服务器的完整版本
$ argocd version -o json
示例:以 YAML 格式打印客户端和服务器的核心版本字符串
$ argocd version --short -o yaml

help

打印关于应用程序中任何命令的帮助消息。

命令语法

argocd help [命令] [标志]

示例:获取所有可用命令的帮助文本
$ argocd help
示例:获取 `admin` 子命令的帮助文本
$ argocd help admin

completion

将 `bash` 或 `zsh` shell 代码补全代码写入标准输出。

命令语法

argocd completion SHELL [标志]

对于 `bash`,请确保已安装并启用了 Bash 代码补全功能。或者,将其写入文件并在您的 `.bash_profile` 中对其进行引用。

示例:在当前 shell 中访问代码补全
# source <(argocd completion bash)

对于zsh,请确保已安装并启用 Bash 自动补全功能。

例如:添加到您的~/.zshrc 文件中,并在当前 shell 中访问自动补全功能。
source <(argocd completion zsh)
compdef _argocd argocd