From 0503f58f3f9b78bd803d4fd7544ced9d79e26f1c Mon Sep 17 00:00:00 2001 From: Peter Amstutz Date: Tue, 14 Jan 2020 15:26:20 -0500 Subject: [PATCH] Gemspec sets GIT_DIR and GIT_WORK_TREE to ensure correct gem version refs #16010 Arvados-DCO-1.1-Signed-off-by: Peter Amstutz --- sdk/cli/arvados-cli.gemspec | 15 ++++++++++++--- sdk/ruby/arvados.gemspec | 15 ++++++++++++--- services/login-sync/Gemfile.lock | 3 ++- services/login-sync/arvados-login-sync.gemspec | 17 +++++++++++++---- 4 files changed, 39 insertions(+), 11 deletions(-) diff --git a/sdk/cli/arvados-cli.gemspec b/sdk/cli/arvados-cli.gemspec index 749797cf84..3db613c292 100644 --- a/sdk/cli/arvados-cli.gemspec +++ b/sdk/cli/arvados-cli.gemspec @@ -7,9 +7,18 @@ if not File.exist?('/usr/bin/git') then exit end -version = `#{__dir__}/../../build/version-at-commit.sh HEAD`.encode('utf-8').strip -git_timestamp, git_hash = `git log -n1 --first-parent --format=%ct:%H .`.chomp.split(":") -git_timestamp = Time.at(git_timestamp.to_i).utc +git_dir = ENV["GIT_DIR"] +git_work = ENV["GIT_WORK_TREE"] +begin + ENV["GIT_DIR"] = File.expand_path "#{__dir__}/../../.git" + ENV["GIT_WORK_TREE"] = File.expand_path "#{__dir__}/../.." + git_timestamp, git_hash = `git log -n1 --first-parent --format=%ct:%H #{__dir__}`.chomp.split(":") + version = `#{__dir__}/../../build/version-at-commit.sh #{git_hash}`.encode('utf-8').strip + git_timestamp = Time.at(git_timestamp.to_i).utc +ensure + ENV["GIT_DIR"] = git_dir + ENV["GIT_WORK_TREE"] = git_work +end Gem::Specification.new do |s| s.name = 'arvados-cli' diff --git a/sdk/ruby/arvados.gemspec b/sdk/ruby/arvados.gemspec index 9f314e6c9c..9a24414bb8 100644 --- a/sdk/ruby/arvados.gemspec +++ b/sdk/ruby/arvados.gemspec @@ -7,9 +7,18 @@ if not File.exist?('/usr/bin/git') then exit end -version = `#{__dir__}/../../build/version-at-commit.sh HEAD`.encode('utf-8').strip -git_timestamp, git_hash = `git log -n1 --first-parent --format=%ct:%H .`.chomp.split(":") -git_timestamp = Time.at(git_timestamp.to_i).utc +git_dir = ENV["GIT_DIR"] +git_work = ENV["GIT_WORK_TREE"] +begin + ENV["GIT_DIR"] = File.expand_path "#{__dir__}/../../.git" + ENV["GIT_WORK_TREE"] = File.expand_path "#{__dir__}/../.." + git_timestamp, git_hash = `git log -n1 --first-parent --format=%ct:%H #{__dir__}`.chomp.split(":") + version = `#{__dir__}/../../build/version-at-commit.sh #{git_hash}`.encode('utf-8').strip + git_timestamp = Time.at(git_timestamp.to_i).utc +ensure + ENV["GIT_DIR"] = git_dir + ENV["GIT_WORK_TREE"] = git_work +end Gem::Specification.new do |s| s.name = 'arvados' diff --git a/services/login-sync/Gemfile.lock b/services/login-sync/Gemfile.lock index 1d89604ae1..ce648a2fc9 100644 --- a/services/login-sync/Gemfile.lock +++ b/services/login-sync/Gemfile.lock @@ -1,9 +1,10 @@ PATH remote: . specs: - arvados-login-sync (1.3.1.pre20191210204053) + arvados-login-sync (1.5.0.pre20191230153247) arvados (~> 1.3.0, >= 1.3.0) faraday (< 0.16) + signet (< 0.12) GEM remote: https://rubygems.org/ diff --git a/services/login-sync/arvados-login-sync.gemspec b/services/login-sync/arvados-login-sync.gemspec index f6485d695f..2a91eed71c 100644 --- a/services/login-sync/arvados-login-sync.gemspec +++ b/services/login-sync/arvados-login-sync.gemspec @@ -7,9 +7,18 @@ if not File.exist?('/usr/bin/git') then exit end -version = `#{__dir__}/../../build/version-at-commit.sh HEAD`.encode('utf-8').strip -git_timestamp, git_hash = `git log -n1 --first-parent --format=%ct:%H .`.chomp.split(":") -git_timestamp = Time.at(git_timestamp.to_i).utc +git_dir = ENV["GIT_DIR"] +git_work = ENV["GIT_WORK_TREE"] +begin + ENV["GIT_DIR"] = File.expand_path "#{__dir__}/../../.git" + ENV["GIT_WORK_TREE"] = File.expand_path "#{__dir__}/../.." + git_timestamp, git_hash = `git log -n1 --first-parent --format=%ct:%H #{__dir__}`.chomp.split(":") + version = `#{__dir__}/../../build/version-at-commit.sh #{git_hash}`.encode('utf-8').strip + git_timestamp = Time.at(git_timestamp.to_i).utc +ensure + ENV["GIT_DIR"] = git_dir + ENV["GIT_WORK_TREE"] = git_work +end Gem::Specification.new do |s| s.name = 'arvados-login-sync' @@ -19,7 +28,7 @@ Gem::Specification.new do |s| s.description = "Creates and updates local login accounts for Arvados users. Built from git commit #{git_hash}" s.authors = ["Arvados Authors"] s.email = 'gem-dev@curoverse.com' - s.licenses = ['GNU Affero General Public License, version 3.0'] + s.licenses = ['AGPL-3.0'] s.files = ["bin/arvados-login-sync", "agpl-3.0.txt"] s.executables << "arvados-login-sync" s.required_ruby_version = '>= 2.1.0' -- 2.30.2