ihji commented on a change in pull request #10055: [BEAM-8603] Add Python
SqlTransform
URL: https://github.com/apache/beam/pull/10055#discussion_r399496783
##########
File path:
buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy
##########
@@ -1779,6 +1779,33 @@ class BeamModulePlugin implements Plugin<Project> {
cleanupTask.mustRunAfter pythonTask
config.cleanupJobServer.mustRunAfter pythonTask
}
+ // Task for running testcases in Python SDK
+ def testOpts = [
+ "--attr=UsesSqlExpansionService"
+ ]
+ def pipelineOpts = [
+ "--runner=PortableRunner",
+ "--environment_cache_millis=10000",
+ "--job_endpoint=${config.jobEndpoint}"
+ ]
+ def beamPythonTestPipelineOptions = [
+ "pipeline_opts": pipelineOpts,
+ "test_opts": testOpts,
+ "suite": "xlangSqlValidateRunner"
+ ]
+ def cmdArgs =
project.project(':sdks:python').mapToArgString(beamPythonTestPipelineOptions)
+ def pythonSqlTask = project.tasks.create(name:
config.name+"PythonUsingSql", type: Exec) {
Review comment:
You will run the same test twice if you put the task here without using
`sdk` and `port`. It will run twice against Python expansion-service and Java
expansion-service but `pythonSqlTask` uses neither of them.
I would instead add `:sdks:java:extensions:sql` dependency to existing test
expansion service and utilize environment variables `EXPANSION_JAR` and
`EXPANSION_PORT` like `pythonTask` above. Since external sql transform is only
available on Java expansion service, you should handle the exception like
https://github.com/apache/beam/blob/master/sdks/python/apache_beam/io/external/xlang_parquetio_test.py#L71
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services