enzyme 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.2
1
+ 0.1.3
@@ -58,7 +58,7 @@ Enzyme.register(Config) do
58
58
  puts ''
59
59
  puts '### SYNOPSIS'
60
60
  puts ''
61
- puts ' enzyme config [key [value [--global]]]'
61
+ puts ' enzyme config [<key> [<value> [--global]]]'
62
62
  puts ''
63
63
  puts '### EXAMPLES'
64
64
  puts ''
@@ -16,25 +16,29 @@ module Create extend self
16
16
  when :koi
17
17
  koi(project_name)
18
18
  else
19
- Enzyme.error("Unknown project type `#{project_type}`.")
19
+ raise "Unknown project type `#{project_type}`."
20
20
  end
21
21
  else
22
22
  base(project_name)
23
23
  end
24
+ puts "Complete."
24
25
  else
25
- Enzyme.error("A project name must be given. For example: `enzyme create project_name`")
26
+ raise "A project name must be given. For example: `enzyme create project_name`"
26
27
  end
27
28
  end
28
29
 
29
30
  def base(project_name)
30
- unless $settings.projects_directory
31
- Enzyme.error("The `sync.projects_directory` setting is not set. Set it using `enzyme config projects_directory \"/Users/me/Projects\"`.")
32
- return
33
- end
31
+ raise "The `projects_directory` setting is not set. Set it using `enzyme config projects_directory \"/Users/me/Projects\" --global`." unless $settings.projects_directory
32
+ 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
+ raise "The `user` setting is not set. Set it using `enzyme config user \"me\" --global`." unless $settings.user
34
+
35
+ puts "Creating the #{project_name} project at #{$settings.projects_directory}/#{project_name}..."
34
36
 
35
37
  system "mkdir #{$settings.projects_directory}/#{project_name}"
38
+ # TODO: Move the resources directory and it's content to the sync command. Create shouldn't be responsible for it.
36
39
  system "mkdir #{$settings.projects_directory}/#{project_name}/resources"
37
- system "mkdir #{$settings.projects_directory}/#{project_name}/resources/client"
40
+ system "mkdir #{$settings.projects_directory}/#{project_name}/resources/#{$settings.sync.shared_directory}"
41
+ system "mkdir #{$settings.projects_directory}/#{project_name}/resources/#{$settings.user}"
38
42
  system "touch #{$settings.projects_directory}/#{project_name}/.enzyme.yml"
39
43
 
40
44
  Dir.chdir("#{$settings.projects_directory}/#{project_name}")
@@ -44,24 +48,13 @@ module Create extend self
44
48
  end
45
49
 
46
50
  def koi(project_name)
47
- Enzyme.error("Koi projects are not avaliable in this version of Enzyme (#{$version}).")
51
+ raise "Koi projects are not avaliable in this version of Enzyme (#{$version})."
48
52
  end
49
53
 
50
54
  def pms(project_name)
51
- unless $settings.projects_directory
52
- Enzyme.error("The `sync.projects_directory` setting is not set. Set it using `enzyme config projects_directory \"/Users/me/Projects\"`.")
53
- return
54
- end
55
-
56
- unless $settings.github.user
57
- Enzyme.error("The `sync.github.user` setting is not set. Set it using `enzyme config github.user \"me\"`.")
58
- return
59
- end
60
-
61
- unless $settings.github.token
62
- Enzyme.error("The `sync.github.token` setting is not set. Set it using `enzyme config github.token \"0123456789abcdef0123456789abcdef\"`.")
63
- return
64
- end
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
65
58
 
66
59
  base(project_name)
67
60
 
@@ -85,7 +78,7 @@ Enzyme.register(Create) do
85
78
  puts ''
86
79
  puts '### SYNOPSIS'
87
80
  puts ''
88
- puts ' enzyme create project_name [pms]'
81
+ puts ' enzyme create <project_name> [pms | koi]'
89
82
  puts ''
90
83
  puts '### EXAMPLES'
91
84
  puts ''
@@ -6,55 +6,38 @@ module Sync extend self
6
6
  ARGV.reject { |x| x.start_with?("-") }
7
7
  project_name = ARGV.shift || $settings.project_name
8
8
 
