mirror of
https://github.com/ansible/awx.git
synced 2026-05-08 18:07:36 -02:30
Make ExecutionEnvironment awxkit class able to handle null values in payload
This commit is contained in:
@@ -6,7 +6,7 @@ from awxkit.api.pages import (
|
|||||||
Organization,
|
Organization,
|
||||||
)
|
)
|
||||||
from awxkit.api.resources import resources
|
from awxkit.api.resources import resources
|
||||||
from awxkit.utils import random_title, PseudoNamespace
|
from awxkit.utils import random_title, PseudoNamespace, filter_by_class
|
||||||
|
|
||||||
from . import base
|
from . import base
|
||||||
from . import page
|
from . import page
|
||||||
@@ -21,15 +21,19 @@ class ExecutionEnvironment(HasCreate, HasCopy, base.Base):
|
|||||||
NATURAL_KEY = ('name',)
|
NATURAL_KEY = ('name',)
|
||||||
|
|
||||||
# fields are name, image, organization, managed_by_tower, credential
|
# fields are name, image, organization, managed_by_tower, credential
|
||||||
def create(self, name='', image='quay.io/ansible/ansible-runner:devel', credential=None, pull='', **kwargs):
|
def create(self, name='', image='quay.io/ansible/ansible-runner:devel', organization=Organization, credential=None, pull='', **kwargs):
|
||||||
# we do not want to make a credential by default
|
# we do not want to make a credential by default
|
||||||
payload = self.create_payload(name=name, image=image, credential=credential, pull=pull, **kwargs)
|
payload = self.create_payload(name=name, image=image, organization=organization, credential=credential, pull=pull, **kwargs)
|
||||||
ret = self.update_identity(ExecutionEnvironments(self.connection).post(payload))
|
ret = self.update_identity(ExecutionEnvironments(self.connection).post(payload))
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
def create_payload(self, name='', organization=Organization, **kwargs):
|
def create_payload(self, name='', organization=Organization, credential=None, **kwargs):
|
||||||
self.create_and_update_dependencies(organization)
|
self.create_and_update_dependencies(*filter_by_class((credential, Credential), (organization, Organization)))
|
||||||
payload = self.payload(name=name, organization=self.ds.organization, **kwargs)
|
|
||||||
|
credential = self.ds.credential if credential else None
|
||||||
|
organization = self.ds.organization if organization else None
|
||||||
|
|
||||||
|
payload = self.payload(name=name, organization=organization, credential=credential, **kwargs)
|
||||||
payload.ds = DSAdapter(self.__class__.__name__, self._dependency_store)
|
payload.ds = DSAdapter(self.__class__.__name__, self._dependency_store)
|
||||||
return payload
|
return payload
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user