本文整理汇总了Python中weblate.trans.util.is_repo_link函数的典型用法代码示例。如果您正苦于以下问题:Python is_repo_link函数的具体用法?Python is_repo_link怎么用?Python is_repo_link使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了is_repo_link函数的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: get_linked
def get_linked(self, val):
"""
Returns subproject for linked repo.
"""
if not is_repo_link(val):
return None
project, subproject = val[10:].split("/", 1)
return self.get(slug=subproject, project__slug=project)
开发者ID:miumok98,项目名称:weblate,代码行数:8,代码来源:subproject.py
示例2: handle
def handle(self, *args, **options):
"""Automatic import of project."""
# Read params
repo = options['repo']
branch = options['branch']
self.parse_options(repo, options)
# Try to get project
try:
project = Project.objects.get(slug=options['project'])
except Project.DoesNotExist:
raise CommandError(
'Project "{0}" not found, please create it first!'.format(
options['project']
)
)
# Get or create main component
if is_repo_link(repo):
try:
component = Component.objects.get_linked(repo)
# Avoid operating on link
if component.is_repo_link:
component = component.linked_component
except Component.DoesNotExist:
raise CommandError(
'Component "{0}" not found, '
'please create it first!'.format(
repo
)
)
else:
component = self.import_initial(project, repo, branch)
discovery = self.get_discovery(component)
discovery.perform()
开发者ID:daleathan,项目名称:weblate,代码行数:36,代码来源:import_project.py
示例3: handle
def handle(self, *args, **options):
"""Automatic import of project."""
# Read params
repo = options['repo']
branch = options['branch']
self.parse_options(options)
# Try to get project
try:
project = Project.objects.get(slug=options['project'])
except Project.DoesNotExist:
raise CommandError(
'Project {0} not found, you have to create it first!'.format(
options['project']
)
)
# We need to limit slug length to avoid problems with MySQL
# silent truncation
# pylint: disable=W0212
slug_len = SubProject._meta.get_field('slug').max_length
name_len = SubProject._meta.get_field('name').max_length
if is_repo_link(repo):
sharedrepo = repo
try:
sub_project = SubProject.objects.get_linked(repo)
except SubProject.DoesNotExist:
raise CommandError(
'SubProject {0} not found, '
'you need to create it first!'.format(
repo
)
)
matches = self.get_matching_subprojects(
sub_project.get_path(),
)
else:
matches, sharedrepo = self.import_initial(
project, repo, branch, slug_len, name_len
)
# Create remaining subprojects sharing git repository
for match in matches:
name = self.format_string(self.name_template, match)[:name_len]
template = self.format_string(self.base_file_template, match)
slug = slugify(name)[:slug_len]
subprojects = SubProject.objects.filter(
Q(name=name) | Q(slug=slug),
project=project
)
if subprojects.exists():
if not options['duplicates']:
self.logger.warning(
'Component %s already exists, skipping',
name
)
continue
else:
name, slug = self.find_usable_slug(
name, slug_len, project
)
self.logger.info('Creating component %s', name)
SubProject.objects.create(
name=name,
slug=slug,
project=project,
repo=sharedrepo,
branch=branch,
template=template,
filemask=self.filemask.replace('**', match),
**self.get_project_attribs()
)
开发者ID:saily,项目名称:weblate,代码行数:74,代码来源:import_project.py
示例4: handle
def handle(self, *args, **options):
'''
Automatic import of project.
'''
# Check params count
if len(args) != 4:
raise CommandError('Invalid number of parameters!')
# Read params
repo = args[1]
branch = args[2]
self.parse_options(args, options)
# Try to get project
try:
project = Project.objects.get(slug=args[0])
except Project.DoesNotExist:
raise CommandError(
'Project %s does not exist, you need to create it first!' %
args[0]
)
if is_repo_link(repo):
sharedrepo = repo
try:
sub_project = SubProject.objects.get(
project=project,
slug=repo.rsplit('/', 1)[-1]
)
except SubProject.DoesNotExist:
raise CommandError(
'SubProject %s does not exist, '
'you need to create it first!' % repo
)
matches = self.get_matching_subprojects(
sub_project.get_path(),
)
else:
matches, sharedrepo = self.import_initial(project, repo, branch)
# We need to limit slug length to avoid problems with MySQL
# silent truncation
# pylint: disable=W0212
slug_len = SubProject._meta.get_field('slug').max_length
# Create remaining subprojects sharing git repository
for match in matches:
name = self.format_string(self.name_template, match)
template = self.format_string(self.base_file_template, match)
slug = slugify(name)[:slug_len]
subprojects = SubProject.objects.filter(
Q(name=name) | Q(slug=slug),
project=project
)
if subprojects.exists():
if not options['duplicates']:
self.logger.warning(
'Component %s already exists, skipping',
name
)
continue
else:
name, slug = self.find_usable_slug(
name, slug_len, project
)
self.logger.info('Creating component %s', name)
SubProject.objects.create(
name=name,
slug=slug,
project=project,
repo=sharedrepo,
branch=branch,
template=template,
filemask=self.filemask.replace('**', match),
**self.get_project_attribs()
)
开发者ID:aplanas,项目名称:weblate,代码行数:77,代码来源:import_project.py
示例5: handle
def handle(self, *args, **options):
'''
Automatic import of project.
'''
# Check params
if len(args) != 4:
raise CommandError('Invalid number of parameters!')
if options['file_format'] not in FILE_FORMATS:
raise CommandError(
'Invalid file format: %s' % options['file_format']
)
# Read params
repo = args[1]
branch = args[2]
self.filemask = args[3]
self.vcs = options['vcs']
self.file_format = options['file_format']
self.name_template = options['name_template']
self.base_file_template = options['base_file_template']
# Try to get project
try:
project = Project.objects.get(slug=args[0])
except Project.DoesNotExist:
raise CommandError(
'Project %s does not exist, you need to create it first!' %
args[0]
)
# Do we have correct mask?
if '**' not in self.filemask:
raise CommandError(
'You need to specify double wildcard '
'for subproject part of the match!'
)
if is_repo_link(repo):
sharedrepo = repo
try:
sub_project = SubProject.objects.get(
project=project,
slug=repo.rsplit('/', 1)[-1]
)
except SubProject.DoesNotExist:
raise CommandError(
'SubProject %s does not exist, '
'you need to create it first!' % repo
)
matches = self.get_matching_subprojects(
sub_project.get_path(),
)
else:
matches, sharedrepo = self.import_initial(project, repo, branch)
# Create remaining subprojects sharing git repository
for match in matches:
name = self.format_string(self.name_template, match)
template = self.format_string(self.base_file_template, match)
slug = slugify(name)
subprojects = SubProject.objects.filter(
Q(name=name) | Q(slug=slug),
project=project
)
if subprojects.exists():
self.logger.warn(
'Component %s already exists, skipping',
name
)
continue
self.logger.info('Creating component %s', name)
SubProject.objects.create(
name=name,
slug=slug,
project=project,
repo=sharedrepo,
branch=branch,
template=template,
file_format=self.file_format,
filemask=self.filemask.replace('**', match)
)
开发者ID:blockgiven,项目名称:weblate,代码行数:84,代码来源:import_project.py
示例6: is_repo_link
def is_repo_link(self):
"""
Checks whether repository is just a link for other one.
"""
return is_repo_link(self.repo)
开发者ID:miumok98,项目名称:weblate,代码行数:5,代码来源:subproject.py
示例7: handle
def handle(self, *args, **options):
'''
Automatic import of project.
'''
# Check params
if len(args) != 4:
raise CommandError('Invalid number of parameters!')
if options['file_format'] not in FILE_FORMATS:
raise CommandError(
'Invalid file format: %s' % options['file_format']
)
# Read params
repo = args[1]
branch = args[2]
self.filemask = args[3]
self.vcs = options['vcs']
self.file_format = options['file_format']
self.language_regex = options['language_regex']
self.main_component = options['main_component']
self.name_template = options['name_template']
self.license = options['license']
self.license_url = options['license_url']
self.base_file_template = options['base_file_template']
if options['component_regexp']:
try:
self.component_re = re.compile(
options['component_regexp'],
re.MULTILINE | re.DOTALL
)
except re.error as error:
raise CommandError(
'Failed to compile regullar expression "{0}": {1}'.format(
options['component_regexp'], error
)
)
if 'name' not in self.component_re.groupindex:
raise CommandError(
'Component regullar expression lacks named group "name"'
)
# Try to get project
try:
project = Project.objects.get(slug=args[0])
except Project.DoesNotExist:
raise CommandError(
'Project %s does not exist, you need to create it first!' %
args[0]
)
# Do we have correct mask?
if '**' not in self.filemask:
raise CommandError(
'You need to specify double wildcard '
'for subproject part of the match!'
)
if is_repo_link(repo):
sharedrepo = repo
try:
sub_project = SubProject.objects.get(
project=project,
slug=repo.rsplit('/', 1)[-1]
)
except SubProject.DoesNotExist:
raise CommandError(
'SubProject %s does not exist, '
'you need to create it first!' % repo
)
matches = self.get_matching_subprojects(
sub_project.get_path(),
)
else:
matches, sharedrepo = self.import_initial(project, repo, branch)
# We need to limit slug length to avoid problems with MySQL
# silent truncation
# pylint: disable=W0212
slug_len = SubProject._meta.get_field('slug').max_length
# Create remaining subprojects sharing git repository
for match in matches:
name = self.format_string(self.name_template, match)
template = self.format_string(self.base_file_template, match)
slug = slugify(name)[:slug_len]
subprojects = SubProject.objects.filter(
Q(name=name) | Q(slug=slug),
project=project
)
if subprojects.exists():
self.logger.warning(
'Component %s already exists, skipping',
name
)
continue
self.logger.info('Creating component %s', name)
SubProject.objects.create(
#.........这里部分代码省略.........
开发者ID:Intrainos,项目名称:weblate,代码行数:101,代码来源:import_project.py
注:本文中的weblate.trans.util.is_repo_link函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论