rake_plugins 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,3 @@
1
1
  module RakePlugins
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3" unless defined? RakePlugins::VERSION
3
3
  end
@@ -0,0 +1,64 @@
1
+ require 'yaml'
2
+
3
+ namespace :plugin do
4
+ desc "Install a plugin"
5
+ task :install, :source do |t, args|
6
+ name = File.basename(args.source).split('.').first
7
+ raise "Plugin could not be installed from #{args.source}" unless system "bundle exec rails plugin install #{args.source} -f"
8
+
9
+ installed_plugins = File.exist?("vendor/installed_plugins.yml") ?
10
+ File.open("vendor/installed_plugins.yml") { |f| YAML::load(f) } : {}
11
+ installed_plugins[name] = args.source
12
+ File.open('vendor/installed_plugins.yml', 'w') { |f| YAML.dump(installed_plugins, f) }
13
+
14
+ puts "Installed plugin #{name} from #{args.source}\n"
15
+ end
16
+
17
+ desc "Update an installed plugin"
18
+ task :update, :name do |t, args|
19
+ installed_plugins = File.exist?("vendor/installed_plugins.yml") ?
20
+ File.open("vendor/installed_plugins.yml") { |f| YAML::load(f) } : {}
21
+ raise "Plugin #{args.name} is not installed" unless installed_plugins.has_key?(args.name)
22
+ system "bundle exec rails plugin install #{installed_plugins[args.name]} -f"
23
+ puts "Updated plugin #{args.name} from #{installed_plugins[args.name]}\n"
24
+ end
25
+
26
+ desc "List installed plugins"
27
+ task :list do
28
+ installed_plugins = File.exist?("vendor/installed_plugins.yml") ?
29
+ File.open("vendor/installed_plugins.yml") { |f| YAML::load(f) } : {}
30
+ puts installed_plugins.any? ? "Installed plugins:\n\n" : "No plugins installed\n"
31
+ installed_plugins.each { |name, source| puts " * #{name} (#{source})\n" }
32
+
33
+ unmanaged_plugins = Dir["vendor/plugins/*"].map { |path| File.basename(path) } - installed_plugins.keys
34
+ puts "\nThe following plugins are not being managed: #{unmanaged_plugins.join(", ")}\n" if unmanaged_plugins.any?
35
+ end
36
+
37
+ desc "Update installed plugins"
38
+ task :update_all do
39
+ installed_plugins = File.exist?("vendor/installed_plugins.yml") ?
40
+ File.open("vendor/installed_plugins.yml") { |f| YAML::load(f) } : {}
41
+ puts "No plugins to update\n" if installed_plugins.empty?
42
+ installed_plugins.each do |name, source|
43
+ puts "Updating plugin #{name} from #{source}...\n"
44
+ system "bundle exec rails plugin install #{source} -f"
45
+ end
46
+
47
+ unmanaged_plugins = Dir["vendor/plugins/*"].map { |path| File.basename(path) } - installed_plugins.keys
48
+ puts "\nThe following plugins are not being managed: #{unmanaged_plugins.join(", ")}\n" if unmanaged_plugins.any?
49
+ end
50
+
51
+ desc "Remove installed plugin"
52
+ task :remove, :name do |t, args|
53
+ installed_plugins = File.exist?("vendor/installed_plugins.yml") ?
54
+ File.open("vendor/installed_plugins.yml") { |f| YAML::load(f) } : {}
55
+ raise "Plugin #{args.name} is not installed" unless installed_plugins.has_key?(args.name)
56
+ if system("bundle exec rails plugin remove #{args.name}")
57
+ installed_plugins.delete(args.name)
58
+ File.open('vendor/installed_plugins.yml', 'w') { |f| YAML.dump(installed_plugins, f) }
59
+ puts "Plugin #{args.name} removed\n"
60
+ else
61
+ "Plugin #{args.name} could not be removed\n"
62
+ end
63
+ end
64
+ end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake_plugins
3
3
  version: !ruby/object:Gem::Version
4
- hash: 31
4
+ hash: 29
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 2
10
- version: 0.1.2
9
+ - 3
10
+ version: 0.1.3
11
11
  platform: ruby
12
12
  authors:
13
13
  - Nick Ragaz
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-06-07 00:00:00 -04:00
18
+ date: 2010-06-11 00:00:00 -04:00
19
19
  default_executable:
20
20
  dependencies: []
21
21
 
@@ -31,6 +31,7 @@ extra_rdoc_files: []
31
31
  files:
32
32
  - lib/rake_plugins/version.rb
33
33
  - lib/rake_plugins.rb
34
+ - lib/tasks/plugins.rake
34
35
  - README.md
35
36
  has_rdoc: true
36
37
  homepage: http://github.com/nragaz/rake_plugins