You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
I need to run an operation after other operations have completed.
component:
kind: wick/component/composite@v1with:
- name: db_urltype: stringoperations:
- name: migration_1uses:
- name: COMPLETE_MIGRATIONoperation: candle_cloud_db::complete_migrationflow:
- candle_cloud_db::create_migrations_table.output -> drop
- candle_cloud_db::create_users_table.output -> drop
- candle_cloud_db::create_oauth_sessions_table.output -> drop
- candle_cloud_db::create_oidc_claims_table.output -> drop
- candle_cloud_db::create_tenants_table.output -> drop
- candle_cloud_db::create_tenant_users_table.output -> drop
- candle_cloud_db::create_deployments_table.output -> drop
- candle_cloud_db::create_secrets_table.output -> drop
- <>.name -> COMPLETE_MIGRATION.name
- COMPLETE_MIGRATION.output -> <>.output
In this operation, I need to run create_tenant_users_table only after create_tenants_table and create_users_table completes.
Propose a solution
Make a _ component input. _ will not provide any value but just act as a means of informing the operation that prior operations must execute before the named instance operation executes.
In the following example, CREATE_TENANT_USERS_TABLE will only run after both create_users_table and create_tenants_table has completed.
component:
kind: wick/component/composite@v1with:
- name: db_urltype: stringoperations:
- name: migration_1uses:
- name: CREATE_TENANT_USERS_TABLEoperation: candle_cloud_db::create_tenant_users_table
- name: COMPLETE_MIGRATIONoperation: candle_cloud_db::complete_migrationflow:
- candle_cloud_db::create_migrations_table.output -> drop
- candle_cloud_db::create_users_table.output -> CREATE_TENANT_USERS_TABLE._
- candle_cloud_db::create_oauth_sessions_table.output -> drop
- candle_cloud_db::create_oidc_claims_table.output -> drop
- candle_cloud_db::create_tenants_table.output -> CREATE_TENANT_USERS_TABLE._
- CREATE_TENANT_USERS_TABLE.output -> drop
- candle_cloud_db::create_deployments_table.output -> drop
- candle_cloud_db::create_secrets_table.output -> drop
- <>.name -> COMPLETE_MIGRATION.name
- COMPLETE_MIGRATION.output -> <>.output
Describe alternatives you've considered
None
Additional context
None
The text was updated successfully, but these errors were encountered:
There does need to be a synchronization gate or some way of denoting order for operations with no/no related input/output. This proposal is very specific to inputless operations with dropped outputs.
To satisfy the case above, you could introduce inputs to the dependent SQL operations (even if they're unused in the query) to hold them from executing and pipe the upstream outputs to the unused inputs to act as a gate. It's not perfect, but it should work while we iterate on a sync solution.
What about an implicit output (_done) and an implicit input (_start) that is only sent if connected and is only sent within a "flow" context when an operation has fully completed?
This would give syntax akin to above, but wouldn't require dropping the upstream output.
Is your feature request related to a problem? Please describe.
I need to run an operation after other operations have completed.
In this operation, I need to run
create_tenant_users_table
only aftercreate_tenants_table
andcreate_users_table
completes.Propose a solution
Make a
_
component input._
will not provide any value but just act as a means of informing the operation that prior operations must execute before the named instance operation executes.In the following example,
CREATE_TENANT_USERS_TABLE
will only run after bothcreate_users_table
andcreate_tenants_table
has completed.Describe alternatives you've considered
None
Additional context
None
The text was updated successfully, but these errors were encountered: