️ このプロジェクトは廃止され、メンテナンスされなくなりました。代わりに、Temporal CLI 開発サーバーを使用することをお勧めします。️
Temporalite は、ランタイム依存関係のない単一プロセスとして実行される Temporal のディストリビューションです。
ディスクへの永続性とインメモリ モードは両方とも SQLite 経由でサポートされます。
簡単な紹介とデモについては、このビデオをご覧ください: youtu.be/Hz7ZZzafBoE [16:13] -- デモは 11:28 から始まります
Temporalite の主な目標は、Temporal をローカルまたはテスト環境で簡単かつ迅速に実行できるようにすることです。
この目標に沿った機能:
GitHub リリースから最新リリースをダウンロードして抽出します。
Temporal サーバーを起動します。
temporalite start --namespace default
この時点で、サーバーはlocalhost:7233
で実行され、Web インターフェイスは http://localhost:8233 にあるはずです。
Temporal のコマンド ライン ツールtctl
使用して、ローカル Temporalite サーバーと対話します。
tctl namespace list
tctl workflow list
利用可能なすべてのオプションを表示するには、ヘルプ フラグを使用します。
temporalite start -h
名前空間は起動時に事前登録できるため、すぐに使用できます。
temporalite start --namespace foo --namespace bar
tctl --namespace foo namespace register
使用して昔ながらの方法で名前空間を登録することもできます。
デフォルトでは、 temporalite
現在のユーザーの config ディレクトリ内のファイルに状態を永続化します。このパスはオーバーライドされる可能性があります。
temporalite start -f my_test.db
インメモリモードも利用可能です。再起動するたびにすべてのデータが失われることに注意してください。
temporalite start --ephemeral
デフォルトでは、Web UI は Temporalite で起動されます。 UI はランタイム フラグを使用して無効にすることができます。
temporalite start --headless
静的 UI アセットを使用せずにビルドするには、 go build
実行時にheadless
ビルド タグを使用します。
一部の高度な使用には、Temporal 動的構成値が必要です。この値は、通常、Temporal 構成ファイル内の動的構成ファイルを介して設定されます。あるいは、 --dynamic-config-value KEY=JSON_VALUE
を使用して動的構成値を設定できます。
たとえば、検索属性キャッシュを無効にして、作成した検索属性をすぐに使用できるようにするには、次のようにします。
temporalite start --dynamic-config-value system.forceSearchAttributesCacheRefreshOnRead=true
ソースをコンパイルするには、次のコマンドを実行します。
go build -o dist/temporalite ./cmd/temporalite
すべてのテストを実行するには:
go test ./...