tapis_workflows/models/
enum_runtime_environment.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(
16 Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, Default,
17)]
18pub enum EnumRuntimeEnvironment {
19 #[serde(rename = "tapis/workflows-python-singularity:0.1.0")]
20 #[default]
21 TapisSlashWorkflowsPythonSingularityColon010,
22 #[serde(rename = "python:latest")]
23 PythonColonLatest,
24 #[serde(rename = "python:slim")]
25 PythonColonSlim,
26 #[serde(rename = "python:3.12")]
27 PythonColon312,
28 #[serde(rename = "python:3.12-slim")]
29 PythonColon312Slim,
30 #[serde(rename = "python:3.11")]
31 PythonColon311,
32 #[serde(rename = "python:3.11-slim")]
33 PythonColon311Slim,
34 #[serde(rename = "python:3.10")]
35 PythonColon310,
36 #[serde(rename = "python:3.10-slim")]
37 PythonColon310Slim,
38 #[serde(rename = "python:3.9")]
39 PythonColon39,
40 #[serde(rename = "python:3.9-slim")]
41 PythonColon39Slim,
42 #[serde(rename = "python:3.8")]
43 PythonColon38,
44 #[serde(rename = "python:3.8-slim")]
45 PythonColon38Slim,
46 #[serde(rename = "python:2.7.18")]
47 PythonColon2718,
48 #[serde(rename = "python:2.7.18-slim")]
49 PythonColon2718Slim,
50 #[serde(rename = "tensorflow/tensorflow:latest")]
51 TensorflowSlashTensorflowColonLatest,
52 #[serde(rename = "tensorflow/tensorflow:latest-gpu")]
53 TensorflowSlashTensorflowColonLatestGpu,
54 #[serde(rename = "tensorflow/tensorflow:2.12.0")]
55 TensorflowSlashTensorflowColon2120,
56 #[serde(rename = "tensorflow/tensorflow:2.12.0-gpu")]
57 TensorflowSlashTensorflowColon2120Gpu,
58 #[serde(rename = "pytorch/pytorch:latest")]
59 PytorchSlashPytorchColonLatest,
60 #[serde(rename = "huggingface/transformers-pytorch-gpu:latest")]
61 HuggingfaceSlashTransformersPytorchGpuColonLatest,
62 #[serde(rename = "huggingface/transformers-pytorch-gpu:4.29.2")]
63 HuggingfaceSlashTransformersPytorchGpuColon4292,
64 #[serde(rename = "ghcr.io/tobiashi26/pygeoflood-container:main")]
65 GhcrIoSlashTobiashi26SlashPygeofloodContainerColonMain,
66}
67
68impl std::fmt::Display for EnumRuntimeEnvironment {
69 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
70 match self {
71 Self::TapisSlashWorkflowsPythonSingularityColon010 => {
72 write!(f, "tapis/workflows-python-singularity:0.1.0")
73 }
74 Self::PythonColonLatest => write!(f, "python:latest"),
75 Self::PythonColonSlim => write!(f, "python:slim"),
76 Self::PythonColon312 => write!(f, "python:3.12"),
77 Self::PythonColon312Slim => write!(f, "python:3.12-slim"),
78 Self::PythonColon311 => write!(f, "python:3.11"),
79 Self::PythonColon311Slim => write!(f, "python:3.11-slim"),
80 Self::PythonColon310 => write!(f, "python:3.10"),
81 Self::PythonColon310Slim => write!(f, "python:3.10-slim"),
82 Self::PythonColon39 => write!(f, "python:3.9"),
83 Self::PythonColon39Slim => write!(f, "python:3.9-slim"),
84 Self::PythonColon38 => write!(f, "python:3.8"),
85 Self::PythonColon38Slim => write!(f, "python:3.8-slim"),
86 Self::PythonColon2718 => write!(f, "python:2.7.18"),
87 Self::PythonColon2718Slim => write!(f, "python:2.7.18-slim"),
88 Self::TensorflowSlashTensorflowColonLatest => write!(f, "tensorflow/tensorflow:latest"),
89 Self::TensorflowSlashTensorflowColonLatestGpu => {
90 write!(f, "tensorflow/tensorflow:latest-gpu")
91 }
92 Self::TensorflowSlashTensorflowColon2120 => write!(f, "tensorflow/tensorflow:2.12.0"),
93 Self::TensorflowSlashTensorflowColon2120Gpu => {
94 write!(f, "tensorflow/tensorflow:2.12.0-gpu")
95 }
96 Self::PytorchSlashPytorchColonLatest => write!(f, "pytorch/pytorch:latest"),
97 Self::HuggingfaceSlashTransformersPytorchGpuColonLatest => {
98 write!(f, "huggingface/transformers-pytorch-gpu:latest")
99 }
100 Self::HuggingfaceSlashTransformersPytorchGpuColon4292 => {
101 write!(f, "huggingface/transformers-pytorch-gpu:4.29.2")
102 }
103 Self::GhcrIoSlashTobiashi26SlashPygeofloodContainerColonMain => {
104 write!(f, "ghcr.io/tobiashi26/pygeoflood-container:main")
105 }
106 }
107 }
108}