Construire et publier
Le package actuel est@plato/pc-printer.
Scripts
| Scénario | Commande | But |
|---|---|---|
clean | node scripts/clean.js | Supprime les artefacts de build, la sortie, les journaux, le zip et dump.rdb. |
build | esbuild src/index.ts src/scripts/*.ts --bundle --platform=node --target=node12 --outdir=dist | Regroupe le code d’exécution. |
start | node dist/index.js | Démarre le pilote intégré. |
pkg | pkg dist/index.js -t node12-win-x64 -o output/plato-printer.exe --config package.json | Crée un exécutable Windows. |
bundle | version bump, build, préparation Redis, pkg, zip | Produit plato-printer.zip. |
stress | node scripts/stress-test.js | Exécute un test de charge d’imprimante fictive. |
Construire localement
Créer un zip de version
- Incréments
src/version.ts. - Construit le pilote dans
dist. - Prépare le binaire Windows Redis configuré.
- Construit
output/plato-printer.exe. - Copie
config.json. - Copie les ressources Caddy.
- Copie les certificats.
- Copie
redis-binaries/<redis.version>. - Crée
plato-printer.zip.
Contenu de la version
Gestion des versions
src/version.ts contient :
GET /health et imprimée dans la bannière de démarrage. Ne modifiez pas ce fichier manuellement ; scripts/increment-version.js le met à jour pendant pnpm bundle.
Préparation du caddie
Caddy est épinglé sur2.6.4.
Pour télécharger Caddy dans assets/caddy avant de le regrouper :
assets/caddy/caddy.exe existe, le programme d’installation du runtime peut le copier au lieu de télécharger Caddy sur l’ordinateur du client.
Redis Préparation binaire
scripts/prepare-redis-binaries.js lit config.json et télécharge la version configurée de Windows Redis si elle est manquante.
Le chemin attendu est :
Test de résistance
Le test de résistance démarre des imprimantes TCP fictives et envoie de nombreuses requêtes/print.
Liste de contrôle de sortie
- Confirmez que
config.jsonest correct pour la version. - Confirmez que les actifs Caddy existent si HTTPS doit fonctionner hors ligne.
- Exécutez
pnpm --filter @plato/pc-printer clean. - Exécutez
pnpm --filter @plato/pc-printer bundle. - Exécutez l’exécutable à partir de
output/. - Vérifiez
GET /health. - Exécutez un véritable test d’impression.
- Vérifiez que
plato-printer.zipcontient les fichiers attendus.