Skip to content

Commit 81d0e9f

Browse files
author
ddraganov
committed
Initial commit of the pyVmomi stubs for type hinting
1 parent 6de056e commit 81d0e9f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+29687
-1
lines changed

MANIFEST.in

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,7 @@ include README.*
22
include *.txt
33
include setup.py
44
include tox.ini
5+
include py.typed
56
recursive-include tests *
67
recursive-include sample *
8+
recursive-include pyVmomi *.pyi

pyVmomi/eam/__init__.pyi

Lines changed: 210 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,210 @@
1+
from typing import List
2+
from enum import Enum
3+
from pyVmomi import eam, vim, vmodl
4+
from pyVmomi.VmomiSupport import ManagedObject, NoneType
5+
from . import issue, vib
6+
7+
8+
class Agency(EamObject):
9+
@property
10+
def solutionId(self) -> str: ...
11+
@property
12+
def owner(self) -> str: ...
13+
@property
14+
def config(self) -> Agency.ConfigInfo: ...
15+
@property
16+
def runtime(self) -> EamObject.RuntimeInfo: ...
17+
@property
18+
def agent(self) -> List[Agent]: ...
19+
def QuerySolutionId(self) -> str: ...
20+
def QueryConfig(self) -> Agency.ConfigInfo: ...
21+
def Update(self, config: Agency.ConfigInfo) -> NoneType: ...
22+
def QueryRuntime(self) -> EamObject.RuntimeInfo: ...
23+
def QueryAgent(self) -> List[Agent]: ...
24+
def RegisterAgentVm(self, agentVm: vim.VirtualMachine) -> Agent: ...
25+
def UnregisterAgentVm(self, agentVm: vim.VirtualMachine) -> NoneType: ...
26+
def Enable(self) -> NoneType: ...
27+
def Disable(self) -> NoneType: ...
28+
def Uninstall(self) -> NoneType: ...
29+
def DestroyAgency(self) -> NoneType: ...
30+
def AddIssue(self, issue: issue.Issue) -> issue.Issue: ...
31+
32+
33+
class ComputeResourceScope(Agency.Scope):
34+
@property
35+
def computeResource(self) -> List[vim.ComputeResource]: ...
36+
37+
38+
class ConfigInfo(vmodl.DynamicData):
39+
@property
40+
def agentConfig(self) -> List[Agent.ConfigInfo]: ...
41+
@property
42+
def scope(self) -> Agency.Scope: ...
43+
@property
44+
def manuallyMarkAgentVmAvailableAfterProvisioning(self) -> bool: ...
45+
@property
46+
def manuallyMarkAgentVmAvailableAfterPowerOn(self) -> bool: ...
47+
@property
48+
def optimizedDeploymentEnabled(self) -> bool: ...
49+
@property
50+
def agentName(self) -> str: ...
51+
@property
52+
def agencyName(self) -> str: ...
53+
@property
54+
def useUuidVmName(self) -> bool: ...
55+
@property
56+
def manuallyProvisioned(self) -> bool: ...
57+
@property
58+
def manuallyMonitored(self) -> bool: ...
59+
@property
60+
def bypassVumEnabled(self) -> bool: ...
61+
@property
62+
def agentVmNetwork(self) -> List[vim.Network]: ...
63+
@property
64+
def agentVmDatastore(self) -> List[vim.Datastore]: ...
65+
@property
66+
def preferHostConfiguration(self) -> bool: ...
67+
@property
68+
def ipPool(self) -> vim.vApp.IpPool: ...
69+
@property
70+
def resourcePools(self) -> List[Agency.VMResourcePool]: ...
71+
@property
72+
def folders(self) -> List[Agency.VMFolder]: ...
73+
74+
75+
class OvfDiskProvisioning(Enum):
76+
none = "none"
77+
thin = "thin"
78+
thick = "thick"
79+
80+
81+
class Scope(vmodl.DynamicData): ...
82+
83+
84+
class VMFolder(vmodl.DynamicData):
85+
@property
86+
def folderId(self) -> vim.Folder: ...
87+
@property
88+
def datacenterId(self) -> vim.Datacenter: ...
89+
90+
91+
class VMResourcePool(vmodl.DynamicData):
92+
@property
93+
def resourcePoolId(self) -> vim.ResourcePool: ...
94+
@property
95+
def computeResourceId(self) -> vim.ComputeResource: ...
96+
97+
98+
class Agent(EamObject):
99+
@property
100+
def runtime(self) -> Agent.RuntimeInfo: ...
101+
@property
102+
def config(self) -> Agent.ConfigInfo: ...
103+
def QueryRuntime(self) -> Agent.RuntimeInfo: ...
104+
def MarkAsAvailable(self) -> NoneType: ...
105+
def QueryConfig(self) -> Agent.ConfigInfo: ...
106+
107+
108+
class OvfEnvironmentInfo(vmodl.DynamicData):
109+
@property
110+
def ovfProperty(self) -> List[Agent.OvfEnvironmentInfo.OvfProperty]: ...
111+
112+
113+
class OvfProperty(vmodl.DynamicData):
114+
@property
115+
def key(self) -> str: ...
116+
@property
117+
def value(self) -> str: ...
118+
119+
120+
class RuntimeInfo(EamObject.RuntimeInfo):
121+
@property
122+
def vmPowerState(self) -> vim.VirtualMachine.PowerState: ...
123+
@property
124+
def receivingHeartBeat(self) -> bool: ...
125+
@property
126+
def host(self) -> vim.HostSystem: ...
127+
@property
128+
def vm(self) -> vim.VirtualMachine: ...
129+
@property
130+
def vmIp(self) -> str: ...
131+
@property
132+
def vmName(self) -> str: ...
133+
@property
134+
def esxAgentResourcePool(self) -> vim.ResourcePool: ...
135+
@property
136+
def esxAgentFolder(self) -> vim.Folder: ...
137+
@property
138+
def installedBulletin(self) -> List[str]: ...
139+
@property
140+
def installedVibs(self) -> List[vib.VibInfo]: ...
141+
@property
142+
def agency(self) -> Agency: ...
143+
@property
144+
def vmHook(self) -> Agent.VmHook: ...
145+
146+
147+
class GoalState(Enum):
148+
enabled = "enabled"
149+
disabled = "disabled"
150+
uninstalled = "uninstalled"
151+
152+
153+
class Status(Enum):
154+
green = "green"
155+
yellow = "yellow"
156+
red = "red"
157+
158+
159+
class StoragePolicy(vmodl.DynamicData): ...
160+
161+
162+
class VibMatchingRule(vmodl.DynamicData):
163+
@property
164+
def vibNameRegex(self) -> str: ...
165+
@property
166+
def vibVersionRegex(self) -> str: ...
167+
168+
169+
class VmHook(vmodl.DynamicData):
170+
@property
171+
def vm(self) -> vim.VirtualMachine: ...
172+
@property
173+
def vmState(self) -> str: ...
174+
175+
176+
class VmState(Enum):
177+
provisioned = "provisioned"
178+
poweredOn = "poweredon"
179+
prePowerOn = "prepoweron"
180+
181+
182+
class VsanStoragePolicy(Agent.StoragePolicy):
183+
@property
184+
def profileId(self) -> str: ...
185+
186+
187+
class EamObject(ManagedObject):
188+
def Resolve(self, issueKey: List[int]) -> List[int]: ...
189+
def ResolveAll(self) -> NoneType: ...
190+
def QueryIssue(self, issueKey: List[int]) -> List[issue.Issue]: ...
191+
192+
193+
class EsxAgentManager(EamObject):
194+
@property
195+
def agency(self) -> List[Agency]: ...
196+
@property
197+
def issue(self) -> List[issue.Issue]: ...
198+
def QueryAgency(self) -> List[Agency]: ...
199+
def CreateAgency(self, agencyConfigInfo: Agency.ConfigInfo, initialGoalState: str) -> Agency: ...
200+
def ScanForUnknownAgentVm(self) -> NoneType: ...
201+
def SetMaintenanceModePolicy(self, policy: str) -> NoneType: ...
202+
def GetMaintenanceModePolicy(self) -> str: ...
203+
204+
205+
class MaintenanceModePolicy(Enum):
206+
singleHost = "singlehost"
207+
multipleHosts = "multiplehosts"
208+
209+
210+
class Task(ManagedObject): ...

