hobo/hobo/environment/validators.py

20 lines
651 B
Python

import urllib.parse
from django.core.exceptions import ValidationError
from django.utils.translation import gettext_lazy as _
from hobo.environment import models
def validate_service_url(url):
if not models.is_resolvable(url):
raise ValidationError(
_('Error: %(netloc)s is not resolvable in URL %(url)s'),
code='not-resolvable',
params={'netloc': urllib.parse.urlsplit(url).netloc, 'url': url},
)
if not models.has_valid_certificate(url):
raise ValidationError(
_('Error: no valid certificate for %(url)s'), code='invalid-certificate', params={'url': url}
)