1 # Copyright (C) The Arvados Authors. All rights reserved.
3 # SPDX-License-Identifier: Apache-2.0
5 if not File.exist?('/usr/bin/git') then
6 STDERR.puts "\nGit binary not found, aborting. Please install git and run gem build from a checked out copy of the git repository.\n\n"
10 git_dir = ENV["GIT_DIR"]
11 git_work = ENV["GIT_WORK_TREE"]
13 ENV["GIT_DIR"] = File.expand_path "#{__dir__}/../../.git"
14 ENV["GIT_WORK_TREE"] = File.expand_path "#{__dir__}/../.."
15 git_timestamp, git_hash = `git log -n1 --first-parent --format=%ct:%H #{__dir__}`.chomp.split(":")
16 if ENV["ARVADOS_BUILDING_VERSION"]
17 version = ENV["ARVADOS_BUILDING_VERSION"]
19 version = `#{__dir__}/../../build/version-at-commit.sh #{git_hash}`.encode('utf-8').strip
21 git_timestamp = Time.at(git_timestamp.to_i).utc
23 ENV["GIT_DIR"] = git_dir
24 ENV["GIT_WORK_TREE"] = git_work
27 Gem::Specification.new do |s|
30 s.date = git_timestamp.strftime("%Y-%m-%d")
31 s.summary = "Arvados client library"
32 s.description = "Arvados client library, git commit #{git_hash}"
33 s.authors = ["Arvados Authors"]
34 s.email = 'gem-dev@curoverse.com'
35 s.licenses = ['Apache-2.0']
36 s.files = ["lib/arvados.rb", "lib/arvados/google_api_client.rb",
37 "lib/arvados/collection.rb", "lib/arvados/keep.rb",
38 "README", "LICENSE-2.0.txt"]
39 s.required_ruby_version = '>= 1.8.7'
40 s.add_dependency('activesupport', '>= 3')
41 s.add_dependency('andand', '~> 1.3', '>= 1.3.3')
42 # Our google-api-client dependency used to be < 0.9, but that could be
43 # satisfied by the buggy 0.9.pre*. https://dev.arvados.org/issues/9213
44 s.add_dependency('arvados-google-api-client', '>= 0.7', '< 0.8.9')
45 # work around undeclared dependency on i18n in some activesupport 3.x.x:
46 s.add_dependency('i18n', '~> 0')
47 s.add_dependency('json', '>= 1.7.7', '<3')
48 # arvados-google-api-client 0.8.7.2 is incompatible with faraday 0.16.2
49 s.add_dependency('faraday', '< 0.16')
50 s.add_runtime_dependency('jwt', '<2', '>= 0.1.5')