Page MenuHomec4science

create-repo.py
No OneTemporary

File Metadata

Created
Sat, May 4, 06:32

create-repo.py

#!/usr/bin/env python3
from phabricator import Phabricator
import logging, random, namesgenerator
logging.basicConfig(level=logging.DEBUG)
phab = Phabricator(host='https://scitassrv18.epfl.ch/api/')
user = phab.user.whoami()
logging.debug('user=%s' % user)
# Get random project
project = None
while project == None or len(project['data']) == 0:
proj_id = random.randint(1, 1500)
logging.debug('proj_id=%i' % proj_id)
project = phab.project.search(
constraints = {'ids': [proj_id]},
)
project = project['data'][0]
logging.debug('project=%s' % project)
# Create the repository
task = phab.diffusion.repository.edit(
transactions = [
{'type': 'name', 'value': namesgenerator.get_random_name()},
{'type': 'vcs', 'value': 'git'},
{'type': 'status', 'value': 'active'},
{'type': 'view', 'value': 'users'},
{'type': 'edit', 'value': 'obj.repository.author'},
{'type': 'policy.push', 'value': 'obj.repository.author'},
{'type': 'projects.add', 'value': [project['phid']]},
],
)
logging.debug('task=%s' % task)

Event Timeline