[ https://issues.apache.org/jira/browse/BEAM-5465?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Beam JIRA Bot updated BEAM-5465: -------------------------------- Labels: stale-P2 (was: ) > Have the sdks/go gradle tasks clean up the vendor directories on clean > ---------------------------------------------------------------------- > > Key: BEAM-5465 > URL: https://issues.apache.org/jira/browse/BEAM-5465 > Project: Beam > Issue Type: Bug > Components: build-system, sdk-go > Reporter: Robert Burke > Priority: P2 > Labels: stale-P2 > > 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|https://golang.org/cmd/go/#hdr-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 (v8.3.4#803005)