temporalio 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/Gemfile +3 -0
- data/LICENSE +20 -0
- data/README.md +130 -0
- data/bridge/Cargo.lock +2865 -0
- data/bridge/Cargo.toml +26 -0
- data/bridge/sdk-core/ARCHITECTURE.md +76 -0
- data/bridge/sdk-core/Cargo.lock +2606 -0
- data/bridge/sdk-core/Cargo.toml +2 -0
- data/bridge/sdk-core/LICENSE.txt +23 -0
- data/bridge/sdk-core/README.md +107 -0
- data/bridge/sdk-core/arch_docs/diagrams/README.md +10 -0
- data/bridge/sdk-core/arch_docs/diagrams/sticky_queues.puml +40 -0
- data/bridge/sdk-core/arch_docs/diagrams/workflow_internals.svg +1 -0
- data/bridge/sdk-core/arch_docs/sticky_queues.md +51 -0
- data/bridge/sdk-core/bridge-ffi/Cargo.toml +24 -0
- data/bridge/sdk-core/bridge-ffi/LICENSE.txt +23 -0
- data/bridge/sdk-core/bridge-ffi/build.rs +25 -0
- data/bridge/sdk-core/bridge-ffi/include/sdk-core-bridge.h +249 -0
- data/bridge/sdk-core/bridge-ffi/src/lib.rs +825 -0
- data/bridge/sdk-core/bridge-ffi/src/wrappers.rs +211 -0
- data/bridge/sdk-core/client/Cargo.toml +40 -0
- data/bridge/sdk-core/client/LICENSE.txt +23 -0
- data/bridge/sdk-core/client/src/lib.rs +1294 -0
- data/bridge/sdk-core/client/src/metrics.rs +165 -0
- data/bridge/sdk-core/client/src/raw.rs +931 -0
- data/bridge/sdk-core/client/src/retry.rs +674 -0
- data/bridge/sdk-core/client/src/workflow_handle/mod.rs +185 -0
- data/bridge/sdk-core/core/Cargo.toml +116 -0
- data/bridge/sdk-core/core/LICENSE.txt +23 -0
- data/bridge/sdk-core/core/benches/workflow_replay.rs +73 -0
- data/bridge/sdk-core/core/src/abstractions.rs +166 -0
- data/bridge/sdk-core/core/src/core_tests/activity_tasks.rs +911 -0
- data/bridge/sdk-core/core/src/core_tests/child_workflows.rs +221 -0
- data/bridge/sdk-core/core/src/core_tests/determinism.rs +107 -0
- data/bridge/sdk-core/core/src/core_tests/local_activities.rs +515 -0
- data/bridge/sdk-core/core/src/core_tests/mod.rs +100 -0
- data/bridge/sdk-core/core/src/core_tests/queries.rs +736 -0
- data/bridge/sdk-core/core/src/core_tests/replay_flag.rs +65 -0
- data/bridge/sdk-core/core/src/core_tests/workers.rs +259 -0
- data/bridge/sdk-core/core/src/core_tests/workflow_cancels.rs +124 -0
- data/bridge/sdk-core/core/src/core_tests/workflow_tasks.rs +2070 -0
- data/bridge/sdk-core/core/src/ephemeral_server/mod.rs +515 -0
- data/bridge/sdk-core/core/src/lib.rs +175 -0
- data/bridge/sdk-core/core/src/log_export.rs +62 -0
- data/bridge/sdk-core/core/src/pollers/mod.rs +54 -0
- data/bridge/sdk-core/core/src/pollers/poll_buffer.rs +297 -0
- data/bridge/sdk-core/core/src/protosext/mod.rs +428 -0
- data/bridge/sdk-core/core/src/replay/mod.rs +71 -0
- data/bridge/sdk-core/core/src/retry_logic.rs +202 -0
- data/bridge/sdk-core/core/src/telemetry/metrics.rs +383 -0
- data/bridge/sdk-core/core/src/telemetry/mod.rs +412 -0
- data/bridge/sdk-core/core/src/telemetry/prometheus_server.rs +77 -0
- data/bridge/sdk-core/core/src/test_help/mod.rs +875 -0
- data/bridge/sdk-core/core/src/worker/activities/activity_heartbeat_manager.rs +580 -0
- data/bridge/sdk-core/core/src/worker/activities/local_activities.rs +1042 -0
- data/bridge/sdk-core/core/src/worker/activities.rs +464 -0
- data/bridge/sdk-core/core/src/worker/client/mocks.rs +87 -0
- data/bridge/sdk-core/core/src/worker/client.rs +347 -0
- data/bridge/sdk-core/core/src/worker/mod.rs +566 -0
- data/bridge/sdk-core/core/src/worker/workflow/bridge.rs +37 -0
- data/bridge/sdk-core/core/src/worker/workflow/driven_workflow.rs +110 -0
- data/bridge/sdk-core/core/src/worker/workflow/history_update.rs +458 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/activity_state_machine.rs +911 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/cancel_external_state_machine.rs +298 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/cancel_workflow_state_machine.rs +171 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/child_workflow_state_machine.rs +860 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/complete_workflow_state_machine.rs +140 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/continue_as_new_workflow_state_machine.rs +161 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/fail_workflow_state_machine.rs +133 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/local_activity_state_machine.rs +1448 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/mod.rs +342 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/mutable_side_effect_state_machine.rs +127 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/patch_state_machine.rs +712 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/side_effect_state_machine.rs +71 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/signal_external_state_machine.rs +443 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/timer_state_machine.rs +439 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/transition_coverage.rs +169 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/upsert_search_attributes_state_machine.rs +246 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_machines/local_acts.rs +96 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_machines.rs +1184 -0
- data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_task_state_machine.rs +277 -0
- data/bridge/sdk-core/core/src/worker/workflow/managed_run/managed_wf_test.rs +198 -0
- data/bridge/sdk-core/core/src/worker/workflow/managed_run.rs +647 -0
- data/bridge/sdk-core/core/src/worker/workflow/mod.rs +1143 -0
- data/bridge/sdk-core/core/src/worker/workflow/run_cache.rs +145 -0
- data/bridge/sdk-core/core/src/worker/workflow/wft_poller.rs +88 -0
- data/bridge/sdk-core/core/src/worker/workflow/workflow_stream.rs +940 -0
- data/bridge/sdk-core/core-api/Cargo.toml +31 -0
- data/bridge/sdk-core/core-api/LICENSE.txt +23 -0
- data/bridge/sdk-core/core-api/src/errors.rs +95 -0
- data/bridge/sdk-core/core-api/src/lib.rs +151 -0
- data/bridge/sdk-core/core-api/src/worker.rs +135 -0
- data/bridge/sdk-core/etc/deps.svg +187 -0
- data/bridge/sdk-core/etc/dynamic-config.yaml +2 -0
- data/bridge/sdk-core/etc/otel-collector-config.yaml +36 -0
- data/bridge/sdk-core/etc/prometheus.yaml +6 -0
- data/bridge/sdk-core/fsm/Cargo.toml +18 -0
- data/bridge/sdk-core/fsm/LICENSE.txt +23 -0
- data/bridge/sdk-core/fsm/README.md +3 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/Cargo.toml +27 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/LICENSE.txt +23 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/src/lib.rs +647 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/progress.rs +8 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/dupe_transitions_fail.rs +18 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/dupe_transitions_fail.stderr +12 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/dynamic_dest_pass.rs +41 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/forgot_name_fail.rs +14 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/forgot_name_fail.stderr +11 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/handler_arg_pass.rs +32 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/handler_pass.rs +31 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/medium_complex_pass.rs +46 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/no_handle_conversions_require_into_fail.rs +29 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/no_handle_conversions_require_into_fail.stderr +12 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/simple_pass.rs +32 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/struct_event_variant_fail.rs +18 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/struct_event_variant_fail.stderr +5 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/tuple_more_item_event_variant_fail.rs +11 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/tuple_more_item_event_variant_fail.stderr +5 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/tuple_zero_item_event_variant_fail.rs +11 -0
- data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/tuple_zero_item_event_variant_fail.stderr +5 -0
- data/bridge/sdk-core/fsm/rustfsm_trait/Cargo.toml +14 -0
- data/bridge/sdk-core/fsm/rustfsm_trait/LICENSE.txt +23 -0
- data/bridge/sdk-core/fsm/rustfsm_trait/src/lib.rs +249 -0
- data/bridge/sdk-core/fsm/src/lib.rs +2 -0
- data/bridge/sdk-core/histories/fail_wf_task.bin +0 -0
- data/bridge/sdk-core/histories/timer_workflow_history.bin +0 -0
- data/bridge/sdk-core/integ-with-otel.sh +7 -0
- data/bridge/sdk-core/protos/api_upstream/README.md +9 -0
- data/bridge/sdk-core/protos/api_upstream/api-linter.yaml +40 -0
- data/bridge/sdk-core/protos/api_upstream/buf.yaml +12 -0
- data/bridge/sdk-core/protos/api_upstream/dependencies/gogoproto/gogo.proto +141 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/batch/v1/message.proto +86 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/cluster/v1/message.proto +83 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/command/v1/message.proto +259 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/common/v1/message.proto +112 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/batch_operation.proto +46 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/cluster.proto +40 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/command_type.proto +57 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/common.proto +55 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/event_type.proto +168 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/failed_cause.proto +97 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/namespace.proto +51 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/query.proto +50 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/reset.proto +41 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/schedule.proto +60 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/task_queue.proto +59 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/update.proto +51 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/workflow.proto +122 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/errordetails/v1/message.proto +108 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/failure/v1/message.proto +114 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/filter/v1/message.proto +56 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/history/v1/message.proto +751 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/namespace/v1/message.proto +97 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/request_response.proto +161 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/service.proto +99 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/query/v1/message.proto +61 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/replication/v1/message.proto +55 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/schedule/v1/message.proto +300 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/taskqueue/v1/message.proto +108 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/update/v1/message.proto +46 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/version/v1/message.proto +59 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/workflow/v1/message.proto +145 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/request_response.proto +1124 -0
- data/bridge/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/service.proto +401 -0
- data/bridge/sdk-core/protos/grpc/health/v1/health.proto +63 -0
- data/bridge/sdk-core/protos/local/temporal/sdk/core/activity_result/activity_result.proto +78 -0
- data/bridge/sdk-core/protos/local/temporal/sdk/core/activity_task/activity_task.proto +79 -0
- data/bridge/sdk-core/protos/local/temporal/sdk/core/bridge/bridge.proto +210 -0
- data/bridge/sdk-core/protos/local/temporal/sdk/core/child_workflow/child_workflow.proto +77 -0
- data/bridge/sdk-core/protos/local/temporal/sdk/core/common/common.proto +15 -0
- data/bridge/sdk-core/protos/local/temporal/sdk/core/core_interface.proto +30 -0
- data/bridge/sdk-core/protos/local/temporal/sdk/core/external_data/external_data.proto +30 -0
- data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_activation/workflow_activation.proto +261 -0
- data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_commands/workflow_commands.proto +297 -0
- data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_completion/workflow_completion.proto +29 -0
- data/bridge/sdk-core/protos/testsrv_upstream/api-linter.yaml +38 -0
- data/bridge/sdk-core/protos/testsrv_upstream/buf.yaml +13 -0
- data/bridge/sdk-core/protos/testsrv_upstream/dependencies/gogoproto/gogo.proto +141 -0
- data/bridge/sdk-core/protos/testsrv_upstream/temporal/api/testservice/v1/request_response.proto +63 -0
- data/bridge/sdk-core/protos/testsrv_upstream/temporal/api/testservice/v1/service.proto +90 -0
- data/bridge/sdk-core/rustfmt.toml +1 -0
- data/bridge/sdk-core/sdk/Cargo.toml +47 -0
- data/bridge/sdk-core/sdk/LICENSE.txt +23 -0
- data/bridge/sdk-core/sdk/src/activity_context.rs +230 -0
- data/bridge/sdk-core/sdk/src/app_data.rs +37 -0
- data/bridge/sdk-core/sdk/src/conversions.rs +8 -0
- data/bridge/sdk-core/sdk/src/interceptors.rs +17 -0
- data/bridge/sdk-core/sdk/src/lib.rs +792 -0
- data/bridge/sdk-core/sdk/src/payload_converter.rs +11 -0
- data/bridge/sdk-core/sdk/src/workflow_context/options.rs +295 -0
- data/bridge/sdk-core/sdk/src/workflow_context.rs +683 -0
- data/bridge/sdk-core/sdk/src/workflow_future.rs +503 -0
- data/bridge/sdk-core/sdk-core-protos/Cargo.toml +30 -0
- data/bridge/sdk-core/sdk-core-protos/LICENSE.txt +23 -0
- data/bridge/sdk-core/sdk-core-protos/build.rs +108 -0
- data/bridge/sdk-core/sdk-core-protos/src/constants.rs +7 -0
- data/bridge/sdk-core/sdk-core-protos/src/history_builder.rs +497 -0
- data/bridge/sdk-core/sdk-core-protos/src/history_info.rs +230 -0
- data/bridge/sdk-core/sdk-core-protos/src/lib.rs +1910 -0
- data/bridge/sdk-core/sdk-core-protos/src/task_token.rs +38 -0
- data/bridge/sdk-core/sdk-core-protos/src/utilities.rs +14 -0
- data/bridge/sdk-core/test-utils/Cargo.toml +35 -0
- data/bridge/sdk-core/test-utils/src/canned_histories.rs +1579 -0
- data/bridge/sdk-core/test-utils/src/histfetch.rs +28 -0
- data/bridge/sdk-core/test-utils/src/lib.rs +598 -0
- data/bridge/sdk-core/tests/integ_tests/client_tests.rs +36 -0
- data/bridge/sdk-core/tests/integ_tests/ephemeral_server_tests.rs +128 -0
- data/bridge/sdk-core/tests/integ_tests/heartbeat_tests.rs +218 -0
- data/bridge/sdk-core/tests/integ_tests/polling_tests.rs +146 -0
- data/bridge/sdk-core/tests/integ_tests/queries_tests.rs +437 -0
- data/bridge/sdk-core/tests/integ_tests/visibility_tests.rs +93 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/activities.rs +878 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/appdata_propagation.rs +61 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/cancel_external.rs +59 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/cancel_wf.rs +58 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/child_workflows.rs +50 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/continue_as_new.rs +60 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/determinism.rs +54 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/local_activities.rs +634 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/patches.rs +113 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/replay.rs +137 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/resets.rs +93 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/signals.rs +167 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/stickyness.rs +99 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/timers.rs +131 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests/upsert_search_attrs.rs +75 -0
- data/bridge/sdk-core/tests/integ_tests/workflow_tests.rs +587 -0
- data/bridge/sdk-core/tests/load_tests.rs +191 -0
- data/bridge/sdk-core/tests/main.rs +111 -0
- data/bridge/sdk-core/tests/runner.rs +93 -0
- data/bridge/src/connection.rs +167 -0
- data/bridge/src/lib.rs +180 -0
- data/bridge/src/runtime.rs +47 -0
- data/bridge/src/worker.rs +73 -0
- data/ext/Rakefile +9 -0
- data/lib/bridge.so +0 -0
- data/lib/gen/dependencies/gogoproto/gogo_pb.rb +14 -0
- data/lib/gen/temporal/api/batch/v1/message_pb.rb +48 -0
- data/lib/gen/temporal/api/cluster/v1/message_pb.rb +67 -0
- data/lib/gen/temporal/api/command/v1/message_pb.rb +166 -0
- data/lib/gen/temporal/api/common/v1/message_pb.rb +69 -0
- data/lib/gen/temporal/api/enums/v1/batch_operation_pb.rb +32 -0
- data/lib/gen/temporal/api/enums/v1/cluster_pb.rb +26 -0
- data/lib/gen/temporal/api/enums/v1/command_type_pb.rb +37 -0
- data/lib/gen/temporal/api/enums/v1/common_pb.rb +41 -0
- data/lib/gen/temporal/api/enums/v1/event_type_pb.rb +67 -0
- data/lib/gen/temporal/api/enums/v1/failed_cause_pb.rb +71 -0
- data/lib/gen/temporal/api/enums/v1/namespace_pb.rb +37 -0
- data/lib/gen/temporal/api/enums/v1/query_pb.rb +31 -0
- data/lib/gen/temporal/api/enums/v1/reset_pb.rb +24 -0
- data/lib/gen/temporal/api/enums/v1/schedule_pb.rb +28 -0
- data/lib/gen/temporal/api/enums/v1/task_queue_pb.rb +30 -0
- data/lib/gen/temporal/api/enums/v1/update_pb.rb +28 -0
- data/lib/gen/temporal/api/enums/v1/workflow_pb.rb +89 -0
- data/lib/gen/temporal/api/errordetails/v1/message_pb.rb +84 -0
- data/lib/gen/temporal/api/failure/v1/message_pb.rb +83 -0
- data/lib/gen/temporal/api/filter/v1/message_pb.rb +40 -0
- data/lib/gen/temporal/api/history/v1/message_pb.rb +489 -0
- data/lib/gen/temporal/api/namespace/v1/message_pb.rb +63 -0
- data/lib/gen/temporal/api/operatorservice/v1/request_response_pb.rb +125 -0
- data/lib/gen/temporal/api/operatorservice/v1/service_pb.rb +20 -0
- data/lib/gen/temporal/api/query/v1/message_pb.rb +38 -0
- data/lib/gen/temporal/api/replication/v1/message_pb.rb +37 -0
- data/lib/gen/temporal/api/schedule/v1/message_pb.rb +128 -0
- data/lib/gen/temporal/api/taskqueue/v1/message_pb.rb +73 -0
- data/lib/gen/temporal/api/update/v1/message_pb.rb +26 -0
- data/lib/gen/temporal/api/version/v1/message_pb.rb +41 -0
- data/lib/gen/temporal/api/workflow/v1/message_pb.rb +110 -0
- data/lib/gen/temporal/api/workflowservice/v1/request_response_pb.rb +771 -0
- data/lib/gen/temporal/api/workflowservice/v1/service_pb.rb +20 -0
- data/lib/gen/temporal/sdk/core/activity_result/activity_result_pb.rb +58 -0
- data/lib/gen/temporal/sdk/core/activity_task/activity_task_pb.rb +57 -0
- data/lib/gen/temporal/sdk/core/bridge/bridge_pb.rb +222 -0
- data/lib/gen/temporal/sdk/core/child_workflow/child_workflow_pb.rb +57 -0
- data/lib/gen/temporal/sdk/core/common/common_pb.rb +22 -0
- data/lib/gen/temporal/sdk/core/core_interface_pb.rb +34 -0
- data/lib/gen/temporal/sdk/core/external_data/external_data_pb.rb +27 -0
- data/lib/gen/temporal/sdk/core/workflow_activation/workflow_activation_pb.rb +164 -0
- data/lib/gen/temporal/sdk/core/workflow_commands/workflow_commands_pb.rb +192 -0
- data/lib/gen/temporal/sdk/core/workflow_completion/workflow_completion_pb.rb +34 -0
- data/lib/temporal/bridge.rb +14 -0
- data/lib/temporal/client/implementation.rb +339 -0
- data/lib/temporal/client/workflow_handle.rb +243 -0
- data/lib/temporal/client.rb +144 -0
- data/lib/temporal/connection.rb +736 -0
- data/lib/temporal/data_converter.rb +150 -0
- data/lib/temporal/error/failure.rb +194 -0
- data/lib/temporal/error/workflow_failure.rb +17 -0
- data/lib/temporal/errors.rb +22 -0
- data/lib/temporal/failure_converter/base.rb +26 -0
- data/lib/temporal/failure_converter/basic.rb +313 -0
- data/lib/temporal/failure_converter.rb +8 -0
- data/lib/temporal/interceptor/chain.rb +27 -0
- data/lib/temporal/interceptor/client.rb +102 -0
- data/lib/temporal/payload_codec/base.rb +32 -0
- data/lib/temporal/payload_converter/base.rb +24 -0
- data/lib/temporal/payload_converter/bytes.rb +26 -0
- data/lib/temporal/payload_converter/composite.rb +47 -0
- data/lib/temporal/payload_converter/encoding_base.rb +35 -0
- data/lib/temporal/payload_converter/json.rb +25 -0
- data/lib/temporal/payload_converter/nil.rb +25 -0
- data/lib/temporal/payload_converter.rb +14 -0
- data/lib/temporal/retry_policy.rb +82 -0
- data/lib/temporal/retry_state.rb +35 -0
- data/lib/temporal/runtime.rb +22 -0
- data/lib/temporal/timeout_type.rb +29 -0
- data/lib/temporal/version.rb +3 -0
- data/lib/temporal/workflow/execution_info.rb +54 -0
- data/lib/temporal/workflow/execution_status.rb +36 -0
- data/lib/temporal/workflow/id_reuse_policy.rb +36 -0
- data/lib/temporal/workflow/query_reject_condition.rb +33 -0
- data/lib/temporal.rb +8 -0
- data/lib/temporalio.rb +3 -0
- data/lib/thermite_patch.rb +23 -0
- data/temporalio.gemspec +41 -0
- metadata +583 -0
@@ -0,0 +1,97 @@
|
|
1
|
+
// The MIT License
|
2
|
+
//
|
3
|
+
// Copyright (c) 2020 Temporal Technologies Inc. All rights reserved.
|
4
|
+
//
|
5
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
// of this software and associated documentation files (the "Software"), to deal
|
7
|
+
// in the Software without restriction, including without limitation the rights
|
8
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
// copies of the Software, and to permit persons to whom the Software is
|
10
|
+
// furnished to do so, subject to the following conditions:
|
11
|
+
//
|
12
|
+
// The above copyright notice and this permission notice shall be included in
|
13
|
+
// all copies or substantial portions of the Software.
|
14
|
+
//
|
15
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
// THE SOFTWARE.
|
22
|
+
|
23
|
+
syntax = "proto3";
|
24
|
+
|
25
|
+
package temporal.api.namespace.v1;
|
26
|
+
|
27
|
+
option go_package = "go.temporal.io/api/namespace/v1;namespace";
|
28
|
+
option java_package = "io.temporal.api.namespace.v1";
|
29
|
+
option java_multiple_files = true;
|
30
|
+
option java_outer_classname = "MessageProto";
|
31
|
+
option ruby_package = "Temporal::Api::Namespace::V1";
|
32
|
+
option csharp_namespace = "Temporal.Api.Namespace.V1";
|
33
|
+
|
34
|
+
import "google/protobuf/duration.proto";
|
35
|
+
import "google/protobuf/timestamp.proto";
|
36
|
+
|
37
|
+
import "dependencies/gogoproto/gogo.proto";
|
38
|
+
|
39
|
+
import "temporal/api/enums/v1/namespace.proto";
|
40
|
+
|
41
|
+
|
42
|
+
message NamespaceInfo {
|
43
|
+
string name = 1;
|
44
|
+
temporal.api.enums.v1.NamespaceState state = 2;
|
45
|
+
string description = 3;
|
46
|
+
string owner_email = 4;
|
47
|
+
// A key-value map for any customized purpose.
|
48
|
+
map<string, string> data = 5;
|
49
|
+
string id = 6;
|
50
|
+
|
51
|
+
// Whether scheduled workflows are supported on this namespace. This is only needed
|
52
|
+
// temporarily while the feature is experimental, so we can give it a high tag.
|
53
|
+
bool supports_schedules = 100;
|
54
|
+
}
|
55
|
+
|
56
|
+
message NamespaceConfig {
|
57
|
+
google.protobuf.Duration workflow_execution_retention_ttl = 1 [(gogoproto.stdduration) = true];
|
58
|
+
BadBinaries bad_binaries = 2;
|
59
|
+
// If unspecified (ARCHIVAL_STATE_UNSPECIFIED) then default server configuration is used.
|
60
|
+
temporal.api.enums.v1.ArchivalState history_archival_state = 3;
|
61
|
+
string history_archival_uri = 4;
|
62
|
+
// If unspecified (ARCHIVAL_STATE_UNSPECIFIED) then default server configuration is used.
|
63
|
+
temporal.api.enums.v1.ArchivalState visibility_archival_state = 5;
|
64
|
+
string visibility_archival_uri = 6;
|
65
|
+
}
|
66
|
+
|
67
|
+
message BadBinaries {
|
68
|
+
map<string, BadBinaryInfo> binaries = 1;
|
69
|
+
}
|
70
|
+
|
71
|
+
message BadBinaryInfo {
|
72
|
+
string reason = 1;
|
73
|
+
string operator = 2;
|
74
|
+
google.protobuf.Timestamp create_time = 3 [(gogoproto.stdtime) = true];
|
75
|
+
}
|
76
|
+
|
77
|
+
message UpdateNamespaceInfo {
|
78
|
+
string description = 1;
|
79
|
+
string owner_email = 2;
|
80
|
+
// A key-value map for any customized purpose.
|
81
|
+
// If data already exists on the namespace,
|
82
|
+
// this will merge with the existing key values.
|
83
|
+
map<string, string> data = 3;
|
84
|
+
// New namespace state, server will reject if transition is not allowed.
|
85
|
+
// Allowed transitions are:
|
86
|
+
// Registered -> [ Deleted | Deprecated | Handover ]
|
87
|
+
// Handover -> [ Registered ]
|
88
|
+
// Default is NAMESPACE_STATE_UNSPECIFIED which is do not change state.
|
89
|
+
temporal.api.enums.v1.NamespaceState state = 4;
|
90
|
+
}
|
91
|
+
|
92
|
+
message NamespaceFilter {
|
93
|
+
// By default namespaces in NAMESPACE_STATE_DELETED state are not included.
|
94
|
+
// Setting include_deleted to true will include deleted namespaces.
|
95
|
+
// Note: Namespace is in NAMESPACE_STATE_DELETED state when it was deleted from the system but associated data is not deleted yet.
|
96
|
+
bool include_deleted = 1;
|
97
|
+
}
|
data/bridge/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/request_response.proto
ADDED
@@ -0,0 +1,161 @@
|
|
1
|
+
// The MIT License
|
2
|
+
//
|
3
|
+
// Copyright (c) 2020 Temporal Technologies Inc. All rights reserved.
|
4
|
+
//
|
5
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
// of this software and associated documentation files (the "Software"), to deal
|
7
|
+
// in the Software without restriction, including without limitation the rights
|
8
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
// copies of the Software, and to permit persons to whom the Software is
|
10
|
+
// furnished to do so, subject to the following conditions:
|
11
|
+
//
|
12
|
+
// The above copyright notice and this permission notice shall be included in
|
13
|
+
// all copies or substantial portions of the Software.
|
14
|
+
//
|
15
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
// THE SOFTWARE.
|
22
|
+
|
23
|
+
syntax = "proto3";
|
24
|
+
|
25
|
+
package temporal.api.operatorservice.v1;
|
26
|
+
|
27
|
+
option go_package = "go.temporal.io/api/operatorservice/v1;operatorservice";
|
28
|
+
option java_package = "io.temporal.api.operatorservice.v1";
|
29
|
+
option java_multiple_files = true;
|
30
|
+
option java_outer_classname = "RequestResponseProto";
|
31
|
+
option ruby_package = "Temporal::Api::OperatorService::V1";
|
32
|
+
option csharp_namespace = "Temporal.Api.OperatorService.V1";
|
33
|
+
|
34
|
+
import "dependencies/gogoproto/gogo.proto";
|
35
|
+
import "google/protobuf/timestamp.proto";
|
36
|
+
import "google/protobuf/duration.proto";
|
37
|
+
|
38
|
+
import "temporal/api/cluster/v1/message.proto";
|
39
|
+
import "temporal/api/common/v1/message.proto";
|
40
|
+
import "temporal/api/enums/v1/cluster.proto";
|
41
|
+
import "temporal/api/enums/v1/common.proto";
|
42
|
+
import "temporal/api/version/v1/message.proto";
|
43
|
+
|
44
|
+
// (-- Search Attribute --)
|
45
|
+
|
46
|
+
message AddSearchAttributesRequest {
|
47
|
+
// Mapping between search attribute name and its IndexedValueType.
|
48
|
+
map<string, temporal.api.enums.v1.IndexedValueType> search_attributes = 1;
|
49
|
+
}
|
50
|
+
|
51
|
+
message AddSearchAttributesResponse {
|
52
|
+
}
|
53
|
+
|
54
|
+
message RemoveSearchAttributesRequest {
|
55
|
+
// Search attribute names to delete.
|
56
|
+
repeated string search_attributes = 1;
|
57
|
+
}
|
58
|
+
|
59
|
+
message RemoveSearchAttributesResponse {
|
60
|
+
}
|
61
|
+
|
62
|
+
message ListSearchAttributesRequest {
|
63
|
+
}
|
64
|
+
|
65
|
+
message ListSearchAttributesResponse {
|
66
|
+
// Mapping between custom (user-registered) search attribute name to its IndexedValueType.
|
67
|
+
map<string, temporal.api.enums.v1.IndexedValueType> custom_attributes = 1;
|
68
|
+
// Mapping between system (predefined) search attribute name to its IndexedValueType.
|
69
|
+
map<string, temporal.api.enums.v1.IndexedValueType> system_attributes = 2;
|
70
|
+
// Mapping from the attribute name to the visibility storage native type.
|
71
|
+
map<string, string> storage_schema = 3;
|
72
|
+
}
|
73
|
+
|
74
|
+
// (-- api-linter: core::0135::request-unknown-fields=disabled
|
75
|
+
// aip.dev/not-precedent: DeleteNamespace RPC doesn't follow Google API format. --)
|
76
|
+
// (-- api-linter: core::0135::request-name-required=disabled
|
77
|
+
// aip.dev/not-precedent: DeleteNamespace RPC doesn't follow Google API format. --)
|
78
|
+
message DeleteNamespaceRequest {
|
79
|
+
string namespace = 1;
|
80
|
+
}
|
81
|
+
|
82
|
+
message DeleteNamespaceResponse {
|
83
|
+
// Temporary namespace name that is used during reclaim resources step.
|
84
|
+
string deleted_namespace = 1;
|
85
|
+
}
|
86
|
+
|
87
|
+
// (-- api-linter: core::0135::request-unknown-fields=disabled
|
88
|
+
// aip.dev/not-precedent: DeleteNamespace RPC doesn't follow Google API format. --)
|
89
|
+
// (-- api-linter: core::0135::request-name-required=disabled
|
90
|
+
// aip.dev/not-precedent: DeleteNamespace RPC doesn't follow Google API format. --)
|
91
|
+
message DeleteWorkflowExecutionRequest {
|
92
|
+
string namespace = 1;
|
93
|
+
// Workflow Execution to delete. If run_id is not specified, the latest one is used.
|
94
|
+
temporal.api.common.v1.WorkflowExecution workflow_execution = 2;
|
95
|
+
}
|
96
|
+
|
97
|
+
message DeleteWorkflowExecutionResponse {
|
98
|
+
}
|
99
|
+
|
100
|
+
message AddOrUpdateRemoteClusterRequest {
|
101
|
+
string frontend_address = 1;
|
102
|
+
bool enable_remote_cluster_connection = 2;
|
103
|
+
}
|
104
|
+
|
105
|
+
message AddOrUpdateRemoteClusterResponse {
|
106
|
+
}
|
107
|
+
|
108
|
+
message RemoveRemoteClusterRequest {
|
109
|
+
string cluster_name = 1;
|
110
|
+
}
|
111
|
+
|
112
|
+
message RemoveRemoteClusterResponse {
|
113
|
+
}
|
114
|
+
|
115
|
+
message DescribeClusterRequest {
|
116
|
+
string cluster_name = 1;
|
117
|
+
}
|
118
|
+
|
119
|
+
message DescribeClusterResponse {
|
120
|
+
map<string,string> supported_clients = 1;
|
121
|
+
string server_version = 2;
|
122
|
+
temporal.api.cluster.v1.MembershipInfo membership_info = 3;
|
123
|
+
string cluster_id = 4;
|
124
|
+
string cluster_name = 5;
|
125
|
+
int32 history_shard_count = 6;
|
126
|
+
string persistence_store = 7;
|
127
|
+
string visibility_store = 8;
|
128
|
+
temporal.api.version.v1.VersionInfo version_info = 9;
|
129
|
+
int64 failover_version_increment = 10;
|
130
|
+
int64 initial_failover_version = 11;
|
131
|
+
bool is_global_namespace_enabled = 12;
|
132
|
+
}
|
133
|
+
|
134
|
+
message ListClustersRequest {
|
135
|
+
int32 page_size = 1;
|
136
|
+
bytes next_page_token = 2;
|
137
|
+
}
|
138
|
+
|
139
|
+
message ListClustersResponse {
|
140
|
+
repeated temporal.api.cluster.v1.ClusterMetadata clusters = 1;
|
141
|
+
bytes next_page_token = 2;
|
142
|
+
}
|
143
|
+
|
144
|
+
message ListClusterMembersRequest {
|
145
|
+
// (-- api-linter: core::0140::prepositions=disabled
|
146
|
+
// aip.dev/not-precedent: "within" is used to indicate a time range. --)
|
147
|
+
google.protobuf.Duration last_heartbeat_within = 1 [(gogoproto.stdduration) = true];
|
148
|
+
string rpc_address = 2;
|
149
|
+
string host_id = 3;
|
150
|
+
temporal.api.enums.v1.ClusterMemberRole role = 4;
|
151
|
+
// (-- api-linter: core::0140::prepositions=disabled
|
152
|
+
// aip.dev/not-precedent: "after" is used to indicate a time range. --)
|
153
|
+
google.protobuf.Timestamp session_started_after_time = 5 [(gogoproto.stdtime) = true];
|
154
|
+
int32 page_size = 6;
|
155
|
+
bytes next_page_token = 7;
|
156
|
+
}
|
157
|
+
|
158
|
+
message ListClusterMembersResponse {
|
159
|
+
repeated temporal.api.cluster.v1.ClusterMember active_members = 1;
|
160
|
+
bytes next_page_token = 2;
|
161
|
+
}
|
@@ -0,0 +1,99 @@
|
|
1
|
+
// The MIT License
|
2
|
+
//
|
3
|
+
// Copyright (c) 2020 Temporal Technologies Inc. All rights reserved.
|
4
|
+
//
|
5
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
// of this software and associated documentation files (the "Software"), to deal
|
7
|
+
// in the Software without restriction, including without limitation the rights
|
8
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
// copies of the Software, and to permit persons to whom the Software is
|
10
|
+
// furnished to do so, subject to the following conditions:
|
11
|
+
//
|
12
|
+
// The above copyright notice and this permission notice shall be included in
|
13
|
+
// all copies or substantial portions of the Software.
|
14
|
+
//
|
15
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
// THE SOFTWARE.
|
22
|
+
|
23
|
+
syntax = "proto3";
|
24
|
+
|
25
|
+
package temporal.api.operatorservice.v1;
|
26
|
+
|
27
|
+
option go_package = "go.temporal.io/api/operatorservice/v1;operatorservice";
|
28
|
+
option java_package = "io.temporal.api.operatorservice.v1";
|
29
|
+
option java_multiple_files = true;
|
30
|
+
option java_outer_classname = "ServiceProto";
|
31
|
+
option ruby_package = "Temporal::Api::OperatorService::V1";
|
32
|
+
option csharp_namespace = "Temporal.Api.OperatorService.V1";
|
33
|
+
|
34
|
+
|
35
|
+
import "temporal/api/operatorservice/v1/request_response.proto";
|
36
|
+
|
37
|
+
// OperatorService API defines how Temporal SDKs and other clients interact with the Temporal server
|
38
|
+
// to perform administrative functions like registering a search attribute or a namespace.
|
39
|
+
// APIs in this file could be not compatible with Temporal Cloud, hence it's usage in SDKs should be limited by
|
40
|
+
// designated APIs that clearly state that they shouldn't be used by the main Application (Workflows & Activities) framework.
|
41
|
+
service OperatorService {
|
42
|
+
// (-- Search Attribute --)
|
43
|
+
|
44
|
+
// AddSearchAttributes add custom search attributes.
|
45
|
+
//
|
46
|
+
// Returns ALREADY_EXISTS status code if a Search Attribute with any of the specified names already exists
|
47
|
+
// Returns INTERNAL status code with temporal.api.errordetails.v1.SystemWorkflowFailure in Error Details if registration process fails,
|
48
|
+
rpc AddSearchAttributes (AddSearchAttributesRequest) returns (AddSearchAttributesResponse) {
|
49
|
+
}
|
50
|
+
|
51
|
+
// RemoveSearchAttributes removes custom search attributes.
|
52
|
+
//
|
53
|
+
// Returns NOT_FOUND status code if a Search Attribute with any of the specified names is not registered
|
54
|
+
rpc RemoveSearchAttributes (RemoveSearchAttributesRequest) returns (RemoveSearchAttributesResponse) {
|
55
|
+
}
|
56
|
+
|
57
|
+
// ListSearchAttributes returns comprehensive information about search attributes.
|
58
|
+
rpc ListSearchAttributes (ListSearchAttributesRequest) returns (ListSearchAttributesResponse) {
|
59
|
+
}
|
60
|
+
|
61
|
+
// DeleteNamespace synchronously deletes a namespace and asynchronously reclaims all namespace resources.
|
62
|
+
// (-- api-linter: core::0135::method-signature=disabled
|
63
|
+
// aip.dev/not-precedent: DeleteNamespace RPC doesn't follow Google API format. --)
|
64
|
+
// (-- api-linter: core::0135::response-message-name=disabled
|
65
|
+
// aip.dev/not-precedent: DeleteNamespace RPC doesn't follow Google API format. --)
|
66
|
+
rpc DeleteNamespace (DeleteNamespaceRequest) returns (DeleteNamespaceResponse) {
|
67
|
+
}
|
68
|
+
|
69
|
+
// DeleteWorkflowExecution asynchronously deletes a specific Workflow Execution (when
|
70
|
+
// WorkflowExecution.run_id is provided) or the latest Workflow Execution (when
|
71
|
+
// WorkflowExecution.run_id is not provided). If the Workflow Execution is Running, it will be
|
72
|
+
// terminated before deletion.
|
73
|
+
// (-- api-linter: core::0135::method-signature=disabled
|
74
|
+
// aip.dev/not-precedent: DeleteNamespace RPC doesn't follow Google API format. --)
|
75
|
+
// (-- api-linter: core::0135::response-message-name=disabled
|
76
|
+
// aip.dev/not-precedent: DeleteNamespace RPC doesn't follow Google API format. --)
|
77
|
+
rpc DeleteWorkflowExecution (DeleteWorkflowExecutionRequest) returns (DeleteWorkflowExecutionResponse) {
|
78
|
+
}
|
79
|
+
|
80
|
+
// AddOrUpdateRemoteCluster adds or updates remote cluster.
|
81
|
+
rpc AddOrUpdateRemoteCluster(AddOrUpdateRemoteClusterRequest) returns (AddOrUpdateRemoteClusterResponse) {
|
82
|
+
}
|
83
|
+
|
84
|
+
// RemoveRemoteCluster removes remote cluster.
|
85
|
+
rpc RemoveRemoteCluster(RemoveRemoteClusterRequest) returns (RemoveRemoteClusterResponse) {
|
86
|
+
}
|
87
|
+
|
88
|
+
// DescribeCluster returns information about Temporal cluster.
|
89
|
+
rpc DescribeCluster(DescribeClusterRequest) returns (DescribeClusterResponse) {
|
90
|
+
}
|
91
|
+
|
92
|
+
// ListClusters returns information about Temporal clusters.
|
93
|
+
rpc ListClusters(ListClustersRequest) returns (ListClustersResponse) {
|
94
|
+
}
|
95
|
+
|
96
|
+
// ListClusterMembers returns information about Temporal cluster members.
|
97
|
+
rpc ListClusterMembers(ListClusterMembersRequest) returns (ListClusterMembersResponse) {
|
98
|
+
}
|
99
|
+
}
|
@@ -0,0 +1,61 @@
|
|
1
|
+
// The MIT License
|
2
|
+
//
|
3
|
+
// Copyright (c) 2020 Temporal Technologies Inc. All rights reserved.
|
4
|
+
//
|
5
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
// of this software and associated documentation files (the "Software"), to deal
|
7
|
+
// in the Software without restriction, including without limitation the rights
|
8
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
// copies of the Software, and to permit persons to whom the Software is
|
10
|
+
// furnished to do so, subject to the following conditions:
|
11
|
+
//
|
12
|
+
// The above copyright notice and this permission notice shall be included in
|
13
|
+
// all copies or substantial portions of the Software.
|
14
|
+
//
|
15
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
// THE SOFTWARE.
|
22
|
+
|
23
|
+
syntax = "proto3";
|
24
|
+
|
25
|
+
package temporal.api.query.v1;
|
26
|
+
|
27
|
+
option go_package = "go.temporal.io/api/query/v1;query";
|
28
|
+
option java_package = "io.temporal.api.query.v1";
|
29
|
+
option java_multiple_files = true;
|
30
|
+
option java_outer_classname = "MessageProto";
|
31
|
+
option ruby_package = "Temporal::Api::Query::V1";
|
32
|
+
option csharp_namespace = "Temporal.Api.Query.V1";
|
33
|
+
|
34
|
+
import "temporal/api/enums/v1/query.proto";
|
35
|
+
import "temporal/api/enums/v1/workflow.proto";
|
36
|
+
import "temporal/api/common/v1/message.proto";
|
37
|
+
|
38
|
+
// See https://docs.temporal.io/docs/concepts/queries/
|
39
|
+
message WorkflowQuery {
|
40
|
+
// The workflow-author-defined identifier of the query. Typically a function name.
|
41
|
+
string query_type = 1;
|
42
|
+
// Serialized arguments that will be provided to the query handler.
|
43
|
+
temporal.api.common.v1.Payloads query_args = 2;
|
44
|
+
// Headers that were passed by the caller of the query and copied by temporal
|
45
|
+
// server into the workflow task.
|
46
|
+
temporal.api.common.v1.Header header = 3;
|
47
|
+
}
|
48
|
+
|
49
|
+
// Answer to a `WorkflowQuery`
|
50
|
+
message WorkflowQueryResult {
|
51
|
+
// Did the query succeed or fail?
|
52
|
+
temporal.api.enums.v1.QueryResultType result_type = 1;
|
53
|
+
// Set when the query succeeds with the results
|
54
|
+
temporal.api.common.v1.Payloads answer = 2;
|
55
|
+
// Mutually exclusive with `answer`. Set when the query fails.
|
56
|
+
string error_message = 3;
|
57
|
+
}
|
58
|
+
|
59
|
+
message QueryRejected {
|
60
|
+
temporal.api.enums.v1.WorkflowExecutionStatus status = 1;
|
61
|
+
}
|
@@ -0,0 +1,55 @@
|
|
1
|
+
// The MIT License
|
2
|
+
//
|
3
|
+
// Copyright (c) 2020 Temporal Technologies Inc. All rights reserved.
|
4
|
+
//
|
5
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
// of this software and associated documentation files (the "Software"), to deal
|
7
|
+
// in the Software without restriction, including without limitation the rights
|
8
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
// copies of the Software, and to permit persons to whom the Software is
|
10
|
+
// furnished to do so, subject to the following conditions:
|
11
|
+
//
|
12
|
+
// The above copyright notice and this permission notice shall be included in
|
13
|
+
// all copies or substantial portions of the Software.
|
14
|
+
//
|
15
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
// THE SOFTWARE.
|
22
|
+
|
23
|
+
syntax = "proto3";
|
24
|
+
|
25
|
+
package temporal.api.replication.v1;
|
26
|
+
|
27
|
+
option go_package = "go.temporal.io/api/replication/v1;replication";
|
28
|
+
option java_package = "io.temporal.api.replication.v1";
|
29
|
+
option java_multiple_files = true;
|
30
|
+
option java_outer_classname = "MessageProto";
|
31
|
+
option ruby_package = "Temporal::Api::Replication::V1";
|
32
|
+
option csharp_namespace = "Temporal.Api.Replication.V1";
|
33
|
+
|
34
|
+
import "google/protobuf/timestamp.proto";
|
35
|
+
|
36
|
+
import "dependencies/gogoproto/gogo.proto";
|
37
|
+
|
38
|
+
import "temporal/api/enums/v1/namespace.proto";
|
39
|
+
|
40
|
+
message ClusterReplicationConfig {
|
41
|
+
string cluster_name = 1;
|
42
|
+
}
|
43
|
+
|
44
|
+
message NamespaceReplicationConfig {
|
45
|
+
string active_cluster_name = 1;
|
46
|
+
repeated ClusterReplicationConfig clusters = 2;
|
47
|
+
temporal.api.enums.v1.ReplicationState state = 3;
|
48
|
+
}
|
49
|
+
|
50
|
+
// Represents a historical replication status of a Namespace
|
51
|
+
message FailoverStatus {
|
52
|
+
// Timestamp when the Cluster switched to the following failover_version
|
53
|
+
google.protobuf.Timestamp failover_time = 1 [(gogoproto.stdtime) = true];
|
54
|
+
int64 failover_version = 2;
|
55
|
+
}
|