示例#1
0
class ReleaseSerializer(serializers.Serializer):
    version = serializers.RegexField(r'[a-zA-Z0-9\-_\.]', max_length=64, required=True)
    ref = serializers.CharField(max_length=64, required=False)
    url = serializers.URLField(required=False)
    owner = UserField(required=False)
    dateStarted = serializers.DateTimeField(required=False)
    dateReleased = serializers.DateTimeField(required=False)
示例#2
0
class ReleaseWithVersionSerializer(ReleaseSerializer):
    version = serializers.CharField(max_length=VERSION_LENGTH, required=True)
    owner = UserField(required=False)

    def validate_version(self, attrs, source):
        value = attrs[source]
        if not Release.is_valid_version(value):
            raise serializers.ValidationError(
                'Release with name %s is not allowed' % value)
        return attrs
示例#3
0
文件: release.py 项目: pasala91/test
class ReleaseWithVersionSerializer(ReleaseSerializer):
    version = serializers.CharField(
        max_length=MAX_VERSION_LENGTH, trim_whitespace=False, required=True
    )
    owner = UserField(required=False)

    def validate_version(self, value):
        if not Release.is_valid_version(value):
            raise serializers.ValidationError("Release with name %s is not allowed" % value)
        return value
示例#4
0
class ReleaseSerializer(serializers.Serializer):
    version = serializers.RegexField(r'^[a-zA-Z0-9\-_\. \(\)]+\Z',
                                     max_length=64,
                                     required=True)
    ref = serializers.CharField(max_length=64, required=False)
    url = serializers.URLField(required=False)
    owner = UserField(required=False)
    dateStarted = serializers.DateTimeField(required=False)
    dateReleased = serializers.DateTimeField(required=False)
    commits = ListField(child=CommitSerializer(), required=False)
示例#5
0
class ReleaseSerializer(serializers.Serializer):
    version = serializers.CharField(max_length=64, required=True)
    ref = serializers.CharField(max_length=64, required=False)
    url = serializers.URLField(required=False)
    owner = UserField(required=False)
    dateReleased = serializers.DateTimeField(required=False)
    commits = ListField(child=CommitSerializer(), required=False)

    def validate_version(self, attrs, source):
        value = attrs[source]
        if any(c in value for c in BAD_RELEASE_CHARS) or value in ('.', '..'):
            raise serializers.ValidationError('Invalid value for release')
        return attrs
示例#6
0
class ReleaseSerializer(serializers.Serializer):
    version = serializers.CharField(max_length=VERSION_LENGTH, required=True)
    ref = serializers.CharField(max_length=VERSION_LENGTH, required=False)
    url = serializers.URLField(required=False)
    owner = UserField(required=False)
    dateReleased = serializers.DateTimeField(required=False)
    commits = ListField(child=CommitSerializer(), required=False, allow_null=False)

    def validate_version(self, attrs, source):
        value = attrs[source]
        if not Release.is_valid_version(value):
            raise serializers.ValidationError('Invalid value for release')
        return attrs
示例#7
0
class ReleaseSerializer(serializers.Serializer):
    version = serializers.RegexField(r'[a-zA-Z0-9\-_\.]',
                                     max_length=64,
                                     required=True)
    ref = serializers.CharField(max_length=64, required=False)
    url = serializers.URLField(required=False)
    owner = UserField(required=False)
    dateStarted = serializers.DateTimeField(required=False)
    dateReleased = serializers.DateTimeField(required=False)

    def validate_version(self, attrs, source):
        value = attrs[source]
        if not set(value).isdisjoint(set(string.whitespace)):
            raise serializers.ValidationError('Enter a valid value')
        return attrs
示例#8
0
class ReleaseWithVersionSerializer(ReleaseSerializer):
    version = serializers.CharField(
        max_length=MAX_VERSION_LENGTH, trim_whitespace=False, required=True
    )
    status = serializers.CharField(required=False, allow_null=False)
    owner = UserField(required=False)

    def validate_version(self, value):
        if not Release.is_valid_version(value):
            raise serializers.ValidationError("Release with name %s is not allowed" % value)
        return value

    def validate_status(self, value):
        try:
            return ReleaseStatus.from_string(value)
        except ValueError:
            raise serializers.ValidationError("Invalid status %s" % value)
示例#9
0
class ReleaseWithVersionSerializer(ReleaseSerializer):
    version = serializers.CharField(max_length=MAX_VERSION_LENGTH,
                                    trim_whitespace=False,
                                    required=True)
    owner = UserField(required=False)

    def validate_version(self, value):
        if not Release.is_valid_version(value):
            raise serializers.ValidationError(
                "Release with name %s is not allowed" % value)
        return value

    def validate_owner(self, owner):
        if not OrganizationMember.objects.filter(
                organization=self.context["organization"],
                user=owner).exists():
            raise serializers.ValidationError(
                "User does not have access to this organization")
        return owner