Подготовить HY2XS к production-сборке
This commit is contained in:
@@ -0,0 +1,95 @@
|
||||
HY2XS: target repo structure
|
||||
|
||||
Цель
|
||||
Структура должна жёстко разделять builder, runtime package, fork UI, документацию и server-side install logic.
|
||||
|
||||
Рекомендуемая структура
|
||||
|
||||
project/
|
||||
├── README.md
|
||||
├── docs/
|
||||
│ ├── architecture/
|
||||
│ ├── implementation/
|
||||
│ └── operations/
|
||||
├── builder/
|
||||
│ ├── build.sh
|
||||
│ ├── lib/
|
||||
│ │ ├── common.sh
|
||||
│ │ ├── package.sh
|
||||
│ │ ├── ui.sh
|
||||
│ │ └── verify.sh
|
||||
│ ├── manifests/
|
||||
│ │ └── package.manifest
|
||||
│ └── output/
|
||||
├── package/
|
||||
│ ├── install.sh
|
||||
│ ├── orchestrator/
|
||||
│ │ └── hy2xs-orchestrator
|
||||
│ ├── templates/
|
||||
│ │ ├── hysteria/
|
||||
│ │ ├── nftables/
|
||||
│ │ └── env/
|
||||
│ ├── systemd/
|
||||
│ │ ├── hysteria-server.service
|
||||
│ │ └── hy2xs-admin.service
|
||||
│ ├── ui/
|
||||
│ │ └── hy2xs-admin/
|
||||
│ ├── docs/
|
||||
│ └── metadata/
|
||||
│ ├── package.version
|
||||
│ ├── package.build_id
|
||||
│ └── checksums.txt
|
||||
├── orchestrator/
|
||||
│ ├── package.json
|
||||
│ ├── bun.lock
|
||||
│ ├── tsconfig.json
|
||||
│ ├── src/
|
||||
│ │ ├── cli.ts
|
||||
│ │ ├── commands/
|
||||
│ │ │ └── install.ts
|
||||
│ │ ├── steps/
|
||||
│ │ │ ├── preflight.ts
|
||||
│ │ │ ├── deps.ts
|
||||
│ │ │ ├── filesystem.ts
|
||||
│ │ │ ├── hysteria.ts
|
||||
│ │ │ ├── ui.ts
|
||||
│ │ │ ├── systemd.ts
|
||||
│ │ │ ├── firewall.ts
|
||||
│ │ │ ├── env.ts
|
||||
│ │ │ └── smoke.ts
|
||||
│ │ ├── lib/
|
||||
│ │ └── types/
|
||||
│ └── dist/
|
||||
├── ui/
|
||||
│ └── hy2xs-admin-fork/
|
||||
│ ├── upstream-base/
|
||||
│ ├── app/
|
||||
│ ├── assets/
|
||||
│ ├── locales/
|
||||
│ │ ├── ru/
|
||||
│ │ └── en/
|
||||
│ ├── branding/
|
||||
│ ├── patches/
|
||||
│ └── BUILD_NOTES.md
|
||||
├── examples/
|
||||
│ └── post-install.env.example
|
||||
└── dist/
|
||||
└── hy2xs-install-<version>.tar.gz
|
||||
|
||||
Что важно
|
||||
1. builder/ и orchestrator/ разделены.
|
||||
2. package/ — staging area и состав будущего install package.
|
||||
3. orchestrator/ — исходники install-only оркестратора на Bun/TypeScript.
|
||||
4. package/orchestrator/ — уже собранный install-артефакт, а не исходники для target-side build.
|
||||
5. ui/hy2xs-admin-fork/ — постоянный исходник нашего форка.
|
||||
6. dist/ — только финальные артефакты.
|
||||
|
||||
Минимальная допустимая упрощённая структура
|
||||
Если хочешь не раздувать проект на старте, можно сократить до:
|
||||
- builder/
|
||||
- orchestrator/
|
||||
- package/
|
||||
- ui/hy2xs-admin-fork/
|
||||
- docs/
|
||||
- dist/
|
||||
Но логическое разделение всё равно должно сохраниться.
|
||||
Reference in New Issue
Block a user