beam-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Burke (JIRA)" <>
Subject [jira] [Created] (BEAM-5465) Have the sdks/go gradle tasks clean up the vendor directories on clean
Date Fri, 21 Sep 2018 23:20:00 GMT
Robert Burke created BEAM-5465:

             Summary: Have the sdks/go gradle tasks clean up the vendor directories on clean
                 Key: BEAM-5465
             Project: Beam
          Issue Type: Bug
          Components: build-system, sdk-go
            Reporter: Robert Burke

The sdks/go/\{test,examples,container} directories depend on the main beam package, which
cause gogradle to vendor the beam package in those directories.
The gogradle plugin doesn't clean up the [vendor directories|] that
it sets up on builds, when clean is invoked.
This leads to stale copies of the Go SDK's beam package vendored in local directories, which
can lead to build failures of other tasks that invoke the tests or similar, when the code
in those directories uses a more recent version of beam than what is cached.
This doesn't happen for users directly using the go tool, with their git repo nested under
Go PATH, since the go tool will correctly use the local repo copy of beam.
A workaround on a Unix machine or similar, invoked from the beam repo root, is to delete the
vendor and gogradle directories, and retry the task.
rm -rf sdks/go/\{vendor,.gogradle} sdks/go/\{test,examples,container}/\{vendor,.gogradle}
This cause gogradle to fetch a more recent copy of beam for vendoring.
Ideally we fix the clean tasks for the go directories to delete the vendor directories as
well, which will resolve the issue more reliably for those using gradle to test their changes
against the go sdk.

Related: BEAM-5379 is for avoiding the vendoring & cleaning cycle all together and migrating
to gomodules.

This message was sent by Atlassian JIRA

View raw message