def create_environment(environment_dir, port, ckan_version, create_skin, site_name, start_web, create_sysadmin, address, log_syslog=False, datapusher=True, quiet=False, site_url=None, interactive=False, init_db=True): if not init_db: print 'Since the database will not be initialized, we will not copy datapusher.' datapusher = False environment = Environment.new(environment_dir, ckan_version, site_name, address=address, port=port) try: # There are a lot of steps we can/must skip if we're making a sub-site only making_full_environment = not environment.data_exists() if not quiet: write('Creating environment "{0}/{1}"'.format(environment.name, environment.site_name)) steps = [ lambda: environment.create_directories(making_full_environment), environment.create_bash_profile ] + \ ([ environment.create_virtualenv, environment.save, lambda: environment.create_source(datapusher), environment.create_ckan_ini] if making_full_environment else [] ) + \ [ environment.save_site, environment.start_supporting_containers, environment.fix_storage_permissions, lambda: environment.update_ckan_ini(skin=create_skin), ] if create_skin and making_full_environment: steps.append(environment.create_install_template_skin) for fn in steps: fn() if not quiet: write('.') if not quiet: write('\n') return finish_init(environment, start_web, create_sysadmin, log_syslog=log_syslog, site_url=site_url, interactive=interactive, init_db=init_db) except: # Make sure that it doesn't get printed right after the dots # by printing a newline # i.e. Creating environment 'hello'.....ERROR MESSAGE if not quiet: print raise
def create_environment(environment_dir, port, ckan_version, create_skin, start_web, create_sysadmin): try: # FIXME: only 2.3 preload supported at the moment environment = Environment.new(environment_dir, '2.3', port) except DatacatsError as e: print e return 1 if not valid_deploy_name(environment.name): print "WARNING: When deploying you will need to choose a" print "target name that is at least 5 characters long" print write('Creating environment "{0}"'.format(environment.name)) steps = [ environment.create_directories, environment.create_bash_profile, environment.save, environment.create_virtualenv, environment.create_source, environment.start_postgres_and_solr, environment.fix_storage_permissions, environment.create_ckan_ini, lambda: environment.update_ckan_ini(skin=create_skin), environment.fix_project_permissions, ] if create_skin: steps.append(environment.create_install_template_skin) steps.append(environment.ckan_db_init) for fn in steps: fn() write('.') write('\n') return finish_init(environment, start_web, create_sysadmin)
def create_environment(environment_dir, port, ckan_version, create_skin, start_web, create_sysadmin): try: # FIXME: only 2.3 preload supported at the moment environment = Environment.new(environment_dir, '2.3', port) except DatacatsError as e: print e return 1 if not valid_deploy_name(environment.name): print "WARNING: When deploying you will need to choose a" print "target name that is at least 5 characters long" print write('Creating environment "{0}"'.format(environment.name)) steps = [ environment.create_directories, environment.create_bash_profile, environment.save, environment.create_virtualenv, environment.create_source, environment.start_postgres_and_solr, environment.fix_storage_permissions, environment.create_ckan_ini, lambda: environment.update_ckan_ini(skin=create_skin), environment.fix_project_permissions, ] if create_skin: steps.append(environment.create_install_template_skin) steps.append(environment.ckan_db_init) for fn in steps: fn() write('.') write('\n') return finish_init(environment, start_web, create_sysadmin)
def create_environment(environment_dir, port, ckan_version, create_skin, site_name, start_web, create_sysadmin, address, log_syslog=False, datapusher=True, quiet=False, site_url=None, interactive=False, init_db=True): if not init_db: print 'Since the database will not be initialized, we will not copy datapusher.' datapusher = False environment = Environment.new(environment_dir, ckan_version, site_name, address=address, port=port) try: # There are a lot of steps we can/must skip if we're making a sub-site only making_full_environment = not environment.data_exists() if not quiet: write('Creating environment "{0}/{1}"'.format( environment.name, environment.site_name)) steps = [ lambda: environment.create_directories(making_full_environment), environment.create_bash_profile ] + \ ([ environment.create_virtualenv, environment.save, lambda: environment.create_source(datapusher), environment.create_ckan_ini] if making_full_environment else [] ) + \ [ environment.save_site, environment.start_supporting_containers, environment.fix_storage_permissions, lambda: environment.update_ckan_ini(skin=create_skin), ] if create_skin and making_full_environment: steps.append(environment.create_install_template_skin) for fn in steps: fn() if not quiet: write('.') if not quiet: write('\n') return finish_init(environment, start_web, create_sysadmin, log_syslog=log_syslog, site_url=site_url, interactive=interactive, init_db=init_db) except: # Make sure that it doesn't get printed right after the dots # by printing a newline # i.e. Creating environment 'hello'.....ERROR MESSAGE if not quiet: print raise