️ Ce projet est obsolète et n'est plus maintenu, nous vous recommandons d'utiliser le serveur de développement Temporal CLI à la place.️
Temporalite est une distribution de Temporal qui s'exécute comme un processus unique sans aucune dépendance d'exécution.
La persistance sur le disque et un mode en mémoire sont tous deux pris en charge via SQLite.
Regardez cette vidéo pour une brève introduction et une démo : youtu.be/Hz7ZZzafBoE [16:13] -- la démo commence à 11h28
L'objectif principal de Temporalite est de rendre simple et rapide l'exécution de Temporal localement ou dans des environnements de test.
Fonctionnalités qui correspondent à cet objectif :
Téléchargez et extrayez la dernière version des versions de GitHub.
Démarrez le serveur temporel :
temporalite start --namespace default
À ce stade, vous devriez disposer d'un serveur fonctionnant sur localhost:7233
et d'une interface Web sur http://localhost:8233.
Utilisez l'outil de ligne de commande de Temporal, tctl
pour interagir avec le serveur Temporalite local.
tctl namespace list
tctl workflow list
Utilisez l'indicateur d'aide pour voir toutes les options disponibles :
temporalite start -h
Les espaces de noms peuvent être pré-enregistrés au démarrage afin qu'ils soient disponibles immédiatement :
temporalite start --namespace foo --namespace bar
L'enregistrement des espaces de noms à l'ancienne via tctl --namespace foo namespace register
fonctionne également !
Par défaut, temporalite
conserve son état dans un fichier du répertoire de configuration de l'utilisateur actuel. Ce chemin peut être remplacé :
temporalite start -f my_test.db
Un mode en mémoire est également disponible. Notez que toutes les données seront perdues à chaque redémarrage.
temporalite start --ephemeral
Par défaut, l'interface utilisateur Web est démarrée avec Temporalite. L'interface utilisateur peut être désactivée via un indicateur d'exécution :
temporalite start --headless
Pour créer sans ressources d'interface utilisateur statiques, utilisez la balise build headless
lors de l'exécution go build
.
Certaines utilisations avancées nécessitent des valeurs de configuration dynamique temporelle qui sont généralement définies via un fichier de configuration dynamique à l'intérieur du fichier de configuration temporelle. Alternativement, les valeurs de configuration dynamiques peuvent être définies via --dynamic-config-value KEY=JSON_VALUE
.
Par exemple, pour désactiver le cache des attributs de recherche afin de rendre les attributs de recherche créés disponibles immédiatement :
temporalite start --dynamic-config-value system.forceSearchAttributesCacheRefreshOnRead=true
Pour compiler l'exécution source :
go build -o dist/temporalite ./cmd/temporalite
Pour exécuter tous les tests :
go test ./...