Skip to main content

tapis_workflows/models/
task.rs

1/*
2 * Tapis Workflows API
3 *
4 * Create and manage pipelines
5 *
6 * The version of the OpenAPI document: 1.6.0
7 * Contact: cicsupport@tacc.utexas.edu
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14use serde_with::serde_as;
15
16#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
17#[serde(tag = "type")]
18pub enum Task {
19    #[serde(rename = "image_build")]
20    ImageBuild(Box<models::ImageBuildTask>),
21    #[serde(rename = "request")]
22    Request(Box<models::RequestTask>),
23    #[serde(rename = "application")]
24    Application(Box<models::ApplicationTask>),
25    #[serde(rename = "tapis_job")]
26    TapisJob(Box<models::TapisJobTask>),
27    #[serde(rename = "tapis_actor")]
28    TapisActor(Box<models::TapisActorTask>),
29    #[serde(rename = "function")]
30    Function(Box<models::FunctionTask>),
31    #[serde(rename = "template")]
32    Template(Box<models::TemplateTask>),
33}
34
35impl Default for Task {
36    fn default() -> Self {
37        Self::ImageBuild(Default::default())
38    }
39}