Developer Machine Setup documentation inconsistencies

LabKey Support Forum (Inactive)
Developer Machine Setup documentation inconsistencies Anthony Corbett  2017-09-15 13:42
Status: Closed
 
In "Set Up a Development Machine" the labkey environment variable is called "LABKEY_HOME" and on the "Notes on Seeing up a Mac for Labkey Development" the labkey environment variable is called "LABKEY_ROOT".

In addition, there are multiple places in both of these wiki pages for what should be added to PATH.

Set Up a Development Machine says <LABKEY_HOME>\build\deploy\bin

Notes on Seeing up a Mac for Labkey Development says two different things:
      PATH = <labkey-root>/external/ant/bin:<labkey-root>/external/osx/bin:<your-normal-path>
      vs
      export PATH=$LABKEY_ROOT/external/ant/bin:$LABKEY_ROOT/build/deploy/bin:$PATH

So my question is what is actually needed on the PATH???

1. Is external/ant/bin needed? According to the Mac Notes it is, but that isn't on the main set up anymore with the move to gradle.

2. On my Mac it seems to me that build/deploy/bin contains the exact same things as external/osx/bin. I checked this via: diff <(ls -1 $LABKEY_HOME/build/deploy/bin) <(ls -1 $LABKEY_HOME/external/osx/bin)

So does that mean I only need one or the other? If so which is best?

Thanks,

Anthony
 
 
Anthony Corbett responded:  2017-09-15 13:46

Also, setting PATH variables in IntelliJ on a Mac is under IntelliJ IDEA | Preferences | Appearance & Behavior | Path Variables and not under File | Settings
 
Jon (LabKey DevOps) responded:  2017-09-15 23:01
Hi Anthony,

We do need to update our developer docs for the Mac since the change to Gradle.

So with the first question, you are correct. The external/ant/bin line isn't needed and everyone should adhere to our Gradle docs such as https://www.labkey.org/Documentation/wiki-page.view?name=devMachine#gradle

I'll need to check on the second question. I personally have always had both and just left it be. But I suspect that since everything under the build directory is created via the build process, it is likely that the information from /external/osx/bin actually gets copied to the build directory, similarly to the modules.

I'll get the second question confirmed by our developers and get back to you on that.

Thank you for your patience.

Regards,

Jon
 
Jon (LabKey DevOps) responded:  2017-09-18 10:33
Hi Anthony,

I've confirmed that the second question matches to what I suspected. The /external/osx/bin directory gets copied to the /build/deploy/bin directory as part of the build process by design since you're on a Mac. And if you were on Windows or Linux, it would copy from the /external/linux/bin and /external/windows/bin directories respectively to the /build/deploy/bin directory.

Regards,

Jon
 
Steve responded:  2017-09-18 11:17
Hi Anthony:

We've cleaned up the docs based on your careful reading.
Thanks for these fixes.

- Steve