google/resource-snippets/dataproc-v1/dataproc.jinja (38 lines of code) (raw):
# Copyright 2017 Google Inc. All rights reserved.
#
# Licensed 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.
#% description: Creates a Dataproc cluster.
#% parameters:
# Can't use deployment name as it is going to be filled in with a generated
# name which has dashes in it, which are not valid bigquery name characters.
{% set clusterName = (env["deployment"] + "-dataproc-cluster") %}
resources:
- name: {{ clusterName }}
type: gcp-types/dataproc-v1:projects.regions.clusters
properties:
region: {{ properties["region"] }}
projectId: {{ env["project"] }}
clusterName: {{ clusterName }}
config:
gceClusterConfig:
zoneUri: https://www.googleapis.com/compute/v1/projects/{{ env["project"] }}/zones/{{ properties["zone"] }}
masterConfig:
numInstances: 1
machineTypeUri: https://www.googleapis.com/compute/v1/projects/{{ env["project"] }}/zones/{{ properties["zone"] }}/machineTypes/n1-standard-2
diskConfig:
bootDiskSizeGb: 50
workerConfig:
numInstances: {{ properties["initialWorkerSize"] }}
machineTypeUri: https://www.googleapis.com/compute/v1/projects/{{ env["project"] }}/zones/{{ properties["zone"] }}/machineTypes/n1-standard-2
diskConfig:
bootDiskSizeGb: 50