blob: 78c285e67a26d370b8a382e772af58873cfae0c4 [file] [log] [blame]
/*
* 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.
*/
import CommonJobProperties as common
import Kubernetes
String jobName = "beam_python_mongoio_load_test"
job(jobName) {
common.setTopLevelMainJobProperties(delegate)
common.setAutoJob(delegate, 'H */6 * * *')
common.enablePhraseTriggeringFromPullRequest(
delegate,
'Python MongoDBIO Load Test',
'Run Python MongoDBIO Load Test')
String namespace = common.getKubernetesNamespace(jobName)
String kubeconfigPath = common.getKubeconfigLocationForNamespace(namespace)
Kubernetes k8s = Kubernetes.create(delegate, kubeconfigPath, namespace)
k8s.apply(common.makePathAbsolute("src/.test-infra/kubernetes/mongodb/load-balancer/mongo.yml"))
String mongoHostName = "LOAD_BALANCER_IP"
k8s.loadBalancerIP("mongo-load-balancer-service", mongoHostName)
Map pipelineOptions = [
temp_location: 'gs://temp-storage-for-perf-tests/loadtests',
project : 'apache-beam-testing',
mongo_uri : "mongodb://\$${mongoHostName}:27017",
num_documents: '1000000',
batch_size : '10000',
runner : 'DataflowRunner',
num_workers : '5'
]
steps {
gradle {
rootBuildScriptDir(common.checkoutDir)
common.setGradleSwitches(delegate)
switches("-Popts=\'${common.mapToArgString(pipelineOptions)}\'")
tasks(":sdks:python:test-suites:dataflow:mongodbioIT")
}
}
}