diff options
author | Parménides GV <parmegv@sdf.org> | 2015-08-10 14:43:58 +0200 |
---|---|---|
committer | Parménides GV <parmegv@sdf.org> | 2015-08-10 14:43:58 +0200 |
commit | 25ff4616448f2d63090d9828255e402e989439df (patch) | |
tree | df780f58783f0c2d5a24898e10f75fbb889f1174 | |
parent | 40273e720f0df2e18b1b0c4a6400140a72aea968 (diff) |
[feat] Publish leap wheels
- Related: #7368
-rw-r--r-- | master.cfg | 32 |
1 files changed, 30 insertions, 2 deletions
@@ -166,12 +166,14 @@ def create_builder(repo_name): for repo_name, repo_branch, _, namespace, in sorted(REPOS, key = lambda repo: repo[order_repos_index])[0:repo_index]: add_repo_to_factory(factory, repo_name, repo_branch, namespace, venv_name) - factory.addStep( - ShellCommand(command=['pep8', '--exclude=setup.py,versioneer.py,src._version', '--ignore=E501', '.'],env=venv_path_factory,haltOnFailure=False, workdir=repo_name, name="pep8 on " + repo_name)) + factory.addSteps([ + ShellCommand(command=['pep8', '--exclude=setup.py,versioneer.py,src._version', '--ignore=E501', '.'],env=venv_path_factory,haltOnFailure=False, workdir=repo_name, name="pep8 on " + repo_name)]) if namespace is not '': factory.addStep(ShellCommand(command=['trial', namespace], env=venv_path_factory, workdir=repo_name, name="trial "+namespace)) + publish_leap_wheels(factory, repo_name, venv_path_factory) + if repo_name == 'bitmask_client': publish_sumo = publish_sumo_command('`ls -t *SUMO.tar.gz | head -1`') @@ -189,6 +191,32 @@ def create_builder(repo_name): return BuilderConfig(name=builder_name, slavenames=[localhost_slave], factory=factory) +def publish_leap_wheels(factory, repo_name, env): + env_soledad = {'PATH': env['PATH'].replace('../', '../../', 1)} + + if repo_name == 'soledad': + for subpackage in ["common", "client", "server"]: + factory.addSteps([ + ShellCommand(command=['python', 'setup.py', 'bdist_wheel'], env=env_soledad, haltOnFailure=True, workdir=repo_name+'/'+subpackage, name="leap wheels for " + repo_name+"."+subpackage), + ShellCommand(command=publish_leap_wheels_soledad(subpackage, '`ls -t *.whl | head -1`'), env=env_soledad, haltOnFailure=True, workdir=repo_name+'/'+subpackage+'/dist', name="publish leap wheels for " + repo_name+"."+subpackage)]) + else: + factory.addSteps([ + ShellCommand(command=['python', 'setup.py', 'bdist_wheel'], env=env, workdir=repo_name, name="Generate leap wheels for "+repo_name), + ShellCommand(command=publish_leap_wheels_command(repo_name, '`ls -t *.whl | head -1`'), env=env, workdir=repo_name + '/dist', name="Publish leap wheels for "+repo_name) + ]) + +def publish_leap_wheels_command(repo_name, location): + directory = config.get('ftp', 'leap_wheels_directory') + command = ftp_publish_command(location, directory) + ' && ' + ftp_soft_link(location, directory, 'leap.' + repo_name + '-latest.whl') + + return command + +def publish_leap_wheels_soledad(subpackage, location): + directory = config.get('ftp', 'leap_wheels_directory') + command = ftp_publish_command(location, directory) + ' && ' + ftp_soft_link(location, directory, 'leap.soledad.' + subpackage + '-latest.whl') + + return command + def publish_sumo_command(location): directory = config.get('ftp', 'sumo_target_directory') command = ftp_publish_command(location, directory) + ' && ' + ftp_soft_link(location, directory, 'leap.bitmask-latest-SUMO.tar.gz') |