Example #1
0
def copy_eggs(project, endpoint, apikey, new_project, new_endpoint, new_apikey,
              copy_main):

    egg_versions = get_eggs_versions(project, endpoint, apikey)
    temp_dir = mkdtemp()
    destfile = os.path.join(temp_dir, 'eggs-%s.zip' % project)
    fetch_eggs(project, endpoint, apikey, destfile)

    # this will decompress egg containing other eggs, not eggs from source project
    decompress_egg_files(directory=temp_dir)
    destdir = os.path.join(temp_dir, "eggs-{}".format(project))
    for egg_name in os.listdir(destdir):
        if egg_name == "__main__.egg" and not copy_main:
            continue
        name = egg_name.partition(".egg")[0]
        version = egg_versions[name]
        egg_path = os.path.join(destdir, egg_name)
        egg_info = (egg_name, egg_path)
        _deploy_dependency_egg(new_project,
                               new_endpoint,
                               new_apikey,
                               name=name,
                               version=version,
                               egg_info=egg_info)

    # remove temporary directory
    rmtree(temp_dir)
Example #2
0
def copy_eggs(project, endpoint, apikey, new_project, new_endpoint, new_apikey,
              copy_main):
    egg_versions = get_eggs_versions(project, endpoint, apikey)
    temp_dir = mkdtemp()
    destfile = os.path.join(temp_dir, 'eggs-%s.zip' % project)
    fetch_eggs(project, endpoint, apikey, destfile)
    # Decompress project bundle (so temp_dir will contain all project eggs)
    decompress_egg_files(directory=temp_dir)
    destdir = os.path.join(temp_dir, "eggs-{}".format(project))
    for egg_name in os.listdir(destdir):
        if egg_name == "__main__.egg" and not copy_main:
            continue
        name = egg_name.partition(".egg")[0]
        try:
            version = egg_versions[name]
        except KeyError:
            click.secho(
                "WARNING: The following egg belongs to a Dash Addon: %s. "
                "Please manually enable the corresponding Addon in the target "
                "project." % name,
                fg='yellow',
                bold=True,
            )
            continue
        egg_path = os.path.join(destdir, egg_name)
        egg_info = (egg_name, egg_path)
        _deploy_dependency_egg(new_project, new_endpoint, new_apikey,
                               name=name, version=version, egg_info=egg_info)
    rmtree(temp_dir)
Example #3
0
def main(target, requirements_file):
    project, endpoint, apikey = get_target(target)
    requirements_full_path = os.path.abspath(requirements_file)
    eggs_tmp_dir = _mk_and_cd_eggs_tmpdir()
    _download_egg_files(eggs_tmp_dir, requirements_full_path)
    decompress_egg_files()
    build_and_deploy_eggs(project, endpoint, apikey)
def main(project_id, requirements_file):
    apikey = find_api_key()
    requirements_full_path = os.path.abspath(requirements_file)
    eggs_tmp_dir = _mk_and_cd_eggs_tmpdir()
    _download_egg_files(eggs_tmp_dir, requirements_full_path)
    decompress_egg_files()
    utils.build_and_deploy_eggs(project_id, apikey)
def copy_eggs(project, endpoint, apikey, new_project, new_endpoint, new_apikey,
              copy_main):
    egg_versions = get_eggs_versions(project, endpoint, apikey)
    temp_dir = mkdtemp()
    destfile = os.path.join(temp_dir, 'eggs-%s.zip' % project)
    fetch_eggs(project, endpoint, apikey, destfile)
    # Decompress project bundle (so temp_dir will contain all project eggs)
    decompress_egg_files(directory=temp_dir)
    destdir = os.path.join(temp_dir, "eggs-{}".format(project))
    for egg_name in os.listdir(destdir):
        if egg_name == "__main__.egg" and not copy_main:
            continue
        name = egg_name.partition(".egg")[0]
        try:
            version = egg_versions[name]
        except KeyError:
            click.secho(
                "WARNING: The following egg belongs to a Dash Addon: %s. "
                "Please manually enable the corresponding Addon in the target "
                "project." % name,
                fg='yellow',
                bold=True,
            )
            continue
        egg_path = os.path.join(destdir, egg_name)
        egg_info = (egg_name, egg_path)
        _deploy_dependency_egg(new_project,
                               new_endpoint,
                               new_apikey,
                               name=name,
                               version=version,
                               egg_info=egg_info)
    rmtree(temp_dir)
