ITADN
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

Argus
Argus

关注发布动态。

GitHub GitHub go.mod Go version (subdirectory of monorepo) GitHub package.json dependency version (subfolder of monorepo) Codecov
GitHub Workflow Status GitHub release (latest by date) GitHub all releases GitHub release (latest by SemVer)
GitHub Workflow Status Docker Image Version (latest semver) Docker Image Size (latest semver) Docker Pulls

Argus 将按照用户定义的间隔查询网站以获取新的软件发布,并在发现新发布时触发 Gotify/Slack/其他通知和/或 WebHook。 例如,您可以将其设置为监控 Argus 仓库(release-argus/Argus)。这将查询 GitHub API 并跟踪 "tag_name" 变量。当此变量与上次查询时的值不同时,可以发送一个 GitHub 风格的 WebHook,以触发某些操作(如 AWX)来更新您服务器上的 Argus。

目录

演示

您可以在我们的网站上此处查看 Argus 的演示。

命令行参数

$ argus -h
Usage of /usr/local/bin/argus:
  -config.check
        Print the fully-parsed config.
  -config.file string
        Argus configuration file path (env_var=ARGUS_CONFIG_FILE) (default "config.yml")
  -data.database-file string
        Database file path (env_var=ARGUS_DATA_DATABASE_FILE) (default "data/argus.db")
  -data.readonly
        Disable persisting config changes back to the config file (env_var=ARGUS_DATA_READONLY)
  -log.level string
        ERROR, WARN, INFO, VERBOSE or DEBUG (env_var=ARGUS_LOG_LEVEL) (default "INFO")
  -log.timestamps
        Enable timestamps in CLI output (env_var=ARGUS_LOG_TIMESTAMPS)
  -test.commands commands
        Put the name of the Service to test the commands of.
  -test.notify string
        Put the name of the Notify service to send a test message.
  -test.service string
        Put the name of the Service to test the version query.
  -web.basic-auth.password string
        Password for basic auth (env_var=ARGUS_WEB_BASIC_AUTH_PASSWORD)
  -web.basic-auth.username string
        Username for basic auth (env_var=ARGUS_WEB_BASIC_AUTH_USERNAME)
  -web.cert-file string
        HTTPS certificate file path (env_var=ARGUS_WEB_CERT_FILE)
  -web.listen-host string
        IP address to listen on for UI, API, and telemetry (env_var=ARGUS_WEB_LISTEN_HOST) (default "0.0.0.0")
  -web.listen-port string
        Port to listen on for UI, API, and telemetry (env_var=ARGUS_WEB_LISTEN_PORT) (default "8080")
  -web.pkey-file string
        HTTPS private key file path (env_var=ARGUS_WEB_PKEY_FILE)
  -web.route-prefix string
        Prefix for web endpoints (env_var=ARGUS_WEB_ROUTE_PREFIX) (default "/")

从源码构建

前置条件

Argus 的后端使用 Go 构建,前端使用 React 构建。React 前端构建完成后会 嵌入 到 Go 二进制文件中,以便提供这些 Web 文件。

Go 更改

要查看通过修改任何 .go 文件所做的更改,必须编译 Argus。首次运行时请执行 make build,以确保 Web 组件在本地可用。后续无需重新构建 web-ui 的构建可以使用 make go-build 完成(比 make build 更快)。在根目录中运行其中任何一个命令都会生成一个 argus 二进制文件。

React 更改

要查看修改 web/ui/react-app 中任何内容后的更改,必须重新编译 Go 后端和 React 前端。可以通过运行 make build 来完成。在根目录中运行此命令会生成 argus 二进制文件。

入门指南

要开始使用 Argus,只需从 发布页面 下载二进制文件,并为该二进制文件配置好设置。

如需更多帮助,请访问我们网站上的 入门指南 页面。

配置格式

配置可以分为 5 个关键区域。(更多帮助

  • defaults - 这被划分为包含 servicesnotifywebhooks 默认值的区域。
  • settings - Argus 服务器的设置。
  • service - 一个字典映射,包含所有要监控的服务以及发现新发布时要通知的内容。
  • notify - 一个字典映射,包含 Notify 消息的目标。
  • webhook - 一个字典映射,包含 WebHooks 的目标。