Sha256: 0356feb2daefd11aca22a32ab21e27cdfd47e874812ba754b539d76296ad2d73

Contents?: true

Size: 776 Bytes

Versions: 28

Compression:

Stored size: 776 Bytes

Contents

#!/usr/bin/env ruby
# frozen_string_literal: true

require 'fileutils'

def safe_system(*cmd)
  exit 1 unless system(*cmd)
end

api_key = ENV['RUBYGEMS_API_KEY'] || 'dummy'
gemspec_files = Dir.glob('*.gemspec')
credentials_dir_path = "#{Dir.home}/.gem"
credentials_file_path = "#{credentials_dir_path}/credentials"
credentials = <<~END_OF_CREDENTIALS
  ---
  :rubygems_api_key: #{api_key}
END_OF_CREDENTIALS

FileUtils.mkdir_p(credentials_dir_path)
File.open(credentials_file_path, 'w') { |f| f.write(credentials) }
FileUtils.chmod(0o600, credentials_file_path)

gemspec_files.each do |gemspec_file|
  gemspec = Gem::Specification.load(gemspec_file)
  gem_file = gemspec.full_name + '.gem'
  safe_system('gem', 'build', gemspec_file)
  safe_system('gem', 'push', gem_file)
end

Version data entries

28 entries across 28 versions & 2 rubygems

Version Path
pier_console_detective-0.3.0 bin/publish_gem.rb
pier_logging-0.4.3 bin/publish_gem.rb
pier_logging-0.4.2 bin/publish_gem.rb
pier_logging-0.4.1 bin/publish_gem.rb
pier_logging-0.3.3 bin/publish_gem.rb
pier_logging-0.3.2 bin/publish_gem.rb
pier_logging-0.3.1 bin/publish_gem.rb
pier_logging-0.3.0 bin/publish_gem.rb
pier_logging-0.2.5 bin/publish_gem.rb
pier_logging-0.2.4 bin/publish_gem.rb
pier_logging-0.2.3 bin/publish_gem.rb
pier_logging-0.2.2 bin/publish_gem.rb
pier_logging-0.2.1 bin/publish_gem.rb
pier_logging-0.2.0 bin/publish_gem.rb
pier_logging-0.1.15 bin/publish_gem.rb
pier_logging-0.1.14 bin/publish_gem.rb
pier_logging-0.1.13 bin/publish_gem.rb
pier_logging-0.1.12 bin/publish_gem.rb
pier_logging-0.1.11 bin/publish_gem.rb
pier_logging-0.1.10 bin/publish_gem.rb