Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.7.1
2.8.0
15 changes: 15 additions & 0 deletions docs/changelog.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,21 @@
Changelog
---------

2.8.0
^^^^^

Wednesday May 13 2020

* Update facade methods for Juju 2.8.0
* Fixes codegen for Python 3.7+
* Nested facade definitions are now deserialised properly (e.g. storage on ApplicationDeploy)
* Missing client facades are now ignored and a warning is printed (#382)
* Add SCP example (#383)
* Add watch_model_summaries method to Controller (#390)
* Bug fix - make_archive on Model handles symlinks (#391 #392)
* Add SSH support for units and machines (#393)
* Add connection HA support (#402)
* Bug fix - resolve api_endpoints from controller (#406 #407)

2.7.1
^^^^^
Expand Down
8 changes: 8 additions & 0 deletions juju/client/_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,10 @@ class BundleFacade(TypeFactory):
pass


class CAASAdmissionFacade(TypeFactory):
pass


class CAASAgentFacade(TypeFactory):
pass

Expand Down Expand Up @@ -256,6 +260,10 @@ class ImageMetadataFacade(TypeFactory):
pass


class ImageMetadataManagerFacade(TypeFactory):
pass


class InstanceMutaterFacade(TypeFactory):
pass

Expand Down
442 changes: 382 additions & 60 deletions juju/client/_client1.py

Large diffs are not rendered by default.

25 changes: 13 additions & 12 deletions juju/client/_client10.py
Original file line number Diff line number Diff line change
Expand Up @@ -996,7 +996,7 @@ async def Get(self, application=None, branch=None):
'''
application : str
branch : str
Returns -> typing.Union[str, typing.Mapping[str, typing.Any], _ForwardRef('Value')]
Returns -> typing.Union[str, typing.Mapping[str, typing.Any], ForwardRef('Value')]
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you know why these changed?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They were internal types pre 3.7

'''
if application is not None and not isinstance(application, (bytes, str)):
raise Exception("Expected application to be a str, received: {}".format(type(application)))
Expand All @@ -1022,7 +1022,7 @@ async def GetCharmURL(self, application=None, branch=None):
'''
application : str
branch : str
Returns -> typing.Union[_ForwardRef('Error'), str]
Returns -> typing.Union[ForwardRef('Error'), str]
'''
if application is not None and not isinstance(application, (bytes, str)):
raise Exception("Expected application to be a str, received: {}".format(type(application)))
Expand Down Expand Up @@ -1876,6 +1876,7 @@ class ProvisionerFacade(Type):
'mac-address': {'type': 'string'},
'mtu': {'type': 'integer'},
'no-auto-start': {'type': 'boolean'},
'origin': {'type': 'string'},
'parent-interface-name': {'type': 'string'},
'provider-address-id': {'type': 'string'},
'provider-id': {'type': 'string'},
Expand Down Expand Up @@ -2357,7 +2358,7 @@ class ProvisionerFacade(Type):
async def APIAddresses(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), typing.Sequence[str]]
Returns -> typing.Union[ForwardRef('Error'), typing.Sequence[str]]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -2456,7 +2457,7 @@ async def Constraints(self, entities=None):
async def ContainerConfig(self):
'''

Returns -> typing.Union[_ForwardRef('UpdateBehavior'), str, _ForwardRef('Settings'), typing.Mapping[str, typing.Any], bool]
Returns -> typing.Union[ForwardRef('UpdateBehavior'), str, ForwardRef('Settings'), typing.Mapping[str, typing.Any], bool]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -2604,7 +2605,7 @@ async def FindTools(self, agentstream=None, arch=None, major=None, minor=None, n
minor : int
number : Number
series : str
Returns -> typing.Union[_ForwardRef('Error'), typing.Sequence[~Tools]]
Returns -> typing.Union[ForwardRef('Error'), typing.Sequence[~Tools]]
'''
if agentstream is not None and not isinstance(agentstream, (bytes, str)):
raise Exception("Expected agentstream to be a str, received: {}".format(type(agentstream)))
Expand Down Expand Up @@ -2851,7 +2852,7 @@ async def ModelConfig(self):
async def ModelUUID(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), str]
Returns -> typing.Union[ForwardRef('Error'), str]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -3195,7 +3196,7 @@ async def SetSupportedContainers(self, params=None):
async def StateAddresses(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), typing.Sequence[str]]
Returns -> typing.Union[ForwardRef('Error'), typing.Sequence[str]]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -3298,7 +3299,7 @@ async def UpdateStatus(self, entities=None):
async def WatchAPIHostPorts(self):
'''

Returns -> typing.Union[str, _ForwardRef('Error')]
Returns -> typing.Union[str, ForwardRef('Error')]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -3359,7 +3360,7 @@ async def WatchContainers(self, params=None):
async def WatchForModelConfigChanges(self):
'''

Returns -> typing.Union[str, _ForwardRef('Error')]
Returns -> typing.Union[str, ForwardRef('Error')]
'''

# map input types to rpc msg
Expand All @@ -3378,7 +3379,7 @@ async def WatchForModelConfigChanges(self):
async def WatchMachineErrorRetry(self):
'''

Returns -> typing.Union[str, _ForwardRef('Error')]
Returns -> typing.Union[str, ForwardRef('Error')]
'''

# map input types to rpc msg
Expand All @@ -3397,7 +3398,7 @@ async def WatchMachineErrorRetry(self):
async def WatchModelMachineStartTimes(self):
'''

Returns -> typing.Union[typing.Sequence[str], _ForwardRef('Error'), str]
Returns -> typing.Union[typing.Sequence[str], ForwardRef('Error'), str]
'''

# map input types to rpc msg
Expand All @@ -3416,7 +3417,7 @@ async def WatchModelMachineStartTimes(self):
async def WatchModelMachines(self):
'''

Returns -> typing.Union[typing.Sequence[str], _ForwardRef('Error'), str]
Returns -> typing.Union[typing.Sequence[str], ForwardRef('Error'), str]
'''

# map input types to rpc msg
Expand Down
4 changes: 2 additions & 2 deletions juju/client/_client11.py
Original file line number Diff line number Diff line change
Expand Up @@ -1035,7 +1035,7 @@ async def Get(self, application=None, branch=None):
'''
application : str
branch : str
Returns -> typing.Union[str, typing.Mapping[str, typing.Any], _ForwardRef('Value'), typing.Mapping[str, str]]
Returns -> typing.Union[str, typing.Mapping[str, typing.Any], ForwardRef('Value'), typing.Mapping[str, str]]
'''
if application is not None and not isinstance(application, (bytes, str)):
raise Exception("Expected application to be a str, received: {}".format(type(application)))
Expand All @@ -1061,7 +1061,7 @@ async def GetCharmURL(self, application=None, branch=None):
'''
application : str
branch : str
Returns -> typing.Union[_ForwardRef('Error'), str]
Returns -> typing.Union[ForwardRef('Error'), str]
'''
if application is not None and not isinstance(application, (bytes, str)):
raise Exception("Expected application to be a str, received: {}".format(type(application)))
Expand Down
18 changes: 9 additions & 9 deletions juju/client/_client12.py
Original file line number Diff line number Diff line change
Expand Up @@ -973,7 +973,7 @@ class UniterFacade(Type):
async def APIAddresses(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), typing.Sequence[str]]
Returns -> typing.Union[ForwardRef('Error'), typing.Sequence[str]]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -1284,7 +1284,7 @@ async def ClosePorts(self, entities=None):
async def CloudAPIVersion(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), str]
Returns -> typing.Union[ForwardRef('Error'), str]
'''

# map input types to rpc msg
Expand All @@ -1303,7 +1303,7 @@ async def CloudAPIVersion(self):
async def CloudSpec(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), _ForwardRef('CloudSpec')]
Returns -> typing.Union[ForwardRef('Error'), ForwardRef('CloudSpec')]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -1343,7 +1343,7 @@ async def ConfigSettings(self, entities=None):
async def CurrentModel(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), str]
Returns -> typing.Union[ForwardRef('Error'), str]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -1654,7 +1654,7 @@ async def ModelConfig(self):
async def ModelUUID(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), str]
Returns -> typing.Union[ForwardRef('Error'), str]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -1746,7 +1746,7 @@ async def PrivateAddress(self, entities=None):
async def ProviderType(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), str]
Returns -> typing.Union[ForwardRef('Error'), str]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -1996,7 +1996,7 @@ async def Resolved(self, entities=None):
async def SLALevel(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), str]
Returns -> typing.Union[ForwardRef('Error'), str]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -2351,7 +2351,7 @@ async def Watch(self, entities=None):
async def WatchAPIHostPorts(self):
'''

Returns -> typing.Union[str, _ForwardRef('Error')]
Returns -> typing.Union[str, ForwardRef('Error')]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -2412,7 +2412,7 @@ async def WatchConfigSettingsHash(self, entities=None):
async def WatchForModelConfigChanges(self):
'''

