enzyme 0.1.3 → 0.1.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.
Files changed (4) hide show
  1. data/VERSION +1 -1
  2. data/lib/commands/create.rb +79 -32
  3. data/lib/setup.rb +1 -1
  4. metadata +4 -4
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.3
1
+ 0.1.4
@@ -5,69 +5,116 @@ module Create extend self
5
5
 
6
6
  def run()
7
7
  ARGV.reject { |x| x.start_with?("-") }
8
- project_name = ARGV.shift
9
- project_type = ARGV.shift
8
+ @@project_name = ARGV.shift
9
+ @@project_type = ARGV.shift
10
10
 
11
- if project_name
12
- if project_type
13
- case project_type.to_sym
11
+ if @@project_name
12
+ if @@project_type
13
+ case @@project_type.to_sym
14
14
  when :pms
15
- pms(project_name)
15
+ pms
16
16
  when :koi
17
- koi(project_name)
17
+ koi
18
18
  else
19
19
  raise "Unknown project type `#{project_type}`."
20
20
  end
21
21
  else
22
- base(project_name)
22
+ base
23
23
  end
24
+ puts
24
25
  puts "Complete."
26
+ puts
25
27
  else
26
28
  raise "A project name must be given. For example: `enzyme create project_name`"
27
29
  end
28
30
  end
29
31
 
30
- def base(project_name)
32
+ def base
31
33
  raise "The `projects_directory` setting is not set. Set it using `enzyme config projects_directory \"/Users/me/Projects\" --global`." unless $settings.projects_directory
32
34
  raise "The `sync.shared_directory` setting is not set. Set it using `enzyme config sync.shared_directory \"shared\" --global`." unless $settings.sync.shared_directory
33
35
  raise "The `user` setting is not set. Set it using `enzyme config user \"me\" --global`." unless $settings.user
34
36
 
35
- puts "Creating the #{project_name} project at #{$settings.projects_directory}/#{project_name}..."
37
+ @@project_name = @@project_name+'_'+Time.now.strftime('%y%m') unless @@project_name =~ /^.+_\d{4}$/
36
38
 
37
- system "mkdir #{$settings.projects_directory}/#{project_name}"
39
+ puts
40
+ puts "Creating the '#{@@project_name}' project at '#{$settings.projects_directory}/#{@@project_name}'..."
41
+ puts
42
+
43
+ system "mkdir #{$settings.projects_directory}/#{@@project_name}"
38
44
  # TODO: Move the resources directory and it's content to the sync command. Create shouldn't be responsible for it.
39
- system "mkdir #{$settings.projects_directory}/#{project_name}/resources"
40
- system "mkdir #{$settings.projects_directory}/#{project_name}/resources/#{$settings.sync.shared_directory}"
41
- system "mkdir #{$settings.projects_directory}/#{project_name}/resources/#{$settings.user}"
42
- system "touch #{$settings.projects_directory}/#{project_name}/.enzyme.yml"
45
+ system "mkdir #{$settings.projects_directory}/#{@@project_name}/resources"
46
+ system "mkdir #{$settings.projects_directory}/#{@@project_name}/resources/#{$settings.sync.shared_directory}"
47
+ system "mkdir #{$settings.projects_directory}/#{@@project_name}/resources/#{$settings.user}"
48
+ system "touch #{$settings.projects_directory}/#{@@project_name}/.enzyme.yml"
43
49
 
44
- Dir.chdir("#{$settings.projects_directory}/#{project_name}")
50
+ Dir.chdir("#{$settings.projects_directory}/#{@@project_name}")
45
51
 
46
- Config.set('project_name', project_name)
52
+ Config.set('project_name', @@project_name)
47
53
  Config.set('project_type', nil)
48
54
  end
49
55
 
50
- def koi(project_name)
51
- raise "Koi projects are not avaliable in this version of Enzyme (#{$version})."
56
+ def koi
57
+ raise "The `projects_directory` setting is not set. Set it using `enzyme config projects_directory \"/Users/me/Projects\" --global`." unless $settings.projects_directory
58
+ raise "The `github.user` setting is not set. Set it using `enzyme config github.user \"me\" --global`." unless $settings.github.user
59
+ raise "The `github.token` setting is not set. Set it using `enzyme config github.token \"0123456789abcdef0123456789abcdef\" --global`." unless $settings.github.token
60
+
61
+ base
62
+
63
+ Config.set('project_type', 'koi')
64
+
65
+ puts
66
+ puts "Downloading the latest version of Koi from 'https://github.com/katalyst/koi_cms/zipball/master'..."
67
+ puts
68
+
69
+ system "curl -o '/tmp/#{@@project_name}.zip' -F 'login=#{$settings.github.user}' -F 'token=#{$settings.github.token}' -L 'https://github.com/katalyst/koi_cms/zipball/master'"
70
+
71
+ puts
72
+ puts 'Extracting...'
73
+ puts
74
+
75
+ system "unzip '/tmp/#{@@project_name}.zip' -d '/tmp/#{@@project_name}.temp'"
76
+ system "rm '/tmp/#{@@project_name}.zip'"
77
+
78
+ extracted_dir = Dir.entries("/tmp/#{@@project_name}.temp")[2]
79
+
80
+ puts
81
+ puts "Copying to '#{$settings.projects_directory}/#{@@project_name}/'..."
82
+ puts
83
+
84
+ system "mv /tmp/#{@@project_name}.temp/#{extracted_dir}/* #{$settings.projects_directory}/#{@@project_name}"
85
+ system "rm -r '/tmp/#{@@project_name}.temp'"
52
86
  end
