Outils d’automatisation pour dev/preprod/infra orchestrés via Node.js/TypeScript.
npm install codex-env-tools``sh`
docker build -t codex-env-tools .
`sh`Run l'outil comme un binaire
docker run --rm codex-env-tools start-app --app gitlab --token $TELEPORT_JOIN_TOKEN --workDir /tmp/work
docker run --rm codex-env-tools start-task 123 --gitlabToken $GITLAB_TOKEN --teleportToken $TELEPORT_JOIN_TOKENstart-task
> Avant-propos: le dépôt local doit être propre (pas de modifications non enregistrées), sinon échouera.feat/gl-
> Règle de nommage: feat/gl-
> Comportement si existant: si une branche existe déjà (locale ou distante), start-task émet un warning et bascule sur cette branche sans créer de nouveau commit.
Le Dockerfile est conçu pour être compatible direct avec un pipeline Gitlab :
`yaml`
docker-build:
stage: docker
image: docker:24
services:
- docker:24-dind
script:
- echo "$CONTAINER_REGISTRY_PASSWORD" | docker login docker.io --username "$CONTAINER_REGISTRY_USERNAME" --password-stdin
- VERSION=${CI_COMMIT_TAG:-0.0.0-build-${CI_COMMIT_SHORT_SHA:-${CI_COMMIT_SHA:0:8}}-$(date +%Y%m%d%H%M)}
- IMAGE="docker.io/ftprod/ftprod-ai-tools"
- docker build -t "$IMAGE:$VERSION" .
- docker push "$IMAGE:$VERSION"
---
Outils CLI & librairie Node.js/TypeScript pour automatiser, orchestrer et piloter les environnements de dev, preprod et infra dans une stack moderne.
Ce projet vise à centraliser les actions d'administration, de déploiement et de contrôle de vos environnements, en facilitant l’automatisation, la sécurité et la reproductibilité. Task-runner/devops as code : interfaçable, extensible, pluggable (binaire, API, scripts...).
- Lancement de binaires CLI externes (terraform, kubectl, custom...)
- Déclenchement (et reporting) de déploiements ou de jobs CI/CD
- Démarrage de tâche Git à partir d’une issue GitLab (start-task)teleport-bot start-app
- Lancement d’un Teleport application bot ()
- Centralisation de templates/configs par environnements
- Extensible par vos propres “agents/tools” (voir AGENTS.md)
- Logging, orchestrations, tests, simulation
`sh`
CI=true pnpm install --frozen-lockfile
pnpm run dev
`sh`
npm install --no-audit --no-fund
npm run dev
`sh`(après avoir installé jest/vitest)
pnpm test
`sh`
npm run build
sh
codex-env-tools qualimetrie:test # tests & couverture
codex-env-tools qualimetrie:lint # linting avec ESLint
codex-env-tools qualimetrie:security # audit de sécurité (pnpm audit)
codex-env-tools qualimetrie:bom # BOM licences
`💡 Structure projet
Cf. AGENTS.md pour la conception agents/plugins.
-
src/cli/ — Entrées CLI, routage commandes
- src/services/ — Services métiers (exécution, remote, etc)
- src/controllers/ — Orchestrateurs, gestion logic
- src/config/ — Fichiers/env/configs partagés
- src/utils/ — Fonctions utilitaires
- src/types/ — Typage TS global🧑💻 Développement
- Suivi ESLint, Prettier, TypeScript strict
- Démarrage rapide : npm run dev
- Ajoutez vos binaires, “agents”, plugins dans
src/services/src/controllers✅ Bonnes pratiques
- TypeScript typé sur tout
- Convention services/controllers/plugins
- Lint, format, CI
- Configuration centralisée
- Tests unitaires & e2e à venir (
tests/`)pnpm run build
node dist/cli/index.js start-app \
--app gitlab \
--token xxxxxxx