Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions pkg/capabilities/capabilities.go
Original file line number Diff line number Diff line change
Expand Up @@ -106,8 +106,11 @@ type RequestMetadata struct {
// Use DecodedWorkflowName if the human readable name needs to be exposed, such as for logging purposes.
DecodedWorkflowName string
// SpendLimits is expected to be an array of tuples of spend type and limit. i.e. CONSENSUS -> 100_000
SpendLimits []SpendLimit
WorkflowTag string
SpendLimits []SpendLimit
WorkflowTag string
WorkflowRegistryChainSelector string
WorkflowRegistryAddress string
EngineVersion string
}

func (m *RequestMetadata) ContextWithCRE(ctx context.Context) context.Context {
Expand Down
57 changes: 42 additions & 15 deletions pkg/capabilities/pb/capabilities.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions pkg/capabilities/pb/capabilities.proto
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,9 @@ message RequestMetadata {
string decoded_workflow_name = 9;
repeated SpendLimit spend_limits = 10;
string workflow_tag = 11;
string workflow_registry_chain_selector = 12;
string workflow_registry_address = 13;
string engine_version = 14;
}

message CapabilityRequest {
Expand Down
46 changes: 26 additions & 20 deletions pkg/capabilities/pb/capabilities_helpers.go
Original file line number Diff line number Diff line change
Expand Up @@ -314,16 +314,19 @@ func TriggerRegistrationRequestToProto(req capabilities.TriggerRegistrationReque
return &TriggerRegistrationRequest{
TriggerId: req.TriggerID,
Metadata: &RequestMetadata{
WorkflowId: md.WorkflowID,
WorkflowExecutionId: md.WorkflowExecutionID,
WorkflowOwner: md.WorkflowOwner,
WorkflowName: md.WorkflowName,
WorkflowDonId: md.WorkflowDonID,
WorkflowDonConfigVersion: md.WorkflowDonConfigVersion,
ReferenceId: md.ReferenceID,
DecodedWorkflowName: md.DecodedWorkflowName,
SpendLimits: spendLimitsToProto(md.SpendLimits),
WorkflowTag: md.WorkflowTag,
WorkflowId: md.WorkflowID,
WorkflowExecutionId: md.WorkflowExecutionID,
WorkflowOwner: md.WorkflowOwner,
WorkflowName: md.WorkflowName,
WorkflowDonId: md.WorkflowDonID,
WorkflowDonConfigVersion: md.WorkflowDonConfigVersion,
ReferenceId: md.ReferenceID,
DecodedWorkflowName: md.DecodedWorkflowName,
SpendLimits: spendLimitsToProto(md.SpendLimits),
WorkflowTag: md.WorkflowTag,
WorkflowRegistryChainSelector: md.WorkflowRegistryChainSelector,
WorkflowRegistryAddress: md.WorkflowRegistryAddress,
EngineVersion: md.EngineVersion,
},
Config: values.ProtoMap(config),
Payload: req.Payload,
Expand Down Expand Up @@ -361,16 +364,19 @@ func TriggerRegistrationRequestFromProto(req *TriggerRegistrationRequest) (capab
return capabilities.TriggerRegistrationRequest{
TriggerID: req.TriggerId,
Metadata: capabilities.RequestMetadata{
WorkflowID: md.WorkflowId,
WorkflowOwner: md.WorkflowOwner,
WorkflowExecutionID: md.WorkflowExecutionId,
WorkflowName: md.WorkflowName,
WorkflowDonID: md.WorkflowDonId,
WorkflowDonConfigVersion: md.WorkflowDonConfigVersion,
ReferenceID: md.ReferenceId,
DecodedWorkflowName: md.DecodedWorkflowName,
SpendLimits: spendLimitsFromProto(md.SpendLimits),
WorkflowTag: md.WorkflowTag,
WorkflowID: md.WorkflowId,
WorkflowOwner: md.WorkflowOwner,
WorkflowExecutionID: md.WorkflowExecutionId,
WorkflowName: md.WorkflowName,
WorkflowDonID: md.WorkflowDonId,
WorkflowDonConfigVersion: md.WorkflowDonConfigVersion,
ReferenceID: md.ReferenceId,
DecodedWorkflowName: md.DecodedWorkflowName,
SpendLimits: spendLimitsFromProto(md.SpendLimits),
WorkflowTag: md.WorkflowTag,
WorkflowRegistryChainSelector: md.WorkflowRegistryChainSelector,
WorkflowRegistryAddress: md.WorkflowRegistryAddress,
EngineVersion: md.EngineVersion,
},
Config: config,
Payload: req.Payload,
Expand Down
31 changes: 23 additions & 8 deletions pkg/workflows/events/trigger_events.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,17 @@ import (

// Label keys for trigger events
const (
KeyTriggerID = "trigger_id"
KeyWorkflowID = "workflow_id"
KeyWorkflowOwner = "workflow_owner"
KeyWorkflowName = "workflow_name"
KeyWorkflowExecutionID = "workflow_execution_id"
KeyDonID = "don_id"
KeyDonVersion = "don_version"
KeyOrganizationID = "organization_id"
KeyTriggerID = "trigger_id"
KeyWorkflowID = "workflow_id"
KeyWorkflowOwner = "workflow_owner"
KeyWorkflowName = "workflow_name"
KeyWorkflowExecutionID = "workflow_execution_id"
KeyDonID = "don_id"
KeyDonVersion = "don_version"
KeyOrganizationID = "organization_id"
KeyWorkflowRegistryChainSelector = "workflow_registry_chain_selector"
KeyWorkflowRegistryAddress = "workflow_registry_address"
KeyEngineVersion = "engine_version"
)

// EmitTriggerExecutionStarted emits a TriggerExecutionStarted event using the provided labeler
Expand Down Expand Up @@ -68,6 +71,18 @@ func EmitTriggerExecutionStarted(ctx context.Context, labeler custmsg.MessageEmi
}
}

if workflowRegistryChainSelector, exists := labels[KeyWorkflowRegistryChainSelector]; exists {
event.CreInfo.WorkflowRegistryChain = workflowRegistryChainSelector
}

if workflowRegistryAddress, exists := labels[KeyWorkflowRegistryAddress]; exists {
event.CreInfo.WorkflowRegistryAddress = workflowRegistryAddress
}

if engineVersion, exists := labels[KeyEngineVersion]; exists {
event.CreInfo.EngineVersion = engineVersion
}

b, err := proto.Marshal(event)
if err != nil {
return fmt.Errorf("failed to marshal TriggerExecutionStarted event: %w", err)
Expand Down
Loading