66
77
88class BootVolume (BaseModel ):
9+ """
10+ Holds information about where the server boots from
11+ """
912 name : Optional [str ]
1013 terminate : Optional [bool ]
1114 size : Optional [int ]
1215
1316
1417class Volume (BaseModel ):
18+ """
19+ Holds volume/attached storage information
20+ """
1521 name : Optional [str ]
1622 snapshot : Optional [str ]
1723 permanent : Optional [bool ]
@@ -24,6 +30,9 @@ class Volume(BaseModel):
2430
2531
2632class Instance (BaseModel ):
33+ """
34+ Holds instance/server information
35+ """
2736 type : str
2837 image : str
2938 count : Optional [int ]
@@ -35,19 +44,28 @@ class Instance(BaseModel):
3544
3645
3746class UserRole (BaseModel ):
47+ """
48+ Allows users to add custom ansible roles
49+ """
3850 hosts : List [str ]
3951 roles : List [dict ] # Replace 'dict' with more specific type if possible
4052 varsFiles : Optional [List [str ]]
4153
4254
4355class ElasticScheduling (BaseModel ):
56+ """
57+ Holds info on Slurms scheduling
58+ """
4459 SuspendTime : Optional [int ]
4560 SuspendTimeout : Optional [int ]
4661 ResumeTimeout : Optional [int ]
4762 TreeWidth : Optional [int ]
4863
4964
5065class SlurmConf (BaseModel ):
66+ """
67+ Holds info on basic Slurm settings
68+ """
5169 db : Optional [str ]
5270 db_user : Optional [str ]
5371 db_password : Optional [str ]
@@ -56,11 +74,17 @@ class SlurmConf(BaseModel):
5674
5775
5876class Gateway (BaseModel ):
77+ """
78+ Holds info regarding whether a gateway is used to connect to the master
79+ """
5980 ip : str
6081 portFunction : str
6182
6283
6384class ConfigModel (BaseModel ):
85+ """
86+ Holds info regarding the configuration
87+ """
6488 infrastructure : str
6589 cloud : str
6690 sshUser : str
@@ -95,6 +119,10 @@ class ConfigModel(BaseModel):
95119
96120
97121class OtherConfigModel (ConfigModel ):
122+ """
123+ Holds info about other configurations
124+ TODO: Fill in the missing bits
125+ """
98126 vpnInstance : Instance
99127
100128
@@ -142,6 +170,9 @@ class LogResponseModel(BaseModel):
142170
143171
144172class ClusterStateResponseModel (BaseModel ):
173+ """
174+ Response model for state
175+ """
145176 cluster_id : str
146177 floating_ip : IPvAnyAddress
147178 message : str
0 commit comments