lostluck opened a new pull request, #32876:
URL: https://github.com/apache/beam/pull/32876
This change does two tasks:
* Enables Python SDK developers to have prism automatically build and run
locally using local changes to Prism when using PrismRunner.
* Sets Prism to be attempted to be used in the Python DirectRunner in some
circumstances.
The main change is to the prism_runner behavior when the SDK reports a
`.dev` version.
In that case:
* Try to `go install github.com/apache/beam/sdks/v2/go/cmd/prism` to the
binary cache directory.
* If that doesn't succeed, inspect the output for module errors
* If there are no *module* errors, then the local version of prism
couldn't compile, OR go isn't installed. Either way, this is a developer
addressable error.
* If there are module errors, then those modules don't have access to a
version of Beam Go, so instead install the latest released version of prism.
* This can be avoided by having a go.work file set up to direct Beam to
a local version of the beam repo. This will be documented in a forthcoming SDK
Development guide.
Arguably independently, is Attempt To Use Prism in the direct runner.
* This currently only happens if we can't use the FnAPI runner.
* If Prism fails on receiving the job, on job submission, then fallback to
the DirectRunner instead.
Other changes are a refactor to reverse a few if blocks and return earlier,
improving readability and reducing indentations.
Part of #32564
------------------------
Thank you for your contribution! Follow this checklist to help us
incorporate your contribution quickly and easily:
- [ ] Mention the appropriate issue in your description (for example:
`addresses #123`), if applicable. This will automatically add a link to the
pull request in the issue. If you would like the issue to automatically close
on merging the pull request, comment `fixes #<ISSUE NUMBER>` instead.
- [ ] Update `CHANGES.md` with noteworthy changes.
- [ ] If this contribution is large, please file an Apache [Individual
Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
See the [Contributor Guide](https://beam.apache.org/contribute) for more
tips on [how to make review process
smoother](https://github.com/apache/beam/blob/master/CONTRIBUTING.md#make-the-reviewers-job-easier).
To check the build health, please visit
[https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md](https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md)
GitHub Actions Tests Status (on master branch)
------------------------------------------------------------------------------------------------
[](https://github.com/apache/beam/actions?query=workflow%3A%22Build+python+source+distribution+and+wheels%22+branch%3Amaster+event%3Aschedule)
[](https://github.com/apache/beam/actions?query=workflow%3A%22Python+Tests%22+branch%3Amaster+event%3Aschedule)
[](https://github.com/apache/beam/actions?query=workflow%3A%22Java+Tests%22+branch%3Amaster+event%3Aschedule)
[](https://github.com/apache/beam/actions?query=workflow%3A%22Go+tests%22+branch%3Amaster+event%3Aschedule)
See [CI.md](https://github.com/apache/beam/blob/master/CI.md) for more
information about GitHub Actions CI or the [workflows
README](https://github.com/apache/beam/blob/master/.github/workflows/README.md)
to see a list of phrases to trigger workflows.
--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]