37 lines
993 B
Ruby
37 lines
993 B
Ruby
#!/usr/bin/env ruby
|
|
|
|
namespace :gem do
|
|
require_relative "../lib/builders"
|
|
root = File.realpath File.join(__dir__, "..", "..", "..")
|
|
version = File.binread(File.join(root, "VERSION")).chomp
|
|
|
|
desc "Build gemspec"
|
|
task :gemspec, [:version] do |t, args|
|
|
GemSpec.call(args.version || version)
|
|
end
|
|
|
|
desc "Copy files to stage directory"
|
|
task :copy, [:version] => [:gemspec] do |t, args|
|
|
Copy.call(args.version || version)
|
|
end
|
|
|
|
desc "Build gems"
|
|
task :build, [:version] => [:set_env, "nanoc:clean", "nanoc:build", :copy] do |t, args|
|
|
Build.call(args.version || version)
|
|
end
|
|
|
|
desc "Deploy gems"
|
|
task :deploy, [:version] => [:build] do |t, args|
|
|
Deploy.call(args.version || version)
|
|
end
|
|
|
|
task :set_env, [:version] => [:set_version] do |t,args|
|
|
ENV["buildenv"] ||= "production"
|
|
end
|
|
|
|
task :set_version, [:version] do |t,args|
|
|
next unless args.version
|
|
File.binwrite File.join(root, "VERSION"),
|
|
"#{args.version}\n"
|
|
end
|
|
end
|