def populate_google_yml(content): credentials = {'project': '', 'jsonPath': ''} google_dict = { 'enabled': False, 'defaultRegion': 'us-central1', 'defaultZone': 'us-central1-f', } google_dict['primaryCredentials'] = credentials if is_google_instance(): zone = os.path.basename( check_fetch(GOOGLE_INSTANCE_METADATA_URL + '/zone', google=True).content) google_dict['enabled'] = 'true' google_dict['defaultRegion'] = zone[:-2] google_dict['defaultZone'] = zone credentials['project'] = check_fetch(GOOGLE_METADATA_URL + '/project/project-id', google=True).content bindings = YamlBindings() bindings.import_dict({'providers': {'google': google_dict}}) content = bindings.transform_yaml_source(content, 'providers.google.enabled') content = bindings.transform_yaml_source(content, 'providers.google.defaultRegion') content = bindings.transform_yaml_source(content, 'providers.google.defaultZone') content = bindings.transform_yaml_source( content, 'providers.google.primaryCredentials.project') content = bindings.transform_yaml_source( content, 'providers.google.primaryCredentials.jsonPath') return content
def populate_google_yml(content): credentials = {'project': '', 'jsonPath': ''} google_dict = {'enabled': False, 'defaultRegion': 'us-central1', 'defaultZone': 'us-central1-f',} google_dict['primaryCredentials'] = credentials if is_google_instance(): zone = os.path.basename( check_fetch(GOOGLE_INSTANCE_METADATA_URL + '/zone', google=True).content) google_dict['enabled'] = 'true' google_dict['defaultRegion'] = zone[:-2] google_dict['defaultZone'] = zone credentials['project'] = check_fetch( GOOGLE_METADATA_URL + '/project/project-id', google=True).content bindings = YamlBindings() bindings.import_dict({'providers': {'google': google_dict}}) content = bindings.transform_yaml_source(content, 'providers.google.enabled') content = bindings.transform_yaml_source( content, 'providers.google.defaultRegion') content = bindings.transform_yaml_source( content, 'providers.google.defaultZone') content = bindings.transform_yaml_source( content, 'providers.google.primaryCredentials.project') content = bindings.transform_yaml_source( content, 'providers.google.primaryCredentials.jsonPath') return content
def install_cassandra(options): """Install Cassandra. Args: options: ArgumentParserNamespace options. """ if not options.cassandra: print '--nocassandra skipping Casssandra install.' return print 'Installing Cassandra...' check_options(options) preferred_version = None if not options.package_manager: root = 'https://archive.apache.org/dist/cassandra/debian/pool/main/c' try: os.mkdir('downloads') except OSError: pass preferred_version = EXPLICIT_CASSANDRA_VERSION cassandra = 'cassandra_{ver}_all.deb'.format(ver=preferred_version) tools = 'cassandra-tools_{ver}_all.deb'.format(ver=preferred_version) fetch_result = check_fetch( '{root}/cassandra/{cassandra}'.format(root=root, cassandra=cassandra)) with open('downloads/{cassandra}' .format(cassandra=cassandra), 'w') as f: f.write(fetch_result.content) fetch_result = check_fetch( '{root}/cassandra/{tools}' .format(root=root, tools=tools)) with open('downloads/{tools}' .format(tools=tools), 'w') as f: f.write(fetch_result.content) check_run_and_monitor('sudo dpkg -i downloads/' + cassandra, echo=True) check_run_and_monitor('sudo dpkg -i downloads/' + tools, echo=True) else: check_run_and_monitor( 'sudo add-apt-repository -s' ' "deb http://www.apache.org/dist/cassandra/debian 21x main"', echo=True) check_run_and_monitor('sudo apt-get -q -y update', echo=True) check_install_package('cassandra', version=preferred_version, options=['--force-yes'])
def install_cassandra(options): """Install Cassandra. Args: options: ArgumentParserNamespace options. """ if not options.cassandra: print '--nocassandra skipping Casssandra install.' return print 'Installing Cassandra...' check_options(options) preferred_version = None if not options.package_manager: root = 'https://archive.apache.org/dist/cassandra/debian/pool/main/c' try: os.mkdir('downloads') except OSError: pass preferred_version = EXPLICIT_CASSANDRA_VERSION cassandra = 'cassandra_{ver}_all.deb'.format(ver=preferred_version) tools = 'cassandra-tools_{ver}_all.deb'.format(ver=preferred_version) fetch_result = check_fetch('{root}/cassandra/{cassandra}'.format( root=root, cassandra=cassandra)) with open('downloads/{cassandra}'.format(cassandra=cassandra), 'w') as f: f.write(fetch_result.content) fetch_result = check_fetch('{root}/cassandra/{tools}'.format( root=root, tools=tools)) with open('downloads/{tools}'.format(tools=tools), 'w') as f: f.write(fetch_result.content) check_run_and_monitor('sudo dpkg -i downloads/' + cassandra, echo=True) check_run_and_monitor('sudo dpkg -i downloads/' + tools, echo=True) else: check_run_and_monitor( 'sudo add-apt-repository -s' ' "deb http://www.apache.org/dist/cassandra/debian 21x main"', echo=True) check_run_and_monitor('sudo apt-get -q -y update', echo=True) check_install_package('cassandra', version=preferred_version, options=['--force-yes'])
def install_nvm(options): print '---------- Installing NVM ---------' check_run_quick('sudo chmod 775 /usr/local') check_run_quick('sudo mkdir -m 777 -p /usr/local/node /usr/local/nvm') result = check_fetch( 'https://raw.githubusercontent.com/creationix/nvm/{nvm_version}/install.sh' .format(nvm_version=NVM_VERSION)) fd, temp = tempfile.mkstemp() os.write(fd, result.content) os.close(fd) try: run_and_monitor( 'bash -c "NVM_DIR=/usr/local/nvm source {temp}"'.format(temp=temp)) finally: os.remove(temp) # curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.26.0/install.sh | NVM_DIR=/usr/local/nvm bash check_run_and_monitor('sudo bash -c "cat > /etc/profile.d/nvm.sh"', input=__NVM_SCRIPT) print '---------- Installing Node {version} ---------'.format( version=NODE_VERSION) run_and_monitor('bash -c "source /etc/profile.d/nvm.sh' '; nvm install {version}' '; nvm alias default {version}"' .format(version=NODE_VERSION))
def populate_google_yml(content): credentials = {'project': '', 'jsonPath': ''} google_dict = { 'enabled': False, 'defaultRegion': 'us-central1', 'defaultZone': 'us-central1-f', } google_dict['primaryCredentials'] = credentials front50_dict = {} if is_google_instance(): zone = os.path.basename( check_fetch(GOOGLE_INSTANCE_METADATA_URL + '/zone', google=True).content) google_dict['enabled'] = 'true' google_dict['defaultRegion'] = zone[:-2] google_dict['defaultZone'] = zone credentials['project'] = check_fetch(GOOGLE_METADATA_URL + '/project/project-id', google=True).content front50_dict['storage_bucket'] = '${{{env}:{default}}}'.format( env='SPINNAKER_DEFAULT_STORAGE_BUCKET', default=credentials['project'].replace(':', '-').replace('.', '-')) bindings = YamlBindings() bindings.import_dict({'providers': {'google': google_dict}}) bindings.import_dict({'services': {'front50': front50_dict}}) content = bindings.transform_yaml_source(content, 'providers.google.enabled') content = bindings.transform_yaml_source(content, 'providers.google.defaultRegion') content = bindings.transform_yaml_source(content, 'providers.google.defaultZone') content = bindings.transform_yaml_source( content, 'providers.google.primaryCredentials.project') content = bindings.transform_yaml_source( content, 'providers.google.primaryCredentials.jsonPath') content = bindings.transform_yaml_source( content, 'services.front50.storage_bucket') return content
def populate_google_yml(content): credentials = {'project': '', 'jsonPath': ''} google_dict = {'enabled': False, 'defaultRegion': 'us-central1', 'defaultZone': 'us-central1-f',} google_dict['primaryCredentials'] = credentials front50_dict = {} if is_google_instance(): zone = os.path.basename( check_fetch(GOOGLE_INSTANCE_METADATA_URL + '/zone', google=True).content) google_dict['enabled'] = 'true' google_dict['defaultRegion'] = zone[:-2] google_dict['defaultZone'] = zone credentials['project'] = check_fetch( GOOGLE_METADATA_URL + '/project/project-id', google=True).content front50_dict['storage_bucket'] = '${{{env}:{default}}}'.format( env='SPINNAKER_DEFAULT_STORAGE_BUCKET', default=credentials['project'].replace(':', '-').replace('.', '-')) bindings = YamlBindings() bindings.import_dict({'providers': {'google': google_dict}}) bindings.import_dict({'services': {'front50': front50_dict}}) content = bindings.transform_yaml_source(content, 'providers.google.enabled') content = bindings.transform_yaml_source( content, 'providers.google.defaultRegion') content = bindings.transform_yaml_source( content, 'providers.google.defaultZone') content = bindings.transform_yaml_source( content, 'providers.google.primaryCredentials.project') content = bindings.transform_yaml_source( content, 'providers.google.primaryCredentials.jsonPath') content = bindings.transform_yaml_source( content, 'services.front50.storage_bucket') return content
def populate_aws_yml(content): aws_dict = {'enabled': False} if is_aws_instance(): zone = (check_fetch(AWS_METADATA_URL + '/placement/availability-zone') .content) aws_dict['enabled'] = 'true' aws_dict['defaultRegion'] = zone[:-1] elif os.path.exists(os.path.join(os.environ['HOME'], '.aws/credentials')): aws_dict['enabled'] = 'true' aws_dict['defaultRegion'] = 'us-east-1' bindings = YamlBindings() bindings.import_dict({'providers': {'aws': aws_dict}}) content = bindings.transform_yaml_source(content, 'providers.aws.enabled') content = bindings.transform_yaml_source(content, 'providers.aws.defaultRegion') return content
def populate_aws_yml(content): aws_dict = {'enabled': False} if is_aws_instance(): zone = (check_fetch(AWS_METADATA_URL + '/placement/availability-zone').content) aws_dict['enabled'] = 'true' aws_dict['defaultRegion'] = zone[:-1] elif os.path.exists(os.path.join(os.environ['HOME'], '.aws/credentials')): aws_dict['enabled'] = 'true' aws_dict['defaultRegion'] = 'us-east-1' bindings = YamlBindings() bindings.import_dict({'providers': {'aws': aws_dict}}) content = bindings.transform_yaml_source(content, 'providers.aws.enabled') content = bindings.transform_yaml_source(content, 'providers.aws.defaultRegion') return content