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