elastic-package 参考
编辑elastic-package
参考编辑
elastic-package
是一个用 Go 编写的命令行工具,用于开发 Elastic 包。它可以帮助你对你的包进行 lint、格式化、测试、构建和推广。
入门编辑
-
下载并构建 elastic-package 二进制文件的最新主分支
git clone https://github.com/elastic/elastic-package.git make build
确保你已正确设置
$GOPATH
和$PATH
环境变量。elastic-package
必须可以从你的$PATH
中访问。 -
切换到正在开发的包所在的目录
cd my-package
-
运行
help
命令以查看可用命令elastic-package help
命令参考编辑
以下 elastic-package
命令可用。有关特定命令的更多详细信息,请运行 elastic-package help <command>
。
一些命令具有全局上下文,这意味着你可以从任何地方执行它们。其他命令具有包上下文;这些命令必须在包根文件夹下的某个地方执行,并且该命令只会对该包的内容进行操作。
elastic-package help
编辑
上下文:全局
使用此命令列出 elastic-package
下可用的所有命令以及每个命令的简要说明。
elastic-package build
编辑
上下文:包
使用此命令构建包。目前,它只支持“integration”包类型。
构建的包存储在包含你的包文件夹的本地 Git 存储库检出的根文件夹下的“build/”文件夹中。该命令还将在你的包文件夹中渲染 README 文件,前提是在 _dev/build/docs/README.md
中存在相应的模板文件。你的包下的所有 _dev
目录都将被省略。
构建的包由本地运行的 Elastic Package Registry 提供服务(参见“elastic-package stack”)。因此,如果你希望本地包由本地 Elastic Package Registry 提供服务,请确保首先使用“elastic-package build”构建该包。
你也可以将构建的包发布到全局包注册表服务。
elastic-package check
编辑
上下文:包
使用此命令验证包是否在格式、验证和构建方面正确。
它将依次执行 format、lint 和 build 命令。
elastic-package clean
编辑
上下文:包
使用此命令清理用于构建包的资源。
该命令将删除构建的包文件(在 build/ 中)、用于管理开发堆栈的文件(在 ~/.elastic-package/stack/development
中)以及堆栈服务日志(在 ~/.elastic-package/tmp/service_logs
中)。
elastic-package create
编辑
上下文:全局
使用此命令创建新包或添加更多数据流。
该命令可以使用嵌入式包模板帮助引导包的第一个草稿。然后,你可以使用它来使用更多数据流扩展包。
有关创建新包的详细信息,请查看 HOWTO 指南.
elastic-package export
编辑
上下文:包
使用此命令导出与包相关的资产,例如 Kibana 仪表板。
elastic-package format
编辑
上下文:包
使用此命令格式化包文件。
格式化程序支持 JSON 和 YAML 格式,并跳过“ingest_pipeline”目录,因为它很难正确格式化 Handlebars 模板文件。因此,格式化的文件将被覆盖。
elastic-package install
编辑
上下文:包
使用此命令在 Kibana 中上传和安装包。
从 Kibana 版本 8.7.0
开始,包不需要在包注册表中公开即可安装。相反,它们可以作为使用 elastic-package build
命令构建的 zip 文件上传。
- 确保你已验证你的包。在构建之前,通过运行
elastic-package check
命令来验证包。 - 使用
--zip
参数安装特定的 zip 文件,或者使用install
命令构建包并将构建的 zip 文件上传到 Kibana。
使用 --zip
安装编辑
安装压缩包。此方法依赖于包注册表。
elastic-package stack up -d elastic-package install --zip /home/user/Coding/work/integrations/build/packages/elastic_package_registry-0.0.6.zip -v
使用 elastic-package install
安装编辑
构建并上传压缩包,而无需依赖包注册表。
elastic-package stack up -v -d elastic-package install -v
自定义编辑
包安装可以自定义,以便在其他 Kibana 实例中安装,使用以下变量
-
ELASTIC_PACKAGE_KIBANA_HOST
-
ELASTIC_PACKAGE_ELASTICSEARCH_USERNAME
-
ELASTIC_PACKAGE_ELASTICSEARCH_PASSWORD
-
ELASTIC_PACKAGE_CA_CERT
例如
export ELASTIC_PACKAGE_KIBANA_HOST="https://test-installation.kibana.test:9243" export ELASTIC_PACKAGE_ELASTICSEARCH_USERNAME="elastic" export ELASTIC_PACKAGE_ELASTICSEARCH_PASSWORD="xxx" # if it is a public instance, this variable should not be needed export ELASTIC_PACKAGE_CA_CERT="" elastic-package install --zip elastic_package_registry-0.0.6.zip -v
旧版本编辑
对于 Kibana <8.7.0
版本,包必须通过包注册表公开。在开发的情况下,这意味着包应该事先构建,然后启动 Elastic 堆栈。或者,至少需要在 Elastic 堆栈中重新启动 package-registry
服务
elastic-package build -v elastic-package stack up -v -d # elastic-package stack up -v -d --services package-registry elastic-package install -v
为了在 Kibana 中安装包,该命令使用 Kibana API。包必须通过 Elastic Package Registry 公开。
elastic-package lint
编辑
上下文:包
使用此命令使用包规范(参见:https://github.com/elastic/package-spec)验证包的内容。
该命令确保包与包规范一致,并且 README 文件与其模板(如果存在)保持一致。
elastic-package profiles
编辑
上下文:全局
使用此命令添加、删除和管理多个配置文件。
单个用户配置文件出现在 ~/.elastic-package/stack 中,并包含“stack”子命令所需的所有配置文件。创建新配置文件后,可以使用 -p 标志指定它,或者使用 ELASTIC_PACKAGE_PROFILE 环境变量。用户配置文件在 elastic-stack 升级时不会被覆盖,可以自由修改以允许不同的堆栈配置。
elastic-package promote
编辑
上下文:全局
使用此命令在 Elastic Package Registry 快照、暂存和生产阶段之间移动包。
此命令主要供管理员使用。
它允许选择要推广的包,并打开新的拉取请求以审查更改。但是,请注意,该工具会检出一个内存中的 Git 存储库并切换分支(快照、暂存和生产),因此推广大量包可能需要更长的时间。
elastic-package publish
编辑
上下文:包
使用此命令发布新的包修订版。
该命令检查包是否已发布(它是否出现在快照/暂存/生产分支中,或者作为拉取请求打开)。如果包修订版尚未发布,它将打开一个新的拉取请求。
elastic-package service
编辑
上下文:包
使用此命令启动可以与包一起观察的服务堆栈。
该命令管理为包(_dev/deploy
)定义的服务堆栈的生命周期,用于包开发和测试目的。
elastic-package stack
编辑
上下文:全局
使用此命令启动基于 Docker 的 Elastic Stack,该堆栈由 Elasticsearch、Kibana 和 Elastic Package Registry 组成。默认情况下,将启动最新发布的 Elastic Stack 版本,但可以指定不同的版本,包括 SNAPSHOT 版本。
有关将服务与 Elastic Stack 连接的详细信息,请参见 service 命令.
elastic-package status [package]
编辑
上下文:包
使用此命令显示包的当前部署状态。
如果指定了包名称,则返回有关该包的信息。否则,此命令将检查当前目录是否为包目录并报告其状态。
elastic-package test
编辑
上下文:包
使用此命令对包运行测试。目前,以下类型的测试可用
资产加载测试编辑
这些测试确保你的包定义的所有 Elasticsearch 和 Kibana 资产都按预期加载。
有关为包运行资产加载测试的详细信息,请参见 HOWTO 指南.
管道测试编辑
这些测试允许你练习你的包定义的任何 Ingest Node 管道。
有关如何为包配置管道测试的详细信息,请查看 HOWTO 指南。
静态测试edit
这些测试允许您验证包的所有静态资源是否有效,例如,sample_event.json 的所有字段是否都有文档记录。
有关为包运行静态测试的详细信息,请参阅 HOWTO 指南。
系统测试edit
这些测试允许您测试包端到端地摄取数据的能力。
有关配置和运行系统测试的详细信息,请查看 HOWTO 指南。
elastic-package uninstall
edit
上下文:包
使用此命令在 Kibana 中卸载包。
为了在 Kibana 中卸载包,该命令使用 Kibana API。该包必须通过 Elastic Package Registry 公开。
elastic-package version
edit
上下文:全局
使用此命令打印您已安装的 elastic-package 的版本。在报告错误时,此命令特别有用。