Example #6
0
def main(target, requirements_file):
    targetconf = get_target_conf(target)
    requirements_full_path = os.path.abspath(requirements_file)
    eggs_tmp_dir = _mk_and_cd_eggs_tmpdir()
    _download_egg_files(eggs_tmp_dir, requirements_full_path)
    decompress_egg_files()
    build_and_deploy_eggs(targetconf.project_id, targetconf.endpoint,
                          targetconf.apikey)
Example #7
0
def main(target, requirements_file):
    targetconf = get_target_conf(target)
    requirements_full_path = os.path.abspath(requirements_file)
    eggs_tmp_dir = _mk_and_cd_eggs_tmpdir()
    _download_egg_files(eggs_tmp_dir, requirements_full_path)
    decompress_egg_files()
    build_and_deploy_eggs(targetconf.project_id, targetconf.endpoint,
                          targetconf.apikey)
Example #8
0
def main(project_id, requirements_file):
    target = scrapycfg.get_target('default')
    project_id = scrapycfg.get_project(target, project_id)
    apikey = find_api_key()
    log('Deploying requirements to project "%s"' % project_id)

    requirements_full_path = os.path.abspath(requirements_file)
    eggs_tmp_dir = _mk_and_cd_eggs_tmpdir()
    _download_egg_files(eggs_tmp_dir, requirements_full_path)
    decompress_egg_files()
    utils.build_and_deploy_eggs(project_id, apikey)
def main(project_id, from_url=None, git_branch=None, from_pypi=None):
    apikey = find_api_key()

    if from_pypi:
        _fetch_from_pypi(from_pypi)
        decompress_egg_files()
        utils.build_and_deploy_eggs(project_id, apikey)
        return

    if from_url:
        _checkout(from_url, git_branch)

    if not os.path.isfile('setup.py'):
        error = "No setup.py -- are you running from a valid Python project?"
        fail(error)

    utils.build_and_deploy_egg(project_id, apikey)
Example #10
0
def main(target, from_url=None, git_branch=None, from_pypi=None):
    project, endpoint, apikey = get_target(target)

    if from_pypi:
        _fetch_from_pypi(from_pypi)
        decompress_egg_files()
        utils.build_and_deploy_eggs(project, endpoint, apikey)
        return

    if from_url:
        _checkout(from_url, git_branch)

    if not os.path.isfile('setup.py'):
        error = "No setup.py -- are you running from a valid Python project?"
        raise NotFoundException(error)

    utils.build_and_deploy_egg(project, endpoint, apikey)
Example #11
0
def main(target, from_url=None, git_branch=None, from_pypi=None):
    targetconf = get_target_conf(target)

    if from_pypi:
        _fetch_from_pypi(from_pypi)
        decompress_egg_files()
        utils.build_and_deploy_eggs(targetconf.project_id, targetconf.endpoint,
                                    targetconf.apikey)
        return

    if from_url:
        _checkout(from_url, git_branch)

    if not os.path.isfile('setup.py'):
        error = "No setup.py -- are you running from a valid Python project?"
        raise NotFoundException(error)

    utils.build_and_deploy_egg(targetconf.project_id, targetconf.endpoint,
                               targetconf.apikey)
Example #12
0
def copy_eggs(project, endpoint, apikey, new_project, new_endpoint, new_apikey, copy_main):

    egg_versions = get_eggs_versions(project, endpoint, apikey)
    temp_dir = mkdtemp()
    destfile = os.path.join(temp_dir, 'eggs-%s.zip' % project)
    fetch_eggs(project, endpoint, apikey, destfile)

    # this will decompress egg containing other eggs, not eggs from source project
    decompress_egg_files(directory=temp_dir)
    destdir = os.path.join(temp_dir, "eggs-{}".format(project))
    for egg_name in os.listdir(destdir):
        if egg_name == "__main__.egg" and not copy_main:
            continue
        name = egg_name.partition(".egg")[0]
        version = egg_versions[name]
        egg_path = os.path.join(destdir, egg_name)
        egg_info = (egg_name, egg_path)
        _deploy_dependency_egg(new_project, new_endpoint, new_apikey, name=name, version=version,
                               egg_info=egg_info)

    # remove temporary directory
    rmtree(temp_dir)