diff --git a/.circleci/config.yml b/.circleci/config.yml index 0f889e21a9..85bfa3c6ae 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -92,7 +92,7 @@ jobs: - AUTO_INSTALL_TOOLS: 'YES' - BUILDKIT_PROGRESS: plain - PRODUCT_REVISION: '' - - PACKAGE_SPEC_ID: bf5ea00c6f4f9ca08f9e3462bf988de871b02df8 + - PACKAGE_SPEC_ID: e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2 steps: - setup_remote_docker: version: 19.03.12 @@ -104,7 +104,7 @@ jobs: command: make -C packages*.lock write-package-cache-key name: Write package cache key - restore_cache: - key: cache001-package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8-{{checksum ".buildcache/cache-keys/package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8"}} + key: cache001-package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2-{{checksum ".buildcache/cache-keys/package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2"}} - run: command: | if ! { PKG=$(find .buildcache/packages/store -maxdepth 1 -mindepth 1 -name '*.zip' 2> /dev/null) && [ -n "$PKG" ]; }; then @@ -138,7 +138,7 @@ jobs: - run: command: ls -lahR .buildcache/packages - save_cache: - key: cache001-package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8-{{checksum ".buildcache/cache-keys/package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8"}} + key: cache001-package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2-{{checksum ".buildcache/cache-keys/package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2"}} paths: - .buildcache/packages/store linux_amd64_package: @@ -149,7 +149,7 @@ jobs: - AUTO_INSTALL_TOOLS: 'YES' - BUILDKIT_PROGRESS: plain - PRODUCT_REVISION: '' - - PACKAGE_SPEC_ID: 42855ae063b178c24cc6bacf667ef017b3f9c8f0 + - PACKAGE_SPEC_ID: 7655ed418439b6899d17af07f4b46c44b0f7ab65 steps: - setup_remote_docker: version: 19.03.12 @@ -161,7 +161,7 @@ jobs: command: make -C packages*.lock write-package-cache-key name: Write package cache key - restore_cache: - key: cache001-package-42855ae063b178c24cc6bacf667ef017b3f9c8f0-{{checksum ".buildcache/cache-keys/package-42855ae063b178c24cc6bacf667ef017b3f9c8f0"}} + key: cache001-package-7655ed418439b6899d17af07f4b46c44b0f7ab65-{{checksum ".buildcache/cache-keys/package-7655ed418439b6899d17af07f4b46c44b0f7ab65"}} - run: command: | if ! { PKG=$(find .buildcache/packages/store -maxdepth 1 -mindepth 1 -name '*.zip' 2> /dev/null) && [ -n "$PKG" ]; }; then @@ -195,7 +195,7 @@ jobs: - run: command: ls -lahR .buildcache/packages - save_cache: - key: cache001-package-42855ae063b178c24cc6bacf667ef017b3f9c8f0-{{checksum ".buildcache/cache-keys/package-42855ae063b178c24cc6bacf667ef017b3f9c8f0"}} + key: cache001-package-7655ed418439b6899d17af07f4b46c44b0f7ab65-{{checksum ".buildcache/cache-keys/package-7655ed418439b6899d17af07f4b46c44b0f7ab65"}} paths: - .buildcache/packages/store bundle-releases: @@ -208,20 +208,20 @@ jobs: command: make -C packages*.lock write-all-package-cache-keys name: Write package cache key - restore_cache: - key: cache001-package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8-{{checksum ".buildcache/cache-keys/package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8"}} + key: cache001-package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2-{{checksum ".buildcache/cache-keys/package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2"}} - run: command: | make package-meta environment: - PACKAGE_SPEC_ID: bf5ea00c6f4f9ca08f9e3462bf988de871b02df8 + PACKAGE_SPEC_ID: e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2 name: Write package metadata for darwin_amd64_package - restore_cache: - key: cache001-package-42855ae063b178c24cc6bacf667ef017b3f9c8f0-{{checksum ".buildcache/cache-keys/package-42855ae063b178c24cc6bacf667ef017b3f9c8f0"}} + key: cache001-package-7655ed418439b6899d17af07f4b46c44b0f7ab65-{{checksum ".buildcache/cache-keys/package-7655ed418439b6899d17af07f4b46c44b0f7ab65"}} - run: command: | make package-meta environment: - PACKAGE_SPEC_ID: 42855ae063b178c24cc6bacf667ef017b3f9c8f0 + PACKAGE_SPEC_ID: 7655ed418439b6899d17af07f4b46c44b0f7ab65 name: Write package metadata for linux_amd64_package - run: command: make aliases diff --git a/.circleci/config/@build-release.yml b/.circleci/config/@build-release.yml index 2deb6e7acc..ad59363cc9 100644 --- a/.circleci/config/@build-release.yml +++ b/.circleci/config/@build-release.yml @@ -101,7 +101,7 @@ jobs: darwin_amd64_package: executor: builder environment: - - PACKAGE_SPEC_ID: bf5ea00c6f4f9ca08f9e3462bf988de871b02df8 + - PACKAGE_SPEC_ID: e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2 steps: - setup_remote_docker: @@ -116,7 +116,7 @@ jobs: # Restore the package cache first, we might not need to rebuild. - write-package-cache-key - restore_cache: - key: 'cache001-package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8-{{checksum ".buildcache/cache-keys/package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8"}}' + key: 'cache001-package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2-{{checksum ".buildcache/cache-keys/package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2"}}' - run: name: Check the cache status. command: | @@ -152,7 +152,7 @@ jobs: - run: ls -lahR .buildcache/packages # Save package cache. - save_cache: - key: 'cache001-package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8-{{checksum ".buildcache/cache-keys/package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8"}}' + key: 'cache001-package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2-{{checksum ".buildcache/cache-keys/package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2"}}' paths: - .buildcache/packages/store # Save builder image cache if necessary. @@ -161,7 +161,7 @@ jobs: linux_amd64_package: executor: builder environment: - - PACKAGE_SPEC_ID: 42855ae063b178c24cc6bacf667ef017b3f9c8f0 + - PACKAGE_SPEC_ID: 7655ed418439b6899d17af07f4b46c44b0f7ab65 steps: - setup_remote_docker: @@ -176,7 +176,7 @@ jobs: # Restore the package cache first, we might not need to rebuild. - write-package-cache-key - restore_cache: - key: 'cache001-package-42855ae063b178c24cc6bacf667ef017b3f9c8f0-{{checksum ".buildcache/cache-keys/package-42855ae063b178c24cc6bacf667ef017b3f9c8f0"}}' + key: 'cache001-package-7655ed418439b6899d17af07f4b46c44b0f7ab65-{{checksum ".buildcache/cache-keys/package-7655ed418439b6899d17af07f4b46c44b0f7ab65"}}' - run: name: Check the cache status. command: | @@ -212,7 +212,7 @@ jobs: - run: ls -lahR .buildcache/packages # Save package cache. - save_cache: - key: 'cache001-package-42855ae063b178c24cc6bacf667ef017b3f9c8f0-{{checksum ".buildcache/cache-keys/package-42855ae063b178c24cc6bacf667ef017b3f9c8f0"}}' + key: 'cache001-package-7655ed418439b6899d17af07f4b46c44b0f7ab65-{{checksum ".buildcache/cache-keys/package-7655ed418439b6899d17af07f4b46c44b0f7ab65"}}' paths: - .buildcache/packages/store # Save builder image cache if necessary. @@ -227,14 +227,14 @@ jobs: - load-darwin_amd64_package - run: environment: - PACKAGE_SPEC_ID: bf5ea00c6f4f9ca08f9e3462bf988de871b02df8 + PACKAGE_SPEC_ID: e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2 name: Write package metadata for darwin_amd64_package command: | make package-meta - load-linux_amd64_package - run: environment: - PACKAGE_SPEC_ID: 42855ae063b178c24cc6bacf667ef017b3f9c8f0 + PACKAGE_SPEC_ID: 7655ed418439b6899d17af07f4b46c44b0f7ab65 name: Write package metadata for linux_amd64_package command: | make package-meta @@ -276,12 +276,12 @@ commands: load-darwin_amd64_package: steps: - restore_cache: - key: 'cache001-package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8-{{checksum ".buildcache/cache-keys/package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8"}}' + key: 'cache001-package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2-{{checksum ".buildcache/cache-keys/package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2"}}' load-linux_amd64_package: steps: - restore_cache: - key: 'cache001-package-42855ae063b178c24cc6bacf667ef017b3f9c8f0-{{checksum ".buildcache/cache-keys/package-42855ae063b178c24cc6bacf667ef017b3f9c8f0"}}' + key: 'cache001-package-7655ed418439b6899d17af07f4b46c44b0f7ab65-{{checksum ".buildcache/cache-keys/package-7655ed418439b6899d17af07f4b46c44b0f7ab65"}}' write-build-layer-cache-keys: diff --git a/packages-oss.lock/pkgs.yml b/packages-oss.lock/pkgs.yml index 3e0e458c7c..4cd4a7af7b 100644 --- a/packages-oss.lock/pkgs.yml +++ b/packages-oss.lock/pkgs.yml @@ -1,11 +1,11 @@ # *** # WARNING: Do not EDIT or MERGE this file, it is generated by packagespec. # *** -lockid: bd89571ffc46985e +lockid: 50c4be9d77f1cca4 packagespec-version: 0.1.3 cache-version: 8 packages: -- packagespecid: bf5ea00c6f4f9ca08f9e3462bf988de871b02df8 +- packagespecid: e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2 inputs: BINARY_NAME: boundary BUILD_TAGS: ui @@ -14,6 +14,8 @@ packages: GOOS: darwin PRODUCT_NAME: boundary PRODUCT_VERSION: 0.0.1 + PRODUCT_VERSION_MMP: 0.0.1 + PRODUCT_VERSION_PRE: '"''''"' meta: BUILD_JOB_NAME: darwin_amd64_package BUNDLE_NAME: boundary_0.0.1 @@ -29,24 +31,24 @@ packages: - type: install-deps name: 00-install-deps-96bbfeaab51d40cfb3c45afc0035516c11d6d737 archive: .buildcache/archives/00-install-deps-96bbfeaab51d40cfb3c45afc0035516c11d6d737.tar.gz - PACKAGE_CACHE_KEY_FILE: .buildcache/cache-keys/package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8 + PACKAGE_CACHE_KEY_FILE: .buildcache/cache-keys/package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2 circleci: BUILDER_CACHE_KEY_PREFIX_LIST: - copy-source_cb2d_{{checksum ".buildcache/cache-keys/copy-source-cb2d5919f5b68088a1068bd1bc610eb63dc06def"}} - download-modules_eb80_{{checksum ".buildcache/cache-keys/download-modules-eb80c020d26fa5a44b8e8bf9cc6a41d328e82f4c"}} - install-deps_96bb_{{checksum ".buildcache/cache-keys/install-deps-96bbfeaab51d40cfb3c45afc0035516c11d6d737"}} - PACKAGE_CACHE_KEY: package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8-{{checksum - ".buildcache/cache-keys/package-bf5ea00c6f4f9ca08f9e3462bf988de871b02df8"}} - build-command: VERSION_PKG_PATH=github.com/hashicorp/boundary; unset GOPATH; go - build -v -ldflags "-X $VERSION_PKG_PATH.Revision=$PACKAGE_SOURCE_ID -X $VERSION_PKG_PATH.Version=0.0.1" - -o $OUTPUT_DIR/boundary ./cmd/boundary && cd $OUTPUT_DIR && zip $PACKAGE_ZIP_NAME - boundary + PACKAGE_CACHE_KEY: package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2-{{checksum + ".buildcache/cache-keys/package-e1993a64411c7d5bfae5a3c3eeb15aeda6822ea2"}} + build-command: VERSION_PKG_PATH=github.com/hashicorp/boundary/version; unset GOPATH; + go build -v -ldflags "-X $VERSION_PKG_PATH.GitCommit=$PACKAGE_SOURCE_ID -X $VERSION_PKG_PATH.Version=0.0.1 + -X $VERSION_PKG_PATH.VersionPrerelease="''"" -o $OUTPUT_DIR/boundary ./cmd/boundary + && cd $OUTPUT_DIR && zip $PACKAGE_ZIP_NAME boundary aliases: - type: local path: boundary_0.0.1_darwin_amd64.zip - type: public-hc-releases path: boundary/boundary_0.0.1/boundary_0.0.1_darwin_amd64.zip -- packagespecid: 42855ae063b178c24cc6bacf667ef017b3f9c8f0 +- packagespecid: 7655ed418439b6899d17af07f4b46c44b0f7ab65 inputs: BINARY_NAME: boundary BUILD_TAGS: ui @@ -55,6 +57,8 @@ packages: GOOS: linux PRODUCT_NAME: boundary PRODUCT_VERSION: 0.0.1 + PRODUCT_VERSION_MMP: 0.0.1 + PRODUCT_VERSION_PRE: '"''''"' meta: BUILD_JOB_NAME: linux_amd64_package BUNDLE_NAME: boundary_0.0.1 @@ -70,18 +74,18 @@ packages: - type: install-deps name: 00-install-deps-96bbfeaab51d40cfb3c45afc0035516c11d6d737 archive: .buildcache/archives/00-install-deps-96bbfeaab51d40cfb3c45afc0035516c11d6d737.tar.gz - PACKAGE_CACHE_KEY_FILE: .buildcache/cache-keys/package-42855ae063b178c24cc6bacf667ef017b3f9c8f0 + PACKAGE_CACHE_KEY_FILE: .buildcache/cache-keys/package-7655ed418439b6899d17af07f4b46c44b0f7ab65 circleci: BUILDER_CACHE_KEY_PREFIX_LIST: - copy-source_cb2d_{{checksum ".buildcache/cache-keys/copy-source-cb2d5919f5b68088a1068bd1bc610eb63dc06def"}} - download-modules_eb80_{{checksum ".buildcache/cache-keys/download-modules-eb80c020d26fa5a44b8e8bf9cc6a41d328e82f4c"}} - install-deps_96bb_{{checksum ".buildcache/cache-keys/install-deps-96bbfeaab51d40cfb3c45afc0035516c11d6d737"}} - PACKAGE_CACHE_KEY: package-42855ae063b178c24cc6bacf667ef017b3f9c8f0-{{checksum - ".buildcache/cache-keys/package-42855ae063b178c24cc6bacf667ef017b3f9c8f0"}} - build-command: VERSION_PKG_PATH=github.com/hashicorp/boundary; unset GOPATH; go - build -v -ldflags "-X $VERSION_PKG_PATH.Revision=$PACKAGE_SOURCE_ID -X $VERSION_PKG_PATH.Version=0.0.1" - -o $OUTPUT_DIR/boundary ./cmd/boundary && cd $OUTPUT_DIR && zip $PACKAGE_ZIP_NAME - boundary + PACKAGE_CACHE_KEY: package-7655ed418439b6899d17af07f4b46c44b0f7ab65-{{checksum + ".buildcache/cache-keys/package-7655ed418439b6899d17af07f4b46c44b0f7ab65"}} + build-command: VERSION_PKG_PATH=github.com/hashicorp/boundary/version; unset GOPATH; + go build -v -ldflags "-X $VERSION_PKG_PATH.GitCommit=$PACKAGE_SOURCE_ID -X $VERSION_PKG_PATH.Version=0.0.1 + -X $VERSION_PKG_PATH.VersionPrerelease="''"" -o $OUTPUT_DIR/boundary ./cmd/boundary + && cd $OUTPUT_DIR && zip $PACKAGE_ZIP_NAME boundary aliases: - type: local path: boundary_0.0.1_linux_amd64.zip diff --git a/packages-oss.yml b/packages-oss.yml index 5814883ea1..d4e9a9d086 100644 --- a/packages-oss.yml +++ b/packages-oss.yml @@ -12,9 +12,17 @@ inputs: PRODUCT_VERSION: 0.0.1 BUILD_TAGS: ui CGO_ENABLED: 0 + templates: + BINARY_NAME: '{{.PRODUCT_NAME}}{{if eq .GOOS "windows"}}.exe{{end}}' + PRODUCT_VERSION_MMP: >- + {{with .PRODUCT_VERSION | strings.SplitN "-" 2}}{{index . 0}}{{end}} + + PRODUCT_VERSION_PRE: >- + {{with .PRODUCT_VERSION | strings.SplitN "-" 2}}{{if gt (len .) 1}}{{index . 1}}{{else}}"''"{{end}}{{end}} + packages: - inputs: { GOOS: darwin, GOARCH: amd64 } - inputs: { GOOS: linux, GOARCH: amd64 } @@ -58,11 +66,12 @@ layers: - name: copy-source source-include: "*.go" -build-command: VERSION_PKG_PATH=github.com/hashicorp/boundary; +build-command: VERSION_PKG_PATH=github.com/hashicorp/boundary/version; unset GOPATH; go build -v - -ldflags "-X $VERSION_PKG_PATH.Revision=$PACKAGE_SOURCE_ID - -X $VERSION_PKG_PATH.Version={{.PRODUCT_VERSION}}" + -ldflags "-X $VERSION_PKG_PATH.GitCommit=$PACKAGE_SOURCE_ID + -X $VERSION_PKG_PATH.Version={{.PRODUCT_VERSION_MMP}} + -X $VERSION_PKG_PATH.VersionPrerelease={{.PRODUCT_VERSION_PRE}}" -o $OUTPUT_DIR/{{.BINARY_NAME}} ./cmd/boundary && cd $OUTPUT_DIR && zip $PACKAGE_ZIP_NAME {{.BINARY_NAME}} diff --git a/version/version_base.go b/version/version_base.go index bf604481f0..dd0c9b221c 100644 --- a/version/version_base.go +++ b/version/version_base.go @@ -8,7 +8,11 @@ var ( // Whether cgo is enabled or not; set at build time CgoEnabled bool - Version = "0.0.1" + // Version is set at compile time when using 'make build' or building in CI. + Version = "0.0.1" + + // VersionPrerelease is also set at compile time, similarly to Version. VersionPrerelease = "" - VersionMetadata = "" + + VersionMetadata = "" )