Commit Graph

40 Commits

Author SHA1 Message Date
Mitchell Hashimoto e7dfb8a0d2
Detect correct GOOS/ARCH for copying binary with build_consul_local
If GOOS/ARCH is set to something custom, we need to unset it before
testing the value so we can compare to the _original value_.
2018-09-10 10:25:15 -07:00
Siva Prasad f8cc241b28
Fixed a make build issue with Windows Binaries. (#4538)
* Fixed an issue where Windows binary had trouble being copied correctly

* Enclosed binname inside angular brackets
2018-08-17 09:31:57 -04:00
John Cowen 80a307cb9f
UI: Add conditional enterprise logo (#4432)
Adds additional 'enterprise' text underneath the 'startup' logo if the
ui is built with a CONSUL_BINARY_TYPE environment variable that doesn't
equal `oss`.
2018-07-30 17:59:43 +01:00
Matt Keeler 21ff0d5087 Fix cross compiling with make
make XC_OS=linux XC_ARCH=amd64 when running on macos puts its binaries in ${GOPATH}/bin/linux_amd64/consul and not ${GOPATH}/bin/consul

This makes the build pull the binary from the right location.
2018-07-25 15:21:11 -04:00
John Cowen e918221275 Tiny ui build additions
1. Use `ls -A` to list dotfiles also, ready for tarring
2. Don't copy ember's `./tmp` if you have one
2018-07-06 15:08:11 +01:00
Matt Keeler 2cc7cd32af Fix default make target to build everything 2018-06-27 14:25:49 -04:00
Matt Keeler 8c50e62268 Make sure to disable cgo for dev builds without gox 2018-06-26 14:54:31 -04:00
Matt Keeler c8f706a141 Added release verification script
Also implemented shasum verification and gpg signature verification
2018-06-26 11:45:02 -04:00
Matt Keeler f926786292 Create a new ui_version function to pull it out of an index.html file
Also verify the ui version after it was built that it matches the env var we set in the build container.
2018-06-26 11:22:13 -04:00
Matt Keeler d6bc5bc2db Merge remote-tracking branch 'origin/feature/ui-build-version-messages' into bugfix/ui-release-version 2018-06-26 10:17:21 -04:00
Matt Keeler f32308b574 Make sure the release builds for the UI version to be consistent with the binary version. 2018-06-26 09:39:34 -04:00
John Cowen 1f978d860d Adds version messages both before and after the ui-v2 build
1. Prints the $version that you are passing through to the docker
container
2. Prints the CONSUL_VERSION that is used in the UI v2 footer
3. Additionally added a `mkdir -p` so so `make ui-docker` runs with a
clean exit if run in isolation
2018-06-26 10:33:22 +01:00
Matt Keeler b43a763c74 sed extended regex on linux sometimes requires -r 2018-06-25 10:19:02 -04:00
Matt Keeler 0a195fe88c Try a different way of doing x-platform in place sed 2018-06-25 10:01:43 -04:00
Matt Keeler 9862175481 Fix sed on linux 2018-06-22 17:21:42 -04:00
Matt Keeler 4e048162e0 Add override capability to blacklist a remote 2018-06-20 16:35:54 -04:00
Matt Keeler f35692daa6 Allow showing git diff interactively to inspect release commits. 2018-06-20 16:20:43 -04:00
Matt Keeler 3e8b7f3f38 Added more validation during publishing
We verify the git remote/url with whoever is running (in addition to other automated checks)
We also now run consul agent -dev, check is first 25 lines of output, consul info output and that consul leave works.
2018-06-20 15:39:09 -04:00
Matt Keeler aff1b93268 Update ui-v2 makefile to handle updating node_modules when needed
Also dont include the dist and node_modules folders in the build context.
2018-06-19 13:51:49 -04:00
Matt Keeler 21fcb45f36 PR Updates 2018-06-19 12:47:58 -04:00
Matt Keeler 90e74da6b7 Fix a couple find warnings on linux
Additionally add the ability to use go install for dev builds rather than gox (travis doesn’t have gox)
2018-06-19 10:49:07 -04:00
Matt Keeler 12d14f6c54 Allow for building pre-releases/rcs/betas 2018-06-18 17:06:38 -04:00
Matt Keeler 04ea404414 Fix gpg_key usage, also make the location of the binary to check the version of overridable 2018-06-18 13:42:46 -04:00
Matt Keeler fcd1811402 Don’t automatically populate release with dev when not generating a version based off git vars 2018-06-18 13:20:12 -04:00
Matt Keeler 46cfa577b0 Set the binary type 2018-06-18 13:09:41 -04:00
Matt Keeler b739bbfefe Fixup version release detection 2018-06-18 11:57:35 -04:00
Matt Keeler ca1a0619bd Refactor a little to accomodate overriding packaging using directories 2018-06-18 11:33:16 -04:00
Matt Keeler 82857b2121 Use CONSUL_PKG_NAME in package_release 2018-06-18 10:26:04 -04:00
Matt Keeler f74386d425 Fix a bug in parse_version that prevented using auxillary version files 2018-06-18 10:07:29 -04:00
Matt Keeler 4daf669136 Only remove builds with the same suffix 2018-06-18 09:57:12 -04:00
Matt Keeler ebe6ca167f Add notion of a consul pkg name to coexist with enterprise 2018-06-18 09:32:00 -04:00
Matt Keeler 2dc2e94f31 Make sure to commit all version*.go files 2018-06-18 09:22:31 -04:00
Matt Keeler 4c9db8c5d0 Update the name of a function source 2018-06-18 09:21:38 -04:00
Matt Keeler 4bbd20ddfa Dont override set but null vars 2018-06-18 09:16:08 -04:00
Matt Keeler 414829f68b Make some room for overrides of build system functions 2018-06-18 09:06:57 -04:00
Matt Keeler 3f290cc676 Generalize git pushing in a bash function 2018-06-15 20:42:07 -04:00
Matt Keeler 48910f7583 Update the scripting
Automated putting the source tree into release mode.
2018-06-14 21:42:47 -04:00
Matt Keeler 6282be9a93 Move some things around and add in consul version confirmation to publishing checks 2018-06-14 11:20:27 -04:00
Matt Keeler 56a7d15fbc Add more functionality related to verifying a build and publishing 2018-06-13 17:03:18 -04:00
Matt Keeler c90d7f5160 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