#[non_exhaustive]pub struct CreateWorkflowRequest {
pub data: WorkflowData,
pub additional_properties: BTreeMap<String, Value>,
/* private fields */
}
Expand description
A request object for creating a new workflow.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.data: WorkflowData
Data related to the workflow.
additional_properties: BTreeMap<String, Value>
Implementations§
Source§impl CreateWorkflowRequest
impl CreateWorkflowRequest
Sourcepub fn new(data: WorkflowData) -> CreateWorkflowRequest
pub fn new(data: WorkflowData) -> CreateWorkflowRequest
Examples found in repository?
examples/v2_workflow-automation_CreateWorkflow.rs (lines 31-94)
30async fn main() {
31 let body = CreateWorkflowRequest::new(WorkflowData::new(
32 WorkflowDataAttributes::new(
33 "Example Workflow".to_string(),
34 Spec::new()
35 .connection_envs(vec![ConnectionEnv::new(ConnectionEnvEnv::DEFAULT)
36 .connections(vec![Connection::new(
37 "11111111-1111-1111-1111-111111111111".to_string(),
38 "INTEGRATION_DATADOG".to_string(),
39 )])])
40 .handle("my-handle".to_string())
41 .input_schema(InputSchema::new().parameters(vec![
42 InputSchemaParameters::new(
43 "input".to_string(),
44 InputSchemaParametersType::STRING,
45 ).default_value(Value::from("default"))
46 ]))
47 .output_schema(OutputSchema::new().parameters(vec![
48 OutputSchemaParameters::new(
49 "output".to_string(),
50 OutputSchemaParametersType::ARRAY_OBJECT,
51 ).value(Value::from("outputValue"))
52 ]))
53 .steps(vec![
54 Step::new(
55 "com.datadoghq.dd.monitor.listMonitors".to_string(),
56 "Step1".to_string(),
57 )
58 .connection_label("INTEGRATION_DATADOG".to_string())
59 .outbound_edges(vec![OutboundEdge::new(
60 "main".to_string(),
61 "Step2".to_string(),
62 )])
63 .parameters(vec![Parameter::new(
64 "tags".to_string(),
65 Value::from("service:monitoring"),
66 )]),
67 Step::new("com.datadoghq.core.noop".to_string(), "Step2".to_string()),
68 ])
69 .triggers(vec![
70 Trigger::MonitorTriggerWrapper(Box::new(
71 MonitorTriggerWrapper::new(
72 MonitorTrigger::new().rate_limit(
73 TriggerRateLimit::new()
74 .count(1)
75 .interval("3600s".to_string()),
76 ),
77 )
78 .start_step_names(vec!["Step1".to_string()]),
79 )),
80 Trigger::GithubWebhookTriggerWrapper(Box::new(
81 GithubWebhookTriggerWrapper::new(GithubWebhookTrigger::new())
82 .start_step_names(vec!["Step1".to_string()]),
83 )),
84 ]),
85 )
86 .description("A sample workflow.".to_string())
87 .published(true)
88 .tags(vec![
89 "team:infra".to_string(),
90 "service:monitoring".to_string(),
91 "foo:bar".to_string(),
92 ]),
93 WorkflowDataType::WORKFLOWS,
94 ));
95 let configuration = datadog::Configuration::new();
96 let api = WorkflowAutomationAPI::with_config(configuration);
97 let resp = api.create_workflow(body).await;
98 if let Ok(value) = resp {
99 println!("{:#?}", value);
100 } else {
101 println!("{:#?}", resp.unwrap_err());
102 }
103}
pub fn additional_properties(self, value: BTreeMap<String, Value>) -> Self
Trait Implementations§
Source§impl Clone for CreateWorkflowRequest
impl Clone for CreateWorkflowRequest
Source§fn clone(&self) -> CreateWorkflowRequest
fn clone(&self) -> CreateWorkflowRequest
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for CreateWorkflowRequest
impl Debug for CreateWorkflowRequest
Source§impl<'de> Deserialize<'de> for CreateWorkflowRequest
impl<'de> Deserialize<'de> for CreateWorkflowRequest
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for CreateWorkflowRequest
impl PartialEq for CreateWorkflowRequest
Source§impl Serialize for CreateWorkflowRequest
impl Serialize for CreateWorkflowRequest
impl StructuralPartialEq for CreateWorkflowRequest
Auto Trait Implementations§
impl Freeze for CreateWorkflowRequest
impl RefUnwindSafe for CreateWorkflowRequest
impl Send for CreateWorkflowRequest
impl Sync for CreateWorkflowRequest
impl Unpin for CreateWorkflowRequest
impl UnwindSafe for CreateWorkflowRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more