Returns -> typing.Union[str, _ForwardRef('Error')]
Returns -> typing.Union[str, ForwardRef('Error')]
'''

# map input types to rpc msg
Expand Down
18 changes: 9 additions & 9 deletions juju/client/_client13.py
Original file line number Diff line number Diff line change
Expand Up @@ -998,7 +998,7 @@ class UniterFacade(Type):
async def APIAddresses(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), typing.Sequence[str]]
Returns -> typing.Union[ForwardRef('Error'), typing.Sequence[str]]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -1309,7 +1309,7 @@ async def ClosePorts(self, entities=None):
async def CloudAPIVersion(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), str]
Returns -> typing.Union[ForwardRef('Error'), str]
'''

# map input types to rpc msg
Expand All @@ -1328,7 +1328,7 @@ async def CloudAPIVersion(self):
async def CloudSpec(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), _ForwardRef('CloudSpec')]
Returns -> typing.Union[ForwardRef('Error'), ForwardRef('CloudSpec')]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -1368,7 +1368,7 @@ async def ConfigSettings(self, entities=None):
async def CurrentModel(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), str]
Returns -> typing.Union[ForwardRef('Error'), str]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -1700,7 +1700,7 @@ async def ModelConfig(self):
async def ModelUUID(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), str]
Returns -> typing.Union[ForwardRef('Error'), str]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -1792,7 +1792,7 @@ async def PrivateAddress(self, entities=None):
async def ProviderType(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), str]
Returns -> typing.Union[ForwardRef('Error'), str]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -2042,7 +2042,7 @@ async def Resolved(self, entities=None):
async def SLALevel(self):
'''

Returns -> typing.Union[_ForwardRef('Error'), str]
Returns -> typing.Union[ForwardRef('Error'), str]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -2418,7 +2418,7 @@ async def Watch(self, entities=None):
async def WatchAPIHostPorts(self):
'''

Returns -> typing.Union[str, _ForwardRef('Error')]
Returns -> typing.Union[str, ForwardRef('Error')]
'''

# map input types to rpc msg
Expand Down Expand Up @@ -2479,7 +2479,7 @@ async def WatchConfigSettingsHash(self, entities=None):
async def WatchForModelConfigChanges(self):
'''

Returns -> typing.Union[str, _ForwardRef('Error')]
Returns -> typing.Union[str, ForwardRef('Error')]
'''

# map input types to rpc msg
Expand Down
Loading