wpplugin 0.1 → 0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/wpplugin.rb +23 -4
  2. metadata +5 -5
@@ -22,7 +22,7 @@ require 'pathname'
22
22
 
23
23
  class WPPlugin
24
24
 
25
- VERSION = '0.1'
25
+ VERSION = '0.2'
26
26
 
27
27
  def initialize
28
28
  command = ARGV.shift
@@ -41,7 +41,7 @@ class WPPlugin
41
41
  info
42
42
  when nil, :"--help", :"-h"
43
43
  exit_message "Usage: wpplugin update\n wpplugin [update|add|remove] {plugin-slug}"
44
- when :add, :remove
44
+ when :add, :remove, :install, :delete, :uninstall
45
45
  exit_error_message "You must provide a plugin slug" if plugin.nil?
46
46
  send command, plugin
47
47
  when :update, :upgrade
@@ -56,8 +56,9 @@ class WPPlugin
56
56
  end
57
57
 
58
58
  def update plugin
59
- remove plugin
59
+ remove_files plugin
60
60
  add plugin
61
+ `svn status #{plugin} 2>/dev/null | grep '\!' | awk '{print $2;}' | xargs svn rm`
61
62
  end
62
63
 
63
64
  def update_all
@@ -67,16 +68,34 @@ class WPPlugin
67
68
  end
68
69
 
69
70
  def add plugin
71
+ # If the directory exists, do an update instead
72
+ if File.directory? plugin
73
+ update plugin
74
+ return
75
+ end
70
76
  uri = "http://downloads.wordpress.org/plugin/#{plugin}.latest-stable.zip"
71
77
  `wget -O #{plugin}.zip #{uri} > /dev/null 2>&1`
72
78
  `unzip #{plugin}.zip > /dev/null 2>&1`
73
79
  `rm #{plugin}.zip > /dev/null 2>&1`
80
+ `svn add --force #{plugin} > /dev/null 2>&1`
81
+ `git add --all #{plugin} > /dev/null 2>&1`
74
82
  end
75
83
 
76
- def remove plugin
84
+ alias :install :add
85
+
86
+ def remove_files plugin
77
87
  FileUtils.rm_rf plugin if File.directory? plugin
78
88
  end
79
89
 
90
+ def remove plugin
91
+ remove_files plugin
92
+ `svn rm #{plugin} > /dev/null 2>&1`
93
+ `git rm -r #{plugin} > /dev/null 2>&1`
94
+ end
95
+
96
+ alias :delete :remove
97
+ alias :uninstall :remove
98
+
80
99
  def info
81
100
  puts "WPPlugin #{self.class::VERSION}"
82
101
  end
metadata CHANGED
@@ -1,12 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wpplugin
3
3
  version: !ruby/object:Gem::Version
4
- hash: 9
4
+ hash: 15
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
- - 1
9
- version: "0.1"
8
+ - 2
9
+ version: "0.2"
10
10
  platform: ruby
11
11
  authors:
12
12
  - Mark Jaquith
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2012-01-12 00:00:00 Z
17
+ date: 2012-09-17 00:00:00 Z
18
18
  dependencies: []
19
19
 
20
20
  description: WPPlugin is a command line tool that updates WordPress plugins. Great for WordPress installs that live in a Git repository.
@@ -62,7 +62,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
62
62
  requirements: []
63
63
 
64
64
  rubyforge_project:
65
- rubygems_version: 1.8.15
65
+ rubygems_version: 1.8.24
66
66
  signing_key:
67
67
  specification_version: 3
68
68
  summary: Command line tool for updating WordPress plugins