pyVmomi/eam/fault/__init__.pyi

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
from typing import List
2+
from pyVmomi import eam, vim, vmodl
3+
4+
5+
class DisabledClusterFault(EamAppFault):
6+
@property
7+
def disabledComputeResource(self) -> List[vim.ComputeResource]: ...
8+
9+
10+
class EamAppFault(EamRuntimeFault): ...
11+
12+
13+
class EamFault(vmodl.MethodFault): ...
14+
15+
16+
class EamIOFault(EamRuntimeFault): ...
17+
18+
19+
class EamRuntimeFault(vmodl.RuntimeFault): ...
20+
21+
22+
class EamServiceNotInitialized(EamRuntimeFault): ...
23+
24+
25+
class EamSystemFault(EamRuntimeFault): ...
26+
27+
28+
class InvalidAgencyScope(EamFault):
29+
@property
30+
def unknownComputeResource(self) -> List[vim.ComputeResource]: ...
31+
32+
33+
class InvalidAgentConfiguration(EamFault):
34+
@property
35+
def invalidAgentConfiguration(self) -> eam.Agent.ConfigInfo: ...
36+
@property
37+
def invalidField(self) -> str: ...
38+
39+
40+
class InvalidLogin(EamRuntimeFault): ...
41+
42+
43+
class InvalidState(EamAppFault): ...
44+
45+
46+
class InvalidUrl(EamFault):
47+
@property
48+
def url(self) -> str: ...
49+
@property
50+
def malformedUrl(self) -> bool: ...
51+
@property
52+
def unknownHost(self) -> bool: ...
53+
@property
54+
def connectionRefused(self) -> bool: ...
55+
@property
56+
def responseCode(self) -> int: ...
57+
58+
59+
class InvalidVibPackage(EamRuntimeFault): ...
60+
61+
62+
class NoConnectionToVCenter(EamRuntimeFault): ...
63+
64+
65+
class NotAuthorized(EamRuntimeFault): ...

0 commit comments

Comments
 (0)