diff --git a/cre/capabilities/blockchain/evm/v1alpha/client.proto b/cre/capabilities/blockchain/evm/v1alpha/client.proto index 0db35d3f..4ecda88a 100644 --- a/cre/capabilities/blockchain/evm/v1alpha/client.proto +++ b/cre/capabilities/blockchain/evm/v1alpha/client.proto @@ -293,6 +293,10 @@ service Client { key: "gnosis_chain-mainnet" value: 465200170687744372 }, + { + key: "gnosis_chain-testnet-chiado" + value: 8871595565390010547 + }, { key: "hyperliquid-mainnet" value: 2442541497099098535 diff --git a/cre/go/installer/pkg/embedded_gen.go b/cre/go/installer/pkg/embedded_gen.go index 282e61f8..f921c28e 100755 --- a/cre/go/installer/pkg/embedded_gen.go +++ b/cre/go/installer/pkg/embedded_gen.go @@ -490,6 +490,10 @@ service Client { key: "gnosis_chain-mainnet" value: 465200170687744372 }, + { + key: "gnosis_chain-testnet-chiado" + value: 8871595565390010547 + }, { key: "hyperliquid-mainnet" value: 2442541497099098535 diff --git a/workflows/go/generate.go b/workflows/go/generate.go index a799e784..36fb64c5 100644 --- a/workflows/go/generate.go +++ b/workflows/go/generate.go @@ -29,6 +29,7 @@ package workflows //go:generate protoc --proto_path=../ --go_out=./ --go_opt=module=github.com/smartcontractkit/chainlink-protos/workflows/go ../workflows/v2/capability_execution_started.proto //go:generate protoc --proto_path=../ --go_out=./ --go_opt=module=github.com/smartcontractkit/chainlink-protos/workflows/go ../workflows/v2/capability_execution_finished.proto //go:generate protoc --proto_path=../ --go_out=./ --go_opt=module=github.com/smartcontractkit/chainlink-protos/workflows/go ../workflows/v2/workflow_user_log.proto +//go:generate protoc --proto_path=../ --go_out=./ --go_opt=module=github.com/smartcontractkit/chainlink-protos/workflows/go ../workflows/v2/workflow_user_metric.proto //go:generate protoc --proto_path=../ --go_out=./ --go_opt=module=github.com/smartcontractkit/chainlink-protos/workflows/go ../workflows/v2/xxx_no_send.proto // sources/v1 - workflow metadata source service diff --git a/workflows/go/v2/workflow_user_metric.pb.go b/workflows/go/v2/workflow_user_metric.pb.go new file mode 100644 index 00000000..9fae638f --- /dev/null +++ b/workflows/go/v2/workflow_user_metric.pb.go @@ -0,0 +1,253 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.36.6 +// protoc v5.29.3 +// source: workflows/v2/workflow_user_metric.proto + +package v2 + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" + unsafe "unsafe" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type UserMetricType int32 + +const ( + UserMetricType_USER_METRIC_TYPE_UNSPECIFIED UserMetricType = 0 + UserMetricType_USER_METRIC_TYPE_COUNTER UserMetricType = 1 + UserMetricType_USER_METRIC_TYPE_GAUGE UserMetricType = 2 +) + +// Enum value maps for UserMetricType. +var ( + UserMetricType_name = map[int32]string{ + 0: "USER_METRIC_TYPE_UNSPECIFIED", + 1: "USER_METRIC_TYPE_COUNTER", + 2: "USER_METRIC_TYPE_GAUGE", + } + UserMetricType_value = map[string]int32{ + "USER_METRIC_TYPE_UNSPECIFIED": 0, + "USER_METRIC_TYPE_COUNTER": 1, + "USER_METRIC_TYPE_GAUGE": 2, + } +) + +func (x UserMetricType) Enum() *UserMetricType { + p := new(UserMetricType) + *p = x + return p +} + +func (x UserMetricType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (UserMetricType) Descriptor() protoreflect.EnumDescriptor { + return file_workflows_v2_workflow_user_metric_proto_enumTypes[0].Descriptor() +} + +func (UserMetricType) Type() protoreflect.EnumType { + return &file_workflows_v2_workflow_user_metric_proto_enumTypes[0] +} + +func (x UserMetricType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use UserMetricType.Descriptor instead. +func (UserMetricType) EnumDescriptor() ([]byte, []int) { + return file_workflows_v2_workflow_user_metric_proto_rawDescGZIP(), []int{0} +} + +type WorkflowUserMetric struct { + state protoimpl.MessageState `protogen:"open.v1"` + CreInfo *CreInfo `protobuf:"bytes,1,opt,name=creInfo,proto3" json:"creInfo,omitempty"` + Workflow *WorkflowKey `protobuf:"bytes,2,opt,name=workflow,proto3" json:"workflow,omitempty"` + WorkflowExecutionID string `protobuf:"bytes,3,opt,name=workflowExecutionID,proto3" json:"workflowExecutionID,omitempty"` + Timestamp string `protobuf:"bytes,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` + Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"` + Value float64 `protobuf:"fixed64,6,opt,name=value,proto3" json:"value,omitempty"` + Type UserMetricType `protobuf:"varint,7,opt,name=type,proto3,enum=workflows.v2.UserMetricType" json:"type,omitempty"` + Labels map[string]string `protobuf:"bytes,8,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *WorkflowUserMetric) Reset() { + *x = WorkflowUserMetric{} + mi := &file_workflows_v2_workflow_user_metric_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *WorkflowUserMetric) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*WorkflowUserMetric) ProtoMessage() {} + +func (x *WorkflowUserMetric) ProtoReflect() protoreflect.Message { + mi := &file_workflows_v2_workflow_user_metric_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use WorkflowUserMetric.ProtoReflect.Descriptor instead. +func (*WorkflowUserMetric) Descriptor() ([]byte, []int) { + return file_workflows_v2_workflow_user_metric_proto_rawDescGZIP(), []int{0} +} + +func (x *WorkflowUserMetric) GetCreInfo() *CreInfo { + if x != nil { + return x.CreInfo + } + return nil +} + +func (x *WorkflowUserMetric) GetWorkflow() *WorkflowKey { + if x != nil { + return x.Workflow + } + return nil +} + +func (x *WorkflowUserMetric) GetWorkflowExecutionID() string { + if x != nil { + return x.WorkflowExecutionID + } + return "" +} + +func (x *WorkflowUserMetric) GetTimestamp() string { + if x != nil { + return x.Timestamp + } + return "" +} + +func (x *WorkflowUserMetric) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *WorkflowUserMetric) GetValue() float64 { + if x != nil { + return x.Value + } + return 0 +} + +func (x *WorkflowUserMetric) GetType() UserMetricType { + if x != nil { + return x.Type + } + return UserMetricType_USER_METRIC_TYPE_UNSPECIFIED +} + +func (x *WorkflowUserMetric) GetLabels() map[string]string { + if x != nil { + return x.Labels + } + return nil +} + +var File_workflows_v2_workflow_user_metric_proto protoreflect.FileDescriptor + +const file_workflows_v2_workflow_user_metric_proto_rawDesc = "" + + "\n" + + "'workflows/v2/workflow_user_metric.proto\x12\fworkflows.v2\x1a\x1bworkflows/v2/cre_info.proto\x1a\x1fworkflows/v2/workflow_key.proto\"\xa9\x03\n" + + "\x12WorkflowUserMetric\x12/\n" + + "\acreInfo\x18\x01 \x01(\v2\x15.workflows.v2.CreInfoR\acreInfo\x125\n" + + "\bworkflow\x18\x02 \x01(\v2\x19.workflows.v2.WorkflowKeyR\bworkflow\x120\n" + + "\x13workflowExecutionID\x18\x03 \x01(\tR\x13workflowExecutionID\x12\x1c\n" + + "\ttimestamp\x18\x04 \x01(\tR\ttimestamp\x12\x12\n" + + "\x04name\x18\x05 \x01(\tR\x04name\x12\x14\n" + + "\x05value\x18\x06 \x01(\x01R\x05value\x120\n" + + "\x04type\x18\a \x01(\x0e2\x1c.workflows.v2.UserMetricTypeR\x04type\x12D\n" + + "\x06labels\x18\b \x03(\v2,.workflows.v2.WorkflowUserMetric.LabelsEntryR\x06labels\x1a9\n" + + "\vLabelsEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01*l\n" + + "\x0eUserMetricType\x12 \n" + + "\x1cUSER_METRIC_TYPE_UNSPECIFIED\x10\x00\x12\x1c\n" + + "\x18USER_METRIC_TYPE_COUNTER\x10\x01\x12\x1a\n" + + "\x16USER_METRIC_TYPE_GAUGE\x10\x02B>Z workflows.v2.CreInfo + 4, // 1: workflows.v2.WorkflowUserMetric.workflow:type_name -> workflows.v2.WorkflowKey + 0, // 2: workflows.v2.WorkflowUserMetric.type:type_name -> workflows.v2.UserMetricType + 2, // 3: workflows.v2.WorkflowUserMetric.labels:type_name -> workflows.v2.WorkflowUserMetric.LabelsEntry + 4, // [4:4] is the sub-list for method output_type + 4, // [4:4] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name +} + +func init() { file_workflows_v2_workflow_user_metric_proto_init() } +func file_workflows_v2_workflow_user_metric_proto_init() { + if File_workflows_v2_workflow_user_metric_proto != nil { + return + } + file_workflows_v2_cre_info_proto_init() + file_workflows_v2_workflow_key_proto_init() + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: unsafe.Slice(unsafe.StringData(file_workflows_v2_workflow_user_metric_proto_rawDesc), len(file_workflows_v2_workflow_user_metric_proto_rawDesc)), + NumEnums: 1, + NumMessages: 2, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_workflows_v2_workflow_user_metric_proto_goTypes, + DependencyIndexes: file_workflows_v2_workflow_user_metric_proto_depIdxs, + EnumInfos: file_workflows_v2_workflow_user_metric_proto_enumTypes, + MessageInfos: file_workflows_v2_workflow_user_metric_proto_msgTypes, + }.Build() + File_workflows_v2_workflow_user_metric_proto = out.File + file_workflows_v2_workflow_user_metric_proto_goTypes = nil + file_workflows_v2_workflow_user_metric_proto_depIdxs = nil +} diff --git a/workflows/workflows/v2/workflow_user_metric.proto b/workflows/workflows/v2/workflow_user_metric.proto new file mode 100644 index 00000000..3d39c18b --- /dev/null +++ b/workflows/workflows/v2/workflow_user_metric.proto @@ -0,0 +1,26 @@ +syntax = "proto3"; + +package workflows.v2; + +import "workflows/v2/cre_info.proto"; +import "workflows/v2/workflow_key.proto"; + +option go_package = "github.com/smartcontractkit/chainlink-protos/workflows/go/v2"; + +enum UserMetricType { + USER_METRIC_TYPE_UNSPECIFIED = 0; + USER_METRIC_TYPE_COUNTER = 1; + USER_METRIC_TYPE_GAUGE = 2; +} + +message WorkflowUserMetric { + CreInfo creInfo = 1; + WorkflowKey workflow = 2; + string workflowExecutionID = 3; + string timestamp = 4; + + string name = 5; + double value = 6; + UserMetricType type = 7; + map labels = 8; +}