Création d'un nouvel adaptateur d'environnement
Runbook pour créer et publier un nouvel adaptateur d'environnement Apothem.
Utilisez ce runbook pour créer un nouvel adaptateur d'environnement destiné à une intégration native dans Apothem ou en tant que paquet tiers.
Prérequis
- Familiarité avec le protocole HarnessAdapter
- Compréhension du format de configuration de l'environnement cible
- Python 3.10+
Étapes
1. Implémentez l'adaptateur
Suivez l'exemple Création d'un adaptateur d'environnement
pour implémenter HarnessAdapter pour l'environnement cible.
Si l'adaptateur écrit un modèle en texte brut (un fichier qui n'est ni JSON ni YAML)
avec mode: write_text et ownership_class: operator-owned, uninstall
supprime le fichier uniquement tant qu'il s'agit d'une copie non modifiée d'un modèle
livré par Apothem. Lorsqu'une version ultérieure modifie le modèle, ajoutez le condensé SHA-256
du texte précédent à la liste earlier_digests de cette entrée du manifeste dans le même
changement, sinon uninstall laisse en place chaque copie non modifiée écrite par la version
antérieure. Calculez le condensé du texte à la dernière étiquette de version avec
git show <tag>:<template path> | sha256sum ; le modèle ne doit contenir aucun
jeton de chemin ${...}. tests/unit/test_template_digests.py échoue lorsqu'un modèle
livré n'est pas pris en compte.
2. Rédigez la page de documentation
Créez site/content/docs/harnesses/<slug>.mdx couvrant :
- Le flux d'installation
- Le mappage du profil vers la configuration native
- Les réserves de compatibilité
- Les recettes de vérification
- Les recettes de mise à jour et de désinstallation
- La surface du portail de conformité
- Le tableau de dépannage
- Le tableau des paramètres de configuration
3. Écrivez les tests
tests/packaging/test_<slug>_adapter.py
tests/unit/test_<slug>_adapter.pyCouverture de tests minimale :
test_install_creates_expected_filestest_verify_passes_after_installtest_uninstall_removes_files
4. Vérifiez localement
apothem install --harness <slug>
apothem verify --harness <slug>
python -m apothem.conformity.gate --all .5. Soumettez la pull request
Ouvrez une PR avec :
- Implémentation de l'adaptateur
- Page de documentation à
site/content/docs/harnesses/<slug>.mdx - Tests
- Enregistrement du point d'entrée dans
pyproject.toml, une entréeHARNESS_REGISTRYdanssrc/apothem/lib/harness_registry_data.py(en incrémentantSUPPORTED_HARNESS_COUNTà cet endroit), et l'identifiant dans l'énumérationharnessIddesrc/apothem/schemas/profile.schema.json - Entrée au journal des modifications
Configuration du compte d'éditeur
Configurez l'éditeur de confiance npmjs.com pour @ahmed-g-gad/apothem ainsi que les prérequis de publication côté GitHub.
Liste de vérification de synchronisation inter-machines
Procédure de vérification pour confirmer que l'adaptateur Claude Code s'installe, se valide et se désinstalle correctement sur un hôte neuf, avec des contrôles complets de portabilité.