automux 0.0.1 → 0.1.0
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/automux.gemspec +9 -9
- data/bin/automux +1 -1
- data/features/error_messages.feature +29 -1
- data/lib/automux.rb +1 -0
- data/lib/automux/controller/base.rb +4 -0
- data/lib/automux/controller/blueprints.rb +3 -2
- data/lib/automux/controller/recipes.rb +0 -4
- data/lib/automux/initializers.rb +1 -0
- data/lib/automux/initializers/setup_editor.rb +1 -0
- data/lib/automux/version.rb +5 -0
- metadata +6 -6
- data/VERSION +0 -1
- data/lib/automux/setup.rb +0 -0
data/automux.gemspec
CHANGED
@@ -1,18 +1,18 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
|
-
|
3
2
|
$:.push File.expand_path("../lib", __FILE__)
|
3
|
+
require 'automux/version'
|
4
4
|
|
5
5
|
Gem::Specification.new do |gem|
|
6
|
-
gem.name =
|
7
|
-
gem.version =
|
6
|
+
gem.name = 'automux'
|
7
|
+
gem.version = Automux::Version::STRING
|
8
8
|
gem.authors = ["Alex Johnson"]
|
9
9
|
gem.email = ["notalexjohnson@gmail.com"]
|
10
|
-
gem.description = %[
|
11
|
-
gem.summary = %[
|
12
|
-
gem.homepage =
|
10
|
+
gem.description = %[Highly configurable Tmux Automator]
|
11
|
+
gem.summary = %[Automate tmux sessions stored in yaml files using custom recipes]
|
12
|
+
gem.homepage = %[https://github.com/notalex/automux]
|
13
13
|
|
14
|
-
gem.files =
|
15
|
-
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
14
|
+
gem.files = %x[git ls-files].split($/)
|
15
|
+
gem.executables = gem.files.grep(%r{^bin/}).map { |f| File.basename(f) }
|
16
16
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
17
|
-
gem.require_paths =
|
17
|
+
gem.require_paths = %w(lib)
|
18
18
|
end
|
data/bin/automux
CHANGED
@@ -11,7 +11,7 @@ case args[0]
|
|
11
11
|
when 'setup'
|
12
12
|
Automux::Controller::Setup.new.clone_defaults
|
13
13
|
when 'blueprint'
|
14
|
-
params = {
|
14
|
+
params = { blueprint_name: args[2], clone_name: args[3] }
|
15
15
|
Automux::Controller::Blueprints.new(params).send(args[1])
|
16
16
|
else
|
17
17
|
params = {
|
@@ -4,5 +4,33 @@ Feature: Handling various errors with relevant messages
|
|
4
4
|
When I invoke Automux with the blueprint "test_sample"
|
5
5
|
Then the rendered sequence of shell commands should contain
|
6
6
|
"""
|
7
|
-
echo
|
7
|
+
echo Unable to find blueprint named test_sample.yml
|
8
|
+
"""
|
9
|
+
|
10
|
+
Scenario: Trying to use a non existing recipe
|
11
|
+
When I invoke Automux with the recipe "unknown" and the blueprint "default"
|
12
|
+
Then the rendered sequence of shell commands should contain
|
13
|
+
"""
|
14
|
+
echo Unable to find recipe named unknown.sh.erb
|
15
|
+
"""
|
16
|
+
|
17
|
+
Scenario: Trying to edit a non existing blueprint
|
18
|
+
When I invoke Automux to "edit" the blueprint "test_sample"
|
19
|
+
Then the rendered sequence of shell commands should contain
|
20
|
+
"""
|
21
|
+
echo Unable to find blueprint named test_sample.yml
|
22
|
+
"""
|
23
|
+
|
24
|
+
Scenario: Trying to edit a non existing blueprint
|
25
|
+
When I invoke Automux to "edit" the blueprint "test_sample"
|
26
|
+
Then the rendered sequence of shell commands should contain
|
27
|
+
"""
|
28
|
+
echo Unable to find blueprint named test_sample.yml
|
29
|
+
"""
|
30
|
+
|
31
|
+
Scenario: Trying to remove a non existing blueprint
|
32
|
+
When I invoke Automux to "rm" the blueprint "test_sample"
|
33
|
+
Then the rendered sequence of shell commands should contain
|
34
|
+
"""
|
35
|
+
echo Unable to find blueprint named test_sample.yml
|
8
36
|
"""
|
data/lib/automux.rb
CHANGED
@@ -13,6 +13,10 @@ module Automux
|
|
13
13
|
def notify_error(message)
|
14
14
|
Automux::Controller::Messages.new(message: message).error
|
15
15
|
end
|
16
|
+
|
17
|
+
def check_blueprint
|
18
|
+
notify_error "Unable to find blueprint named #{ params[:blueprint_name] }.yml" if @blueprint.nil?
|
19
|
+
end
|
16
20
|
end
|
17
21
|
end
|
18
22
|
end
|
@@ -2,6 +2,7 @@ module Automux
|
|
2
2
|
module Controller
|
3
3
|
class Blueprints < Base
|
4
4
|
before_filter :load_blueprint, only: [:edit, :copy, :cp, :delete, :rm]
|
5
|
+
before_filter :check_blueprint, only: [:edit, :copy, :cp, :delete, :rm]
|
5
6
|
|
6
7
|
# blueprint_name.yml will be searched under $HOME/.automux/blueprints
|
7
8
|
# $ automux blueprint edit blueprint_name
|
@@ -13,7 +14,7 @@ module Automux
|
|
13
14
|
# This copies the content from default.yml and opens the new file using $EDITOR
|
14
15
|
# $ automux blueprint create new_blueprint_name
|
15
16
|
def create
|
16
|
-
blueprint = Automux::Core::Blueprint.build_by_name(params[:
|
17
|
+
blueprint = Automux::Core::Blueprint.build_by_name(params[:blueprint_name])
|
17
18
|
blueprint.source = Automux::Cache::Blueprint.find_by_name('default')
|
18
19
|
@binding = blueprint.get_binding
|
19
20
|
render 'create'
|
@@ -38,7 +39,7 @@ module Automux
|
|
38
39
|
private ###
|
39
40
|
|
40
41
|
def load_blueprint
|
41
|
-
@blueprint = Automux::Cache::Blueprint.find_by_name(params[:
|
42
|
+
@blueprint = Automux::Cache::Blueprint.find_by_name(params[:blueprint_name])
|
42
43
|
end
|
43
44
|
end
|
44
45
|
end
|
@@ -22,10 +22,6 @@ module Automux
|
|
22
22
|
@blueprint = Automux::Cache::Blueprint.find_by_name(params[:blueprint_name])
|
23
23
|
end
|
24
24
|
|
25
|
-
def check_blueprint
|
26
|
-
notify_error "Unable to find blueprint named #{ params[:blueprint_name] }.yml" if @blueprint.nil?
|
27
|
-
end
|
28
|
-
|
29
25
|
def check_recipe
|
30
26
|
notify_error "Unable to find recipe named #{ params[:recipe_name] }.sh.erb" if @recipe.nil?
|
31
27
|
end
|
data/lib/automux/initializers.rb
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
ENV['EDITOR'] ||= 'vim'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: automux
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -11,7 +11,7 @@ bindir: bin
|
|
11
11
|
cert_chain: []
|
12
12
|
date: 2013-04-01 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
|
-
description:
|
14
|
+
description: Highly configurable Tmux Automator
|
15
15
|
email:
|
16
16
|
- notalexjohnson@gmail.com
|
17
17
|
executables:
|
@@ -23,7 +23,6 @@ files:
|
|
23
23
|
- Gemfile
|
24
24
|
- Gemfile.lock
|
25
25
|
- LICENSE.txt
|
26
|
-
- VERSION
|
27
26
|
- automux.gemspec
|
28
27
|
- bin/automux
|
29
28
|
- data/automux/blueprints/default.yml
|
@@ -74,11 +73,12 @@ files:
|
|
74
73
|
- lib/automux/initializers.rb
|
75
74
|
- lib/automux/initializers/custom_hooks.rb
|
76
75
|
- lib/automux/initializers/setup_caches.rb
|
76
|
+
- lib/automux/initializers/setup_editor.rb
|
77
77
|
- lib/automux/library.rb
|
78
78
|
- lib/automux/library/mini_erb.rb
|
79
79
|
- lib/automux/library/yaml_parser.rb
|
80
80
|
- lib/automux/paths.rb
|
81
|
-
- lib/automux/
|
81
|
+
- lib/automux/version.rb
|
82
82
|
- lib/automux/views/blueprints/copy.sh.erb
|
83
83
|
- lib/automux/views/blueprints/create.sh.erb
|
84
84
|
- lib/automux/views/blueprints/edit.sh.erb
|
@@ -109,10 +109,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
109
109
|
version: '0'
|
110
110
|
requirements: []
|
111
111
|
rubyforge_project:
|
112
|
-
rubygems_version: 1.8.
|
112
|
+
rubygems_version: 1.8.10
|
113
113
|
signing_key:
|
114
114
|
specification_version: 3
|
115
|
-
summary:
|
115
|
+
summary: Automate tmux sessions stored in yaml files using custom recipes
|
116
116
|
test_files:
|
117
117
|
- features/custom_recipes.feature
|
118
118
|
- features/error_messages.feature
|
data/VERSION
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
0.0.1
|
data/lib/automux/setup.rb
DELETED
File without changes
|