visionmedia-drupal 0.0.3 → 0.0.4

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.
data/History.txt CHANGED
@@ -1,3 +1,9 @@
1
+ === 0.0.4 / 2008-10-03
2
+
3
+ * 1 Major Feature:
4
+
5
+ * Installer allows lists of projects 'err,ac,devel'
6
+
1
7
  === 0.0.3 / 2008-10-03
2
8
 
3
9
  * 1 Major Feature:
data/README.txt CHANGED
@@ -46,11 +46,13 @@ to quickly generate and manage Drupal modules.
46
46
  == TODO:
47
47
 
48
48
  * Add formatted help option
49
- * Add download of Drupal core install via 'install core [version]'
50
49
  * Support versions for installer
51
50
  * Support version prompt for project installation
51
+ * Support installing a list from file(s) so that devs may have lists of core modules they use
52
+ * Add installer for jQuery plugins?
52
53
  * Add graceful error handling
53
54
  * Add tests
55
+ * Refactor / encapsulate entire project
54
56
 
55
57
  == AUTHOR:
56
58
 
data/Rakefile CHANGED
@@ -13,4 +13,9 @@ desc 'Remove ruby gem build data.'
13
13
  task :remove do
14
14
  sh "sudo gem uninstall drupal"
15
15
  sh "sudo rm drupal-#{Drupal::VERSION}.gem"
16
+ end
17
+
18
+ desc 'Run tests.'
19
+ task :test do
20
+ sh "ruby " + File.dirname(__FILE__) + '/test/test_drupal.rb' + ' -r tk'
16
21
  end
data/drupal.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "drupal"
3
- s.version = "0.0.3"
3
+ s.version = "0.0.4"
4
4
  s.date = "2008-10-03"
5
5
  s.summary = "Drupal development kit"
6
6
  s.email = "tj@vision-media.ca"
@@ -33,7 +33,7 @@ Gem::Specification.new do |s|
33
33
  "lib/drupal/templates/txt/readme",
34
34
  "bin/drupal"]
35
35
  s.executables = ["drupal"]
36
- s.test_files = ["test/test_drupal.rb"]
36
+ s.test_files = ["test/test_drupal.rb", "test/test_install.rb", "test/test_create_module.rb", "test/test_todo_list.rb"]
37
37
  s.rdoc_options = ["--main", "README.txt"]
38
38
  s.extra_rdoc_files = ["History.txt", "Manifest.txt", "README.txt"]
39
39
  end
@@ -8,17 +8,32 @@ class Drupal
8
8
  # Attempt to download core installation or module.
9
9
  def run(arguments)
10
10
  @project = arguments[0]
11
- @dest = arguments[1] || '.' # TODO: strip leading /
11
+ @dest = arguments[1] || '.'
12
12
  abort "Destination #{@dest} is not a directory." unless File.directory?(@dest)
13
13
  abort 'Project name required (core | <project>).' if arguments.empty?
14
- check_core
15
- install_project
14
+ install_projects
16
15
  end
17
16
 
18
17
  def debug(message)
19
18
  puts '... ' + message
20
19
  end
21
20
 
21
+ # Install single project or iterate lists.
22
+ def install_projects
23
+ if @project.include? ','
24
+ projects = @project.split ','
25
+ projects.each do |p|
26
+ @project = p
27
+ check_core
28
+ install_project
29
+ puts
30
+ end
31
+ else
32
+ check_core
33
+ install_project
34
+ end
35
+ end
36
+
22
37
  # Check if the destination is empty.
23
38
  def destination_empty?
24
39
  Dir['*'].length == 0
@@ -60,14 +75,14 @@ class Drupal
60
75
  end
61
76
  debug "Copied tarball to #{@tarpath}"
62
77
  rescue
63
- abort "Failed to find #{@tarpath}"
78
+ abort "Failed to copy remote tarball #{@tarball}"
64
79
  end
65
80
 
66
81
  # Extract tarball
67
- @pwd = File.dirname(__FILE__)
68
- Dir.chdir File.dirname(@tarpath)
82
+ @pwd = Dir.getwd
83
+ Dir.chdir File.dirname(@tarpath) and debug "Changed cwd to #{File.dirname(@tarpath)}" unless @dest == '.'
69
84
  Kernel.system "tar -xf #{@tarpath}" rescue abort "Failed to extract #{@tarpath}"
70
- Dir.chdir @pwd
85
+ Dir.chdir @pwd and debug "Reverted cwd back to #{@pwd}" unless @dest == '.'
71
86
 
72
87
  # Remove tarball
73
88
  Kernel.system "rm #{@tarpath}" rescue abort "Failed to remove #{@tarpath}"
data/lib/drupal.rb CHANGED
@@ -6,9 +6,9 @@
6
6
  #
7
7
  # == ARGUMENTS:
8
8
  #
9
- # create module <module_name> [dir] Generates a module skeleton from an interactive wizard. Current directory unless [dir] is specified.
10
- # todo list [total] Displays list of todo items or a total.
11
- # install <core | project> [dir] Install a Drupal project or core itself to [dir]
9
+ # create module <module_name> [dir] Generates a module skeleton from an interactive wizard. Current directory unless [dir] is specified.
10
+ # todo list [total] Displays list of todo items or a total.
11
+ # install <core | project ...> [dir] Install Drupal project(s) to [dir] or the current directory.
12
12
  #
13
13
  # == OPTIONS:
14
14
  #
@@ -31,11 +31,15 @@
31
31
  #
32
32
  # View total todo items only.
33
33
  # drupal todo list total ./sites/all/modules
34
- # Install a module to the modules folder in my new installation (from drupal root)
35
- # drupal install devel ./sites/all/modules
34
+ #
35
+ # Install a module to the modules folder in my new installation (from drupal root)
36
+ # drupal install devel ./sites/all/modules
36
37
  #
37
- # Install a module when in the 'modules directory
38
- # drupal install devel
38
+ # Install a module when in the 'modules directory
39
+ # drupal install devel
40
+ #
41
+ # Install several modules to the modules folder
42
+ # drupal install devel,pathauto,err,ac ./sites/all/modules
39
43
  #
40
44
 
41
45
  require 'optparse'
@@ -48,7 +52,7 @@ class Drupal
48
52
 
49
53
  MAJOR = 0
50
54
  MINOR = 0
51
- TINY = 3
55
+ TINY = 4
52
56
  VERSION = [MAJOR, MINOR, TINY].join('.')
53
57
 
54
58
  # Run the drupal development tool.
File without changes
data/test/test_drupal.rb CHANGED
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'test/unit'
4
+
File without changes
File without changes
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: visionmedia-drupal
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - tj@vision-media.ca
@@ -76,3 +76,6 @@ specification_version: 2
76
76
  summary: Drupal development kit
77
77
  test_files:
78
78
  - test/test_drupal.rb
79
+ - test/test_install.rb
80
+ - test/test_create_module.rb
81
+ - test/test_todo_list.rb