Commit Graph

57 Commits

Author SHA1 Message Date
Matt Keeler ade900f2b6 Dont override set but null vars 2018-06-18 09:16:08 -04:00
Matt Keeler f6d1aa8fc3 Make some room for overrides of build system functions 2018-06-18 09:06:57 -04:00
Matt Keeler e542e63031 Generalize git pushing in a bash function 2018-06-15 20:42:07 -04:00
Matt Keeler 57aa738416 Update the scripting
Automated putting the source tree into release mode.
2018-06-14 21:42:47 -04:00
Matt Keeler d99ca00d74 Move some things around and add in consul version confirmation to publishing checks 2018-06-14 11:20:27 -04:00
Matt Keeler 237c78d4a4 Add more functionality related to verifying a build and publishing 2018-06-13 17:03:18 -04:00
Matt Keeler 351841c7b2 Redo the build system
Improvements:
   - More modular
   - Building within docker doesn’t use volumes so can be run on a remote docker host
   - Build containers include only minimal context so they only rarely need to be rebuilt and most of the time can be used from the cache.
   - 3 build containers instead of 1. One based off of the upstream golang containers for building go stuff with all our required GOTOOLS installed. One like the old container based off ubuntu bionic for building the old UI (didn’t bother creating a much better container as this shouldn’t be needed once we completely remove the legacy UI). One for building the new UI. Its alpine based with all the node, ember, yarn stuff installed.
   - Top level makefile has the ability to do a container based build without running make dist
   - Can build for arbitrary platforms at the top level using: make consul-docker XC_OS=… XC_ARCH=…
   - overridable functionality to allow for customizations to the enterprise build (like to generate multiple binaries)
   - unified how we compile our go. always use gox even for dev-builds or rather always use the tooling around our scripts which will make sure things get copied to the correct places throughout the filesystem.
2018-06-12 16:55:52 -04:00