| <?xml version='1.0' encoding='UTF-8'?> |
| <!-- |
| |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| |
| --> |
| <project> |
| <actions/> |
| <description>Create new EMR Cluster</description> |
| <keepDependencies>false</keepDependencies> |
| <properties> |
| <hudson.model.ParametersDefinitionProperty> |
| <parameterDefinitions> |
| <hudson.model.StringParameterDefinition> |
| <name>User_name</name> |
| <description></description> |
| <defaultValue></defaultValue> |
| <trim>false</trim> |
| </hudson.model.StringParameterDefinition> |
| <hudson.model.StringParameterDefinition> |
| <name>Notebook_name</name> |
| <description>Name of the Notebook server</description> |
| <defaultValue></defaultValue> |
| <trim>false</trim> |
| </hudson.model.StringParameterDefinition> |
| <hudson.model.StringParameterDefinition> |
| <name>exploratory_name</name> |
| <description>Short name of notebook instance</description> |
| <defaultValue></defaultValue> |
| <trim>false</trim> |
| </hudson.model.StringParameterDefinition> |
| <hudson.model.StringParameterDefinition> |
| <name>computational_name</name> |
| <description>Short name of cluster instance</description> |
| <defaultValue></defaultValue> |
| <trim>false</trim> |
| </hudson.model.StringParameterDefinition> |
| <hudson.model.StringParameterDefinition> |
| <name>Nodes_Count</name> |
| <description>Number of nodes the new cluster will consist of</description> |
| <defaultValue></defaultValue> |
| <trim>false</trim> |
| </hudson.model.StringParameterDefinition> |
| <hudson.model.ChoiceParameterDefinition> |
| <name>slave_spot_instance</name> |
| <description>instance life cycle for EMR slaves</description> |
| <choices class="java.util.Arrays$ArrayList"> |
| <a class="string-array"> |
| <string>False</string> |
| <string>True</string> |
| </a> |
| </choices> |
| </hudson.model.ChoiceParameterDefinition> |
| <hudson.model.StringParameterDefinition> |
| <name>slave_instance_spot_pct_price</name> |
| <description>The percentage of EC2 instance price which will be used for Spot price. If spot instances is disabled, the value of this parameter can be anything.</description> |
| <defaultValue>70</defaultValue> |
| <trim>false</trim> |
| </hudson.model.StringParameterDefinition> |
| <hudson.model.ChoiceParameterDefinition> |
| <name>Master_node_size</name> |
| <description> |
| Memory optimized: S: r3.xlarge |
| Memory optimized: M: r3.4xlarge |
| Memory optimized: L: r3.8xlarge |
| GPU optimized: M: g2.2xlarge |
| Compute optimized: S: c4.large |
| Compute optimized: M: c4.2xlarge |
| Compute optimized: L: c4.8xlarge |
| </description> |
| <choices class="java.util.Arrays$ArrayList"> |
| <a class="string-array"> |
| <string>c4.large</string> |
| <string>c4.2xlarge</string> |
| <string>c4.8xlarge</string> |
| <string>g2.2xlarge</string> |
| <string>r3.xlarge</string> |
| <string>r3.4xlarge</string> |
| <string>r3.8xlarge</string> |
| </a> |
| </choices> |
| </hudson.model.ChoiceParameterDefinition> |
| <hudson.model.ChoiceParameterDefinition> |
| <name>Slave_node_size</name> |
| <description> |
| Memory optimized: S: r3.xlarge |
| Memory optimized: M: r3.4xlarge |
| Memory optimized: L: r3.8xlarge |
| GPU optimized: M: g2.2xlarge |
| Compute optimized: S: c4.large |
| Compute optimized: M: c4.2xlarge |
| Compute optimized: L: c4.8xlarge |
| </description> |
| <choices class="java.util.Arrays$ArrayList"> |
| <a class="string-array"> |
| <string>c4.large</string> |
| <string>c4.2xlarge</string> |
| <string>c4.8xlarge</string> |
| <string>g2.2xlarge</string> |
| <string>r3.xlarge</string> |
| <string>r3.4xlarge</string> |
| <string>r3.8xlarge</string> |
| </a> |
| </choices> |
| </hudson.model.ChoiceParameterDefinition> |
| <hudson.model.StringParameterDefinition> |
| <name>Service_role</name> |
| <description></description> |
| <defaultValue>EMR_DefaultRole</defaultValue> |
| <trim>false</trim> |
| </hudson.model.StringParameterDefinition> |
| <hudson.model.StringParameterDefinition> |
| <name>EMR_EC2_role</name> |
| <description></description> |
| <defaultValue>EMR_EC2_DefaultRole</defaultValue> |
| <trim>false</trim> |
| </hudson.model.StringParameterDefinition> |
| <hudson.model.ChoiceParameterDefinition> |
| <name>Release_label</name> |
| <description></description> |
| <choices class="java.util.Arrays$ArrayList"> |
| <a class="string-array"> |
| <string>emr-5.6.0</string> |
| <string>emr-5.12.0</string> |
| </a> |
| </choices> |
| </hudson.model.ChoiceParameterDefinition> |
| <hudson.model.StringParameterDefinition> |
| <name>Timeout</name> |
| <description>Timeout for EMR during build. Not mandatory</description> |
| <defaultValue>1500</defaultValue> |
| <trim>false</trim> |
| </hudson.model.StringParameterDefinition> |
| <hudson.model.ChoiceParameterDefinition> |
| <name>notebook_app</name> |
| <description>notebook application to be deployed</description> |
| <choices class="java.util.Arrays$ArrayList"> |
| <a class="string-array"> |
| <string>jupyter</string> |
| <string>rstudio</string> |
| <string>zeppelin</string> |
| <string>tensor</string> |
| </a> |
| </choices> |
| </hudson.model.ChoiceParameterDefinition> |
| <hudson.model.StringParameterDefinition> |
| <name>aws_notebook_vpc_id</name> |
| <description>Notebook VPC ID (secondary or the same VPC ID for deploy)</description> |
| <defaultValue></defaultValue> |
| <trim>false</trim> |
| </hudson.model.StringParameterDefinition> |
| <hudson.model.StringParameterDefinition> |
| <name>configutations</name> |
| <description>Custom configurations for EMR cluster</description> |
| <defaultValue>[]</defaultValue> |
| <trim>false</trim> |
| </hudson.model.StringParameterDefinition> |
| </parameterDefinitions> |
| </hudson.model.ParametersDefinitionProperty> |
| </properties> |
| <scm class="hudson.scm.NullSCM"/> |
| <canRoam>true</canRoam> |
| <disabled>false</disabled> |
| <blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding> |
| <blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding> |
| <triggers/> |
| <concurrentBuild>false</concurrentBuild> |
| <builders> |
| <hudson.tasks.Shell> |
| <command>rand=`openssl rand -hex 10`; |
| sed 's/RID/'${rand}'/g' /var/lib/jenkins/jobs/create_dataengine-service/template_prepare.json | \ |
| sed 's/SPI/'${slave_spot_instance}'/g' | \ |
| sed 's/SISPP/'${slave_instance_spot_pct_price}'/g' | \ |
| sed 's/EUN/'${User_name}'/g' | sed 's/ESR/'${Service_role}'/g' | \ |
| sed 's/EE2R/'${EMR_EC2_role}'/g' | sed 's/EVER/'${Release_label}'/g' | \ |
| sed 's/EMIT/'${Master_node_size}'/g' | sed 's/ESMT/'${Slave_node_size}'/g' | \ |
| sed 's/EIC/'${Nodes_Count}'/g' | sed 's/ETIM/'${Timeout}'/g' | \ |
| sed 's/NNM/'${Notebook_name}'/g' | sed 's/NVPCID/'${aws_notebook_vpc_id}'/g' | \ |
| sed 's/EXN/'${exploratory_name}'/g' | sed 's/CON/'${computational_name}'/g' | \ |
| sudo docker run -i -e "conf_tag_resource_id=user:tag" -e "configurations=$configurations" \ |
| -v /home/dlab-user/keys:/root/keys -v /opt/dlab/tmp/result:/response \ |
| -v /var/opt/dlab/log/dataengine-service:/logs/dataengine-service \ |
| docker.dlab-dataengine-service --action create; |
| |
| rand=`openssl rand -hex 10`; |
| sed 's/RID/'${rand}'/g' /var/lib/jenkins/jobs/create_dataengine-service/template_configure.json | \ |
| sed 's/EUN/'${User_name}'/g' | sed 's/EVER/'${Release_label}'/g' | \ |
| sed 's/APP/'${notebook_app}'/g' | sed 's/NNM/'${Notebook_name}'/g' | \ |
| sudo docker run -i -e "conf_tag_resource_id=user:tag" \ |
| -v /home/dlab-user/keys:/root/keys -v /opt/dlab/tmp/result:/response \ |
| -v /var/opt/dlab/log/dataengine-service:/logs/dataengine-service \ |
| docker.dlab-${notebook_app} --action configure; |
| </command> |
| </hudson.tasks.Shell> |
| </builders> |
| <publishers/> |
| <buildWrappers/> |
| </project> |