53
87
 
54
- def pms(project_name)
55
- raise "The `sync.projects_directory` setting is not set. Set it using `enzyme config projects_directory \"/Users/me/Projects\" --global`." unless $settings.projects_directory
56
- raise "The `sync.github.user` setting is not set. Set it using `enzyme config github.user \"me\" --global`." unless $settings.github.user
57
- raise "The `sync.github.token` setting is not set. Set it using `enzyme config github.token \"0123456789abcdef0123456789abcdef\" --global`." unless $settings.github.token
88
+ def pms
89
+ raise "The `projects_directory` setting is not set. Set it using `enzyme config projects_directory \"/Users/me/Projects\" --global`." unless $settings.projects_directory
90
+ raise "The `github.user` setting is not set. Set it using `enzyme config github.user \"me\" --global`." unless $settings.github.user
91
+ raise "The `github.token` setting is not set. Set it using `enzyme config github.token \"0123456789abcdef0123456789abcdef\" --global`." unless $settings.github.token
58
92
 
59
- base(project_name)
93
+ base
60
94
 
61
95
  Config.set('project_type', 'pms')
62
96
 
63
- system "curl -o '/tmp/#{project_name}.zip' -F 'login=#{$settings.github.user}' -F 'token=#{$settings.github.token}' -L 'https://github.com/katalyst/pms/zipball/v0.4.2alpha03'"
64
- system "unzip '/tmp/#{project_name}.zip' -d '/tmp/#{project_name}.temp'"
65
- system "rm '/tmp/#{project_name}.zip'"
97
+ puts
98
+ puts "Downloading v0.4.2alpha03 of the PMS from 'https://github.com/katalyst/pms/zipball/v0.4.2alpha03'..."
99
+ puts
100
+
101
+ system "curl -o '/tmp/#{@@project_name}.zip' -F 'login=#{$settings.github.user}' -F 'token=#{$settings.github.token}' -L 'https://github.com/katalyst/pms/zipball/v0.4.2alpha03'"
66
102
 
67
- extracted_dir = Dir.entries("/tmp/#{project_name}.temp")[2]
103
+ puts
104
+ puts 'Extracting...'
105
+ puts
68
106
 
69
- system "mv /tmp/#{project_name}.temp/#{extracted_dir}/* #{$settings.projects_directory}/#{project_name}/"
70
- system "rm -r '/tmp/#{project_name}.temp'"
107
+ system "unzip '/tmp/#{@@project_name}.zip' -d '/tmp/#{@@project_name}.temp'"
108
+ system "rm '/tmp/#{@@project_name}.zip'"
109
+
110
+ extracted_dir = Dir.entries("/tmp/#{@@project_name}.temp")[2]
111
+
112
+ puts
113
+ puts "Copying to '#{$settings.projects_directory}/#{@@project_name}/'..."
114
+ puts
115
+
116
+ system "mv /tmp/#{@@project_name}.temp/#{extracted_dir}/* #{$settings.projects_directory}/#{@@project_name}"
117
+ system "rm -r '/tmp/#{@@project_name}.temp'"
71
118
  end
72
119
 
73
120
  end
@@ -83,7 +130,7 @@ Enzyme.register(Create) do
83
130
  puts '### EXAMPLES'
84
131
  puts ''
85
132
  puts ' enzyme create my_project pms'
86
- # puts ''
87
- # puts ' enzyme create another_project koi'
133
+ puts ''
134
+ puts ' enzyme create another_project koi'
88
135
  puts ''
89
136
  end
@@ -24,4 +24,4 @@ $settings = Settings.new(config)
24
24
  $trace_errors = ARGV.delete('--trace')
25
25
 
26
26
  # Version number.
27
- $version = "0.1.3"
27
+ $version = "0.1.4"
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enzyme
3
3
  version: !ruby/object:Gem::Version
4
- hash: 29
4
+ hash: 19
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 3
10
- version: 0.1.3
9
+ - 4
10
+ version: 0.1.4
11
11
  platform: ruby
12
12
  authors:
13
13
  - Haydn Ewers
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-01-19 00:00:00 +10:30
18
+ date: 2011-02-07 00:00:00 +10:30
19
19
  default_executable: enzyme
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency