From f30bbad07de15cf31f7da8f363f2b9424307f2a7 Mon Sep 17 00:00:00 2001 From: AlanCoding Date: Sat, 17 Nov 2018 22:35:48 -0500 Subject: [PATCH] License check for slicing >1 --- awx/api/serializers.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/awx/api/serializers.py b/awx/api/serializers.py index f0eef752d1..0dfa76fe01 100644 --- a/awx/api/serializers.py +++ b/awx/api/serializers.py @@ -61,7 +61,7 @@ from awx.main.redact import UriCleaner, REPLACE_STR from awx.main.validators import vars_validate_or_raise -from awx.conf.license import feature_enabled +from awx.conf.license import feature_enabled, LicenseForbids from awx.api.versioning import reverse, get_request_version from awx.api.fields import (BooleanNullField, CharNullField, ChoiceNullField, VerbatimField, DeprecatedCredentialField) @@ -3055,6 +3055,13 @@ class JobTemplateSerializer(JobTemplateMixin, UnifiedJobTemplateSerializer, JobO def validate_extra_vars(self, value): return vars_validate_or_raise(value) + def validate_job_slice_count(self, value): + if value > 1 and not feature_enabled('workflows'): + raise LicenseForbids({'job_slice_count': [_( + "Job slicing is a workflows-based feature and your license does not allow use of workflows." + )]}) + return value + def get_summary_fields(self, obj): summary_fields = super(JobTemplateSerializer, self).get_summary_fields(obj) all_creds = []