From 65b551466bb6eaff933454279fdedfe1e2160b19 Mon Sep 17 00:00:00 2001 From: Abd ar-Rahman Hamidi Date: Sat, 6 Apr 2013 19:02:13 +0500 Subject: Automaticly add username and email if configured in git-scm, as bundle gem --- .../rails/generators/rails/plugin/plugin_generator.rb | 16 ++++++++++++++++ .../generators/rails/plugin/templates/%name%.gemspec | 4 ++-- .../rails/generators/rails/plugin/templates/MIT-LICENSE | 2 +- 3 files changed, 19 insertions(+), 3 deletions(-) (limited to 'railties/lib') diff --git a/railties/lib/rails/generators/rails/plugin/plugin_generator.rb b/railties/lib/rails/generators/rails/plugin/plugin_generator.rb index f6f529b80a..1b63d5faa0 100644 --- a/railties/lib/rails/generators/rails/plugin/plugin_generator.rb +++ b/railties/lib/rails/generators/rails/plugin/plugin_generator.rb @@ -304,6 +304,22 @@ task default: :test @camelized ||= name.gsub(/\W/, '_').squeeze('_').camelize end + def author + if @author.nil? + git_user_name = `git config user.name`.chomp + @author = git_user_name.empty? ? "TODO: Write your name" : git_user_name + end + @author + end + + def email + if @email.nil? + git_user_email = `git config user.email`.chomp + @email = git_user_email.empty? ? "TODO: Write your email address" : git_user_email + end + @email + end + def valid_const? if original_name =~ /[^0-9a-zA-Z_]+/ raise Error, "Invalid plugin name #{original_name}. Please give a name which use only alphabetic or numeric or \"_\" characters." diff --git a/railties/lib/rails/generators/rails/plugin/templates/%name%.gemspec b/railties/lib/rails/generators/rails/plugin/templates/%name%.gemspec index 5fdf0e1554..919c349470 100644 --- a/railties/lib/rails/generators/rails/plugin/templates/%name%.gemspec +++ b/railties/lib/rails/generators/rails/plugin/templates/%name%.gemspec @@ -7,8 +7,8 @@ require "<%= name %>/version" Gem::Specification.new do |s| s.name = "<%= name %>" s.version = <%= camelized %>::VERSION - s.authors = ["TODO: Your name"] - s.email = ["TODO: Your email"] + s.authors = ["<%= author %>"] + s.email = ["<%= email %>"] s.homepage = "TODO" s.summary = "TODO: Summary of <%= camelized %>." s.description = "TODO: Description of <%= camelized %>." diff --git a/railties/lib/rails/generators/rails/plugin/templates/MIT-LICENSE b/railties/lib/rails/generators/rails/plugin/templates/MIT-LICENSE index d7a9109894..ff2fb3ba4e 100644 --- a/railties/lib/rails/generators/rails/plugin/templates/MIT-LICENSE +++ b/railties/lib/rails/generators/rails/plugin/templates/MIT-LICENSE @@ -1,4 +1,4 @@ -Copyright <%= Date.today.year %> YOURNAME +Copyright <%= Date.today.year %> <%= author %> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the -- cgit v1.2.3 From e8c310edf6b69e5250a50e44e1605b495ae6ba03 Mon Sep 17 00:00:00 2001 From: Roman Shmatov Date: Fri, 12 Apr 2013 10:51:52 +0600 Subject: Works correctly if git not installed --- .../lib/rails/generators/rails/plugin/plugin_generator.rb | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'railties/lib') diff --git a/railties/lib/rails/generators/rails/plugin/plugin_generator.rb b/railties/lib/rails/generators/rails/plugin/plugin_generator.rb index 1b63d5faa0..3c44086e25 100644 --- a/railties/lib/rails/generators/rails/plugin/plugin_generator.rb +++ b/railties/lib/rails/generators/rails/plugin/plugin_generator.rb @@ -305,19 +305,17 @@ task default: :test end def author - if @author.nil? - git_user_name = `git config user.name`.chomp - @author = git_user_name.empty? ? "TODO: Write your name" : git_user_name + @author ||= begin + git_user_name = `git config user.name`.chomp rescue '' + git_user_name.blank? ? "TODO: Write your name" : git_user_name end - @author end def email - if @email.nil? - git_user_email = `git config user.email`.chomp - @email = git_user_email.empty? ? "TODO: Write your email address" : git_user_email + @email ||= begin + git_user_email = `git config user.email`.chomp rescue '' + git_user_email.blank? ? "TODO: Write your email address" : git_user_email end - @email end def valid_const? -- cgit v1.2.3 From c694c8e25cf55dfe26021d829c08729a6cddad87 Mon Sep 17 00:00:00 2001 From: Arun Agrawal Date: Fri, 2 May 2014 11:26:31 +0200 Subject: skip-git should not hit git commands plugin generators --- .../generators/rails/plugin/plugin_generator.rb | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) (limited to 'railties/lib') diff --git a/railties/lib/rails/generators/rails/plugin/plugin_generator.rb b/railties/lib/rails/generators/rails/plugin/plugin_generator.rb index 3c44086e25..584f776c01 100644 --- a/railties/lib/rails/generators/rails/plugin/plugin_generator.rb +++ b/railties/lib/rails/generators/rails/plugin/plugin_generator.rb @@ -288,6 +288,10 @@ task default: :test options[:mountable] end + def skip_git? + options[:skip_git] + end + def with_dummy_app? options[:skip_test_unit].blank? || options[:dummy_path] != 'test/dummy' end @@ -305,16 +309,20 @@ task default: :test end def author - @author ||= begin - git_user_name = `git config user.name`.chomp rescue '' - git_user_name.blank? ? "TODO: Write your name" : git_user_name + default = "TODO: Write your name" + if skip_git? + @author = default + else + @author = `git config user.name`.chomp rescue default end end def email - @email ||= begin - git_user_email = `git config user.email`.chomp rescue '' - git_user_email.blank? ? "TODO: Write your email address" : git_user_email + default = "TODO: Write your email address" + if skip_git? + @email = default + else + @email = `git config user.email`.chomp rescue default end end -- cgit v1.2.3