9
- unless project_name
10
- Enzyme.error("No project name specified. Ensure you're in the project's directory or set it specifically. Run `enzyme help sync` for help.")
11
- return
12
- end
13
-
14
- unless $settings.sync.share_name
15
- Enzyme.error("The `sync.share_name` setting is not set. Set it using `enzyme config sync.share_name \"Share Name\"`.")
16
- return
17
- end
18
-
19
- unless $settings.sync.host
20
- Enzyme.error("The `sync.host` setting is not set. Set it using `enzyme config sync.host \"Host._afpovertcp._tcp.local\"`.")
21
- return
22
- end
23
-
24
- unless $settings.sync.projects_directory
25
- Enzyme.error("The `sync.projects_directory` setting is not set. Set it using `enzyme config sync.projects_directory \"My Projects Directory\"`.")
26
- return
27
- end
28
-
29
- unless $settings.sync.protected_directory
30
- Enzyme.error("The `sync.protected_directory` setting is not set. Set it using `enzyme config sync.protected_directory \"my_directory\"`.")
31
- return
32
- end
33
-
34
- unless $settings.sync.shared_directory
35
- Enzyme.error("The `sync.shared_directory` setting is not set. Set it using `enzyme config sync.shared_directory \"our_shared_directory\"`.")
36
- return
37
- end
9
+ raise "No project name specified. Ensure you're in the project's directory or set it specifically. Run `enzyme help sync` for help." unless project_name
10
+ raise "The #{project_name} project could not be found." unless File.exist?("#{$settings.projects_directory}/#{project_name}")
11
+ raise "The `sync.share_name` setting is not set. Set it using `enzyme config sync.share_name \"Share Name\" --global`." unless $settings.sync.share_name
12
+ raise "The `sync.host` setting is not set. Set it using `enzyme config sync.host \"Host._afpovertcp._tcp.local\" --global`." unless $settings.sync.host
13
+ raise "The `sync.projects_directory` setting is not set. Set it using `enzyme config sync.projects_directory \"My Projects Directory\" --global`." unless $settings.sync.projects_directory
14
+ raise "The `user` setting is not set. Set it using `enzyme config user \"my_directory\" --global`." unless $settings.user
15
+ raise "The `sync.shared_directory` setting is not set. Set it using `enzyme config sync.shared_directory \"our_shared_directory\" --global`." unless $settings.sync.shared_directory
38
16
 
39
17
  # Mount the network volume. Only works on OS X.
40
18
  system "mkdir \"/Volumes/#{$settings.sync.share_name}\""
41
19
  system "mount -t afp \"afp://#{$settings.sync.host}/#{$settings.sync.share_name}\" \"/Volumes/#{$settings.sync.share_name}\""
42
20
  system "mkdir \"/Volumes/#{$settings.sync.share_name}/#{$settings.sync.projects_directory}/#{project_name}\""
43
21
  # Pull.
44
- system "rsync -aH --stats -v -u --progress --exclude '#{$settings.sync.protected_directory}/**' \"/Volumes/#{$settings.sync.share_name}/#{$settings.sync.projects_directory}/#{project_name}/\" '#{$settings.projects_directory}/#{project_name}/resources/'"
22
+ system "rsync -aH --stats -v -u --progress --exclude '#{$settings.user}/**' \"/Volumes/#{$settings.sync.share_name}/#{$settings.sync.projects_directory}/#{project_name}/\" '#{$settings.projects_directory}/#{project_name}/resources/'"
45
23
  # Push.
46
- system "rsync -aH --stats -v -u --progress --include '*/' --include '#{$settings.sync.shared_directory}/**' --include '#{$settings.sync.protected_directory}/**' --exclude '*' '#{$settings.projects_directory}/#{project_name}/resources/' \"/Volumes/#{$settings.sync.share_name}/#{$settings.sync.projects_directory}/#{project_name}/\""
24
+ system "rsync -aH --stats -v -u --progress --include '*/' --include '#{$settings.sync.shared_directory}/**' --include '#{$settings.user}/**' --exclude '*' '#{$settings.projects_directory}/#{project_name}/resources/' \"/Volumes/#{$settings.sync.share_name}/#{$settings.sync.projects_directory}/#{project_name}/\""
47
25
  end
48
26
 
49
27
  end
50
28
 
51
29
  Enzyme.register(Sync) do
52
30
  puts 'SYNC COMMAND'
53
- puts '--------------'
31
+ puts '------------'
54
32
  puts ''
55
33
  puts '### SYNOPSIS'
56
34
  puts ''
57
- puts ' enzyme sync [project_name]'
35
+ puts ' enzyme sync [<project_name>]'
36
+ puts ''
37
+ puts '### OPTIONS'
38
+ puts ''
39
+ puts '<project_name>'
40
+ puts ': The name of the project to sync. If the working directory is the root of a project this option does not need to be passed.'
58
41
  puts ''
59
42
  puts '### EXAMPLES'
60
43
  puts ''
@@ -51,16 +51,16 @@ module Enzyme extend self
51
51
  puts ''
52
52
  puts '### Commands'
53
53
  puts ''
54
- puts ' enzyme config [key [value [--global]]]'
55
- puts ' enzyme create project_name [type]'
56
- # puts ' enzyme join project_name'
57
- puts ' enzyme sync [project_name]'
54
+ puts ' enzyme config [<key> [<value> [--global]]]'
55
+ puts ' enzyme create <project_name> [pms | koi]'
56
+ # puts ' enzyme join <project_name>'
57
+ puts ' enzyme sync [<project_name>]'
58
58
  puts ''
59
59
  puts '### Help'
60
60
  puts ''
61
- puts ' enzyme help [command]'
62
- puts ' enzyme [command] --help'
63
- puts ' enzyme [command] -h'
61
+ puts ' enzyme help [<command>]'
62
+ puts ' enzyme [<command>] --help'
63
+ puts ' enzyme [<command>] -h'
64
64
  puts ''
65
65
  puts '### Debugging'
66
66
  puts ''
@@ -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.2"
27
+ $version = "0.1.3"
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: 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
  - Haydn Ewers
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-01-18 00:00:00 +10:30
18
+ date: 2011-01-19 00:00:00 +10:30
19
19
  default_executable: enzyme
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency