| /* |
| * 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. |
| */ |
| |
| |
| apply plugin: org.apache.beam.gradle.BeamModulePlugin |
| applyPythonNature() |
| |
| description = "Apache Beam :: SDKs :: Python :: Benchmarks :: Nexmark" |
| |
| // When running via Gradle, this property can be used to pass commandline arguments |
| // to the nexmark launch |
| def nexmarkArgsProperty = "nexmark.args" |
| |
| def getNexmarkArgs = { |
| def nexmarkArgsStr = project.findProperty(nexmarkArgsProperty) ?: "" |
| def nexmarkArgsList = new ArrayList<String>() |
| Collections.addAll(nexmarkArgsList, nexmarkArgsStr.split()) |
| |
| nexmarkArgsList.add("--sdk_location=build/apache-beam.tar.gz") |
| |
| return nexmarkArgsList |
| } |
| |
| task run(type: Exec, dependsOn: installGcpTest) { |
| def nexmarkArgsList = getNexmarkArgs() |
| |
| setWorkingDir "${project.rootDir}/sdks/python" |
| commandLine 'sh', '-c', ". ${envdir}/bin/activate && python -m apache_beam.testing.benchmarks.nexmark.nexmark_launcher " + String.join(" ", nexmarkArgsList) |
| } |