Skip to content
This repository has been archived by the owner on Mar 3, 2023. It is now read-only.

Upgrade pex in Heron #881

Open
billonahill opened this issue Jun 7, 2016 · 5 comments
Open

Upgrade pex in Heron #881

billonahill opened this issue Jun 7, 2016 · 5 comments
Assignees

Comments

@billonahill
Copy link
Contributor

Ideally we would fetch a pex binary at build time, but for now the code is committed and aging. This ticket is to upgrade pex to the latest release. In my tests this has worked fine, but we need to get this change merged into pex first:
pex-tool/pex#277

@huijunwu
Copy link
Member

huijunwu commented Jul 8, 2020

Curious the motivation to choose PEX. why not use the Bazel py_binary, which could make the building process easier?

@joshfischer1108
Copy link
Member

joshfischer1108 commented Jul 16, 2020

Following up from the conversation on Slack to keep others aware. I believe that at the time the core development in Heron was happening pi_binary rules did not exist. It would probably be easier to migrate to the pi_binary rules moving forward.

@nicknezis
Copy link
Contributor

It seems there are two locations that are relevant to the PEX discussion. Are there any I'm missing? What changes would be needed to use the output of py_binary build task? Would this be easier or harder for analytics developers? I'm currently looking to use {Py}Gradle and the LinkedIn PEX plugin to package my analytics. It would not be ideal if we forced analytic developers to only use Bazel.

  1. Heron Executor: Runs a pyton binary with the pex file as an argument (per component)
    instance_cmd = [self.python_instance_binary,
  2. Heron CLI checks for pex extension:
    pex_type = topology_file.endswith(".pex")
  3. Heron CLI: Uses pex_loader library to load the Topology class at submit time.
    def heron_pex(topology_pex, topology_class_name, args=None):

@joshfischer1108
Copy link
Member

Could you describe what an analytic developer is?

@nicknezis
Copy link
Contributor

A developer writing a Heron topology to run in a managed instance of Heron.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants