# encoding: ascii-8bit # Copyright 2022 Ball Aerospace & Technologies Corp. # All Rights Reserved. # # This program is free software; you can modify and/or redistribute it # under the terms of the GNU Affero General Public License # as published by the Free Software Foundation; version 3 with # attribution addendums as found in the LICENSE.txt # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # # This program may also be used under the terms of a commercial or # enterprise edition license of COSMOS if purchased from the # copyright holder PLUGIN_NAME = Dir['*.gemspec'][0].split('.')[0..-2].join('.') task :require_version do if ENV['VERSION'] if ENV['VERSION'] =~ /-/ # Add Timestamp to prerelease versions ENV['VERSION'] = ENV['VERSION'] + "." + Time.now.utc.strftime("%Y%m%d%H%M%S") end else puts "VERSION is required: rake VERSION=X.X.X" exit 1 end end task :build => [:require_version] do _, platform, *_ = RUBY_PLATFORM.split("-") if platform == 'mswin32' or platform == 'mingw32' puts "Warning: Building gem on Windows will lose file permissions" end # Build the widgets in the src directory system("yarn run build") system("gem build #{PLUGIN_NAME}") end