Skip to main content

ChatGlance

ChatGlance 是 ChatArch/WZHECNU Glance 网站部署相关源码与运维记录的 private repo。它沉淀当前站点的页面生成逻辑、配置转换规则、user-level service 模板、验收记录和安全边界;chatglance CLI 只是辅助执行这些记录和规则的管理入口。

它不是 NPM 项目,也不是重新实现 Glance 后端:上游 Glance 仍然是 Go 单二进制 dashboard server;ChatGlance 负责把 ChatArch 项目清单、Glance YAML 页面、inline HTML 表格、user-level systemd 单元和部署记录组织成可复用、可审查的源码与文档。

Repo 内容

  • src/chatglance/:页面生成、Glance YAML patch、runtime maintenance、user-level systemd unit 渲染/安装等辅助代码。
  • tests/:项目页、Disk root-only patch、runtime/systemd、workflow contract 的回归测试。
  • docs/deployment/current-site.md:当前线上 Glance 网站的私有部署记录,包括服务拓扑、路径、user service/timer、local/public entry、验收和安全边界。
  • README.md / README.en.md / CHANGELOG.md:对外/协作入口;避免写入 live auth、token、password hash 或代理凭据。

当前能力

  • 从 repository inventory JSON 生成 Glance 项目 page。
  • 当前 page tabs 固定为:最近提交待处理 PR / Issue分类一览表
  • 待处理 PR / Issue 只显示 PR/Issue 非 0 的仓库,并按 (PR, Issue, 最近提交) 降序。
  • 生成 config 副本时清理 legacy generated pages:ProjectsChatArch ProjectsChatArch Projects List
  • 为 Glance server-stats 写入“只显示有意义磁盘”的 Disk 配置:当前 live 策略始终保留 /,只有当 /home 是独立挂载点时才加 /home;每个可见 mountpoint 都显式写入 hide: false,避免 Disk 显示 n/a,同时继续隐藏 snap/loop/tmp/overlay。
  • 维护 durable runtime:一次性 runtime maintain 可原子更新 live config、备份、校验,并在内容变化时可选重启 systemd user service。
  • 渲染并安装 user-level systemd units:主服务仍直接启动 upstream Glance Go binary;维护任务是独立 oneshot/timer,不是 Python wrapper。
  • 通过 CLI 安装、启用、启动和回读当前 Glance 页面对应的 user service/timer。

快速开始

pip install -e ".[dev]"
chatglance --help
chatglance --tree
chatglance --version
python -m pytest -q
python -m build

CLI 示例

只生成 项目 page YAML:

chatglance projects render-page \
  --data /path/to/chatarch-projects.json \
  --output playground/projects-page.yml

把生成页写入一个 Glance config 副本:

chatglance projects update-config \
  --data /path/to/chatarch-projects.json \
  --config /path/to/glance.yml \
  --output playground/glance.with-projects.yml

server-stats Disk 改成只显示 root 分区,写入 config 副本:

chatglance disks root-only \
  --config /path/to/glance.yml \
  --output playground/glance.root-disk.yml

维护一个 durable Glance runtime(默认 ~/.chatarch/glance):

chatglance runtime maintain \
  --runtime-home ~/.chatarch/glance \
  --restart-service chatarch-glance.service

生成推荐 systemd user units:

chatglance runtime render-systemd \
  --runtime-home ~/.chatarch/glance \
  --chatglance-bin ~/.chatarch/venv/bin/chatglance \
  --output-dir playground/systemd

安装并启用 user-level systemd units(写入 ~/.config/systemd/user,不需要 sudo):

chatglance runtime install-systemd \
  --runtime-home ~/.chatarch/glance \
  --chatglance-bin ~/.chatarch/venv/bin/chatglance \
  --start

启动/回读当前页面对应的 user service/timer:

chatglance runtime start
chatglance runtime status

运行态边界

推荐拓扑是 systemd 直接运行 Glance,chatglance 只做维护

  • 主服务:chatarch-glance.service 直接执行 ~/.chatarch/glance/bin/glance -config ~/.chatarch/glance/config/glance.yml
  • 内容数据:repository inventory JSON、缓存和生成快照放在 ~/.chatarch/glance/data/~/.chatarch/glance/cache/
  • live config:~/.chatarch/glance/config/glance.yml;更新前写备份到 ~/.chatarch/glance/config/backups/
  • 维护:chatglance runtime maintain 是 oneshot,可由 chatarch-glance-maintenance.timer 周期触发。
  • 安装/启动:chatglance runtime install-systemd --startchatglance runtime start 只使用 user-level systemd,不写 /etc/systemd
  • 不建议加 Python 长驻 wrapper:wrapper 会把 server 生命周期和内容生成耦合,反而不利于 systemd 重启、日志、健康检查和回滚。

安全边界

  • CLI 默认写 output file,不默认覆盖 live glance.yml
  • 不保存或输出 Glance auth、password hash、GitHub token、proxy credential。
  • live runtime、logs、backups、全量实时 JSON 快照默认不进源码仓库。
  • 后续如需动态表格、搜索、中英文切换,再考虑增加小型静态前端层;当前 Python CLI 是基础层。

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chatglance-0.1.2.tar.gz (19.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

chatglance-0.1.2-py3-none-any.whl (18.9 kB view details)

Uploaded Python 3

File details

Details for the file chatglance-0.1.2.tar.gz.

File metadata

  • Download URL: chatglance-0.1.2.tar.gz
  • Upload date:
  • Size: 19.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for chatglance-0.1.2.tar.gz
Algorithm Hash digest
SHA256 3d07a47f9865de87b130dc54c518bf8ea9b7d896351671f53f8d5114fabaf2e1
MD5 bb355e031e8b4f1ee748480efb64ae63
BLAKE2b-256 6a649dea5130cd1f5da52de4a9b33953663cd305b23e3a9e2a68e0e26f2b46fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for chatglance-0.1.2.tar.gz:

Publisher: publish.yml on ChatArch/ChatGlance

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chatglance-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: chatglance-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 18.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for chatglance-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4ff45a299a4ec9829672e2704b475b89bc4c27fa51646c7151f6db51246067ac
MD5 488fcc51453a59b1f7ea69cd05934530
BLAKE2b-256 4ff90387e877f5b1818e9a01675e4883ea7c1a31b86c897a659c7f571315f946

See more details on using hashes here.

Provenance

The following attestation bundles were made for chatglance-0.1.2-py3-none-any.whl:

Publisher: publish.yml on ChatArch/ChatGlance

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page