From cc4025977f3fadfe206d6ccb056dafc16f29a575 Mon Sep 17 00:00:00 2001 From: Bill Nottingham Date: Thu, 29 Sep 2016 17:01:11 -0400 Subject: [PATCH 1/3] Update help text to reflect 3.0 remove: default change --- awx/sso/conf.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/awx/sso/conf.py b/awx/sso/conf.py index e0842f6031..5bcff670cf 100644 --- a/awx/sso/conf.py +++ b/awx/sso/conf.py @@ -44,12 +44,12 @@ which users can administer the organization. users who will be added to the organization. Strings in the format "//" will be interpreted as regular expressions and may also be used instead of string literals; only "i" and "m" are supported for flags. -- remove_admins: True/False. Defaults to False. +- remove_admins: True/False. Defaults to True. If True, a user who does not match will be removed from the organization's administrative list. - users: None, True/False, string or list/tuple of strings. Same rules apply as for admins. -- remove_users: True/False. Defaults to False. Same rules as apply for +- remove_users: True/False. Defaults to True. Same rules as apply for remove_admins.\ ''') @@ -90,7 +90,7 @@ for each team's membership, where each can contain the following parameters: Strings in the format "//" will be interpreted as regular expressions and may also be used instead of string literals; only "i" and "m" are supported for flags. -- remove: True/False. Defaults to False. If True, a user who does not match +- remove: True/False. Defaults to True. If True, a user who does not match the rules above will be removed from the team.\ ''') @@ -434,7 +434,7 @@ register( ' If a string or list of strings, specifies the group DN(s). ' 'User will be added as a team member if the user is a member of ' 'ANY of these groups.\n' - '- remove: True/False. Defaults to False. If True, a user who is ' + '- remove: True/False. Defaults to True. If True, a user who is ' 'not a member of the given groups will be removed from the team.'), category=_('LDAP'), category_slug='ldap', From 70e489d62f7d9f3b60b2c878ff7fde360b9b4f18 Mon Sep 17 00:00:00 2001 From: Chris Church Date: Fri, 30 Sep 2016 15:30:34 -0400 Subject: [PATCH 2/3] Save settings.LICENSE as dict instead of str. --- awx/api/views.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/awx/api/views.py b/awx/api/views.py index b91f963b4e..61e4c56a0c 100644 --- a/awx/api/views.py +++ b/awx/api/views.py @@ -246,16 +246,16 @@ class ApiV1ConfigView(APIView): try: from awx.main.task_engine import TaskEnhancer license_data = json.loads(data_actual) - license_data = TaskEnhancer(**license_data).validate_enhancements() + license_data_validated = TaskEnhancer(**license_data).validate_enhancements() except Exception: # FIX: Log return Response({"error": "Invalid License"}, status=status.HTTP_400_BAD_REQUEST) # If the license is valid, write it to the database. - if license_data['valid_key']: - settings.LICENSE = data_actual + if license_data_validated['valid_key']: + settings.LICENSE = license_data settings.TOWER_URL_BASE = "{}://{}".format(request.scheme, request.get_host()) - return Response(license_data) + return Response(license_data_validated) return Response({"error": "Invalid license"}, status=status.HTTP_400_BAD_REQUEST) From 649bf08edf6885439c0dccdcf5030fdc91d7fa86 Mon Sep 17 00:00:00 2001 From: Chris Meyers Date: Mon, 3 Oct 2016 08:15:39 -0400 Subject: [PATCH 3/3] add workflow root endpoints --- awx/api/serializers.py | 2 +- awx/api/views.py | 6 ++---- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/awx/api/serializers.py b/awx/api/serializers.py index 97191607b7..ad5c30d15f 100644 --- a/awx/api/serializers.py +++ b/awx/api/serializers.py @@ -2278,7 +2278,7 @@ class WorkflowJobTemplateNodeSerializer(WorkflowNodeBaseSerializer): class WorkflowJobNodeSerializer(WorkflowNodeBaseSerializer): class Meta: - model = WorkflowJobTemplateNode + model = WorkflowJobNode fields = ('*', 'job', 'workflow_job',) def get_related(self, obj): diff --git a/awx/api/views.py b/awx/api/views.py index 61e4c56a0c..d1fea73fe2 100644 --- a/awx/api/views.py +++ b/awx/api/views.py @@ -145,6 +145,8 @@ class ApiV1RootView(APIView): data['activity_stream'] = reverse('api:activity_stream_list') data['workflow_job_templates'] = reverse('api:workflow_job_template_list') data['workflow_jobs'] = reverse('api:workflow_job_list') + data['workflow_job_template_nodes'] = reverse('api:workflow_job_template_node_list') + data['workflow_job_nodes'] = reverse('api:workflow_job_node_list') return Response(data) @@ -2607,28 +2609,24 @@ class JobTemplateObjectRolesList(SubListAPIView): content_type = ContentType.objects.get_for_model(self.parent_model) return Role.objects.filter(content_type=content_type, object_id=po.pk) -# TODO: class WorkflowJobNodeList(ListCreateAPIView): model = WorkflowJobNode serializer_class = WorkflowJobNodeListSerializer new_in_310 = True -# TODO: class WorkflowJobNodeDetail(RetrieveUpdateDestroyAPIView): model = WorkflowJobNode serializer_class = WorkflowJobNodeDetailSerializer new_in_310 = True -# TODO: class WorkflowJobTemplateNodeList(ListCreateAPIView): model = WorkflowJobTemplateNode serializer_class = WorkflowJobTemplateNodeListSerializer new_in_310 = True -# TODO: class WorkflowJobTemplateNodeDetail(RetrieveUpdateDestroyAPIView): model = WorkflowJobTemplateNode