[Sidefx-houdini-list] HDA script management
andy at andynicholas.com
Tue Feb 23 16:22:50 EST 2016
Okay, so having thought about it further, I’m partially going to answer my own question here…
It seems that it’s never gonna be a good idea to import Python modules live into an HDA (unless they’re built-ins or stable core studio pipeline modules, etc.) for the reasons I mentioned in my first email.
So given that, then the only option is to store the code internally. But maybe there’s a hybrid approach that might work. What if we edit and store the code externally, and have a system so that when we save the HDA, the code is *copied* into the HDA so that it gets stored within. That way, there’s never an issue with synchronising versions. If it could be automated (and lets face it, we wouldn’t want to do it manually), then there’s no reason you couldn’t get it to trigger a git commit at the same time to update the repo.
If anyone has any thoughts about that as an approach or if you’ve done something similar, I’d love to hear (on or off list).
> On 23 Feb 2016, at 15:40, Andy Nicholas <andy at andynicholas.com> wrote:
> Hey folks,
> I've been getting further into HDA authoring and have been writing a lot of HDA embedded python scripts. One thing I'm missing is not writing Python in my favourite IDE (PyCharm) with all the benefits that brings, like reuse of code, being able to do Diffs, and being able to manage code versioning through Git. Ideally I'd like to have all my HDA Python code stored externally.
> So I was just wondering if anyone had got a workflow going with versioning HDAs and externally imported python modules? Seems like it could be a can of worms having to make sure that the version of the asset matches the correct version of imported python module. Any HDAs used on a job would have to have a corresponding python module available in the path and it's hard to see how conflicts could be managed easily (especially since multiple versions of the same HDA could be used in the same Hip file).
> Anyone have any experience trying to manage this in their set up?
> Sidefx-houdini-list mailing list
> Sidefx-houdini-list at sidefx.com
More information about the Sidefx-houdini-list