mirror of
https://github.com/ansible/awx.git
synced 2026-02-02 01:58:09 -03:30
Changed project property available_playbooks to playbooks, exposed via API as a child resource of the project detail. Changed project local_path to a CharField and added helper method and API attribute to show the list of available choices for local_path.
This commit is contained in:
@@ -163,20 +163,35 @@ class AuditTrailSerializer(BaseSerializer):
|
||||
|
||||
class ProjectSerializer(BaseSerializer):
|
||||
|
||||
available_playbooks = serializers.Field(source='available_playbooks')
|
||||
playbooks = serializers.Field(source='playbooks')
|
||||
local_path_choices = serializers.SerializerMethodField('get_local_path_choices')
|
||||
|
||||
class Meta:
|
||||
model = Project
|
||||
fields = BASE_FIELDS + ('local_path', 'available_playbooks')
|
||||
fields = BASE_FIELDS + ('local_path', 'local_path_choices')
|
||||
# 'default_playbook', 'scm_type')
|
||||
|
||||
def get_related(self, obj):
|
||||
res = super(ProjectSerializer, self).get_related(obj)
|
||||
res.update(dict(
|
||||
organizations = reverse('main:projects_organizations_list', args=(obj.pk,)),
|
||||
playbooks = reverse('main:projects_detail_playbooks', args=(obj.pk,)),
|
||||
))
|
||||
return res
|
||||
|
||||
def get_local_path_choices(self, obj):
|
||||
return Project.get_local_path_choices()
|
||||
|
||||
class ProjectPlaybooksSerializer(ProjectSerializer):
|
||||
|
||||
class Meta:
|
||||
model = Project
|
||||
fields = ('playbooks',)
|
||||
|
||||
def to_native(self, obj):
|
||||
ret = super(ProjectPlaybooksSerializer, self).to_native(obj)
|
||||
return ret.get('playbooks', [])
|
||||
|
||||
class InventorySerializer(BaseSerializer):
|
||||
|
||||
class Meta:
|
||||
|
||||
Reference in New Issue
Block a user