diff --git a/.github/workflows/maintenance-update-readme.yml b/.github/workflows/maintenance-update-readme.yml
index 556cb5409a..ed8078ae9f 100644
--- a/.github/workflows/maintenance-update-readme.yml
+++ b/.github/workflows/maintenance-update-readme.yml
@@ -12,8 +12,12 @@
#
# Secrets (already present on this repo):
# ANTHROPIC_API_KEY - Claude API key (same one reporting-release-summary uses)
-# ACCESS_TOKEN - PAT with `repo` scope on the target repos (the builtin
-# GITHUB_TOKEN cannot push branches / open PRs cross-repo)
+# ACCESS_TOKEN_ARMBIANWORKER
+# - armbianworker PAT with `repo` scope on the target repos
+# (the builtin GITHUB_TOKEN cannot push branches / open PRs
+# cross-repo). Must be the worker account, not a person:
+# reporting-release-summary.yml filters the release digest
+# by PR author, and a human author lands these in the notes.
name: "Maintenance: Update README (AI)"
on:
@@ -70,7 +74,7 @@ jobs:
uses: actions/checkout@v7
with:
repository: ${{ matrix.repo }}
- token: ${{ secrets.ACCESS_TOKEN }}
+ token: ${{ secrets.ACCESS_TOKEN_ARMBIANWORKER }}
path: target
fetch-depth: 0
@@ -89,7 +93,7 @@ jobs:
# closed: any gh/API error aborts the run rather than proceeding feedback-less.
- name: Collect reviewer feedback from the open README PR
env:
- GH_TOKEN: ${{ secrets.ACCESS_TOKEN }}
+ GH_TOKEN: ${{ secrets.ACCESS_TOKEN_ARMBIANWORKER }}
REPO: ${{ matrix.repo }}
run: |
set -euo pipefail
@@ -121,7 +125,7 @@ jobs:
- name: Open pull request
uses: peter-evans/create-pull-request@v8
with:
- token: ${{ secrets.ACCESS_TOKEN }}
+ token: ${{ secrets.ACCESS_TOKEN_ARMBIANWORKER }}
path: target
branch: chore/update-readme
delete-branch: true
diff --git a/README.md b/README.md
index 35619c84bf..486c7a6bfd 100644
--- a/README.md
+++ b/README.md
@@ -3,21 +3,81 @@
-### Purpose of This Repository
+# armbian.github.io
-This repository acts as a central **automation and orchestration hub** for the Armbian project. It coordinates CI workflows, maintains metadata, syncs external data, and generates machine-readable output to power [armbian.com](https://www.armbian.com), [docs.armbian.com](https://docs.armbian.com), and related services.
+## Purpose of This Repository
-It also produces [data exchange files](https://github.armbian.com/) used for automation, reporting, and content delivery across the Armbian infrastructure.
+This repository is the **automation and data hub** for the Armbian project. It hosts the CI workflows, Python and shell scripts, board/vendor artwork, and release-target configuration that together generate the metadata powering [armbian.com](https://www.armbian.com), [docs.armbian.com](https://docs.armbian.com), and Armbian's download and mirror infrastructure.
+Generated data (image indices, partner lists, torrent trackers, release-target YAML, keyrings, MOTD, etc.) is published to the repository's `data` branch and served from [github.armbian.com](https://github.armbian.com/).
-### Workflow Status & Monitoring
+## Repository Layout
-**[GitHub actions dashboard](https://actions.armbian.com/?repo=armbian.github.io)**
+```
+board-images/ Per-board product photos (PNG), thumbnailed by CI
+board-vendor-logos/ Per-vendor logo files, thumbnailed by CI
+release-targets/ Inputs & config for the build-target YAML generator
+scripts/ Python, Bash and Node scripts run by the workflows
+templates/ Templates used by generation scripts
+.github/workflows/ Scheduled and event-driven automation
+```
-Monitor all automation workflows with real-time status tracking:
+The `release-targets/` directory has its own [README](release-targets/README.md) covering the target-YAML generator, its inputs (`targets-extensions.map`, `exposed.map.overrides.yaml`, `reusable.yml`, `targets-release-.blacklist`, `targets-release-.manual`) and outputs (`targets-release-*.yaml`, `exposed.map`).
-- **Execution history** — Complete log of past workflow runs with timestamps and outcomes
-- **Performance metrics** — Runtime duration, resource usage, and success/failure rates
-- **Live status** — Current state of running CI/CD pipelines and scheduled tasks
-- **Debugging tools** — Detailed logs and error traces for failed workflows
+## What This Repository Produces
+The workflows here maintain — on the `data` branch — a set of machine-readable files consumed by the Armbian website, the build framework, and third-party tools. Highlights:
+
+| File / path (on `data` branch) | Description |
+|---|---|
+| `data/image-info.json` | Inventory of all boards known to `armbian/build`. |
+| `data/armbian-images.json` | Full download index cross-referenced with the mirror source of truth. |
+| `data/release-targets/targets-release-*.yaml` | Build-matrix definitions for standard-support, nightly, community and apps images. |
+| `data/release-targets/exposed.map` | Regex patterns the website uses to pick each board's "recommended image". |
+| `data/release-targets/kernel-description.json` | Human-readable kernel branch descriptions. |
+| `data/partners.json`, `data/maintainers_with_avatars.json` | Partner and maintainer data enriched from Zoho Bigin and GitHub. |
+| `data/rpi-imager.json` | Armbian catalog for the Raspberry Pi Imager tool. |
+| `data/base-files.json` | Index of the Armbian `base-files` package versions. |
+| `data/keyrings/` | Latest Debian and Ubuntu archive-keyring `.deb` packages. |
+| `data/servers/{download,cache,upload,github-runners}.jq` | Live server inventory pulled from NetBox. |
+| `data/servers/best-torrent-servers.txt` | Curated BitTorrent tracker list for image torrents. |
+| `data/actions-report/` | CI status snapshots for the Armbian repositories. |
+| `data/quotes.txt` | MOTD messages for installed Armbian systems. |
+| `data/jira-current.html`, `data/jira-next.html` | Rendered Jira excerpts of current and next release scope. |
+
+## Built With
+
+- **Python 3** — data generators under `scripts/` (e.g. `generate_targets.py`, `generate_kernel_descriptions.py`, `generate-base-files-info-json.py`, `generate-rpi-imager-json.py`, `days_since_last_commit.py`).
+- **Bash** — glue and mirror-side shell scripts (e.g. `generate-armbian-images-json.sh`) plus the `run:` steps embedded in the workflows.
+- **Node.js** — `scripts/generate-actions-report.mjs` for the CI status reports.
+- **GitHub Actions (YAML)** — orchestration of scheduled, dispatched and event-driven jobs.
+- **jq**, **curl**, **rsync**, **GraphicsMagick + pngquant** — invoked from the workflows for JSON shaping, HTTP/rsync transfers and image thumbnailing.
+
+## Branches
+
+- **`master`** — source of truth: workflows, scripts, board & vendor artwork, release-target configuration.
+- **`data`** — machine-generated outputs, committed by CI and served from [github.armbian.com](https://github.armbian.com/). Do not edit by hand.
+
+## Workflow Status & Monitoring
+
+**[GitHub Actions dashboard for this repository](https://actions.armbian.com/?repo=armbian.github.io)**
+
+Rather than enumerating every workflow here, the Armbian Actions dashboard provides:
+
+- **Execution history** — every past workflow run with timestamps and outcomes
+- **Performance metrics** — runtime duration, success/failure rates
+- **Live status** — current state of scheduled and dispatched jobs
+- **Debugging tools** — logs and error traces for failed runs
+
+## Contributing
+
+See [CONTRIBUTING.md](CONTRIBUTING.md) for how to propose changes, and [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md) for community expectations. Additional ways to help:
+
+- [Become a board maintainer](https://docs.armbian.com/Board_Maintainers_Procedures_and_Guidelines/)
+- [Apply for a project position](https://forum.armbian.com/staffapplications/)
+- [Help cover costs](https://forum.armbian.com/subscriptions/)
+- [Answer questions on the forum](https://forum.armbian.com/)
+
+## License
+
+Distributed under the terms of the GNU General Public License v2. See [LICENSE](LICENSE) for the full text.