enzyme 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
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