alpha_omega 1.0.1 → 1.1.1
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/VERSION +1 -1
- data/lib/alpha_omega/utils.rb +10 -29
- data/libexec/build +23 -192
- data/libexec/build-gem +30 -0
- data/libexec/build.orig +199 -0
- data/libexec/bump +24 -191
- data/libexec/bump.orig +32 -0
- data/libexec/edit-gem +81 -0
- data/libexec/publish +58 -0
- data/libexec/publish-gem +58 -0
- data/libexec/stub-prepare +37 -0
- metadata +8 -5
- data/libexec/pygmentize +0 -32
- data/libexec/rocco +0 -32
- data/libexec/shocco +0 -32
- data/libexec/shocco.sh +0 -466
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.1.1
|
data/lib/alpha_omega/utils.rb
CHANGED
@@ -6,7 +6,6 @@ $this_pod = nil
|
|
6
6
|
$this_host = nil
|
7
7
|
$opsdb = nil
|
8
8
|
$pods_config = nil
|
9
|
-
$magic_prefix = "eea914aaa8dde6fdae29242b1084a2b0415eefaf"
|
10
9
|
|
11
10
|
module AlphaOmega
|
12
11
|
def self.node_defaults(node, env_pod, node_name)
|
@@ -61,11 +60,8 @@ module AlphaOmega
|
|
61
60
|
|
62
61
|
def self.default_pods_tasks
|
63
62
|
Proc.new do |config, pod_name, pod, this_node, &node_filter|
|
64
|
-
|
65
|
-
|
66
|
-
config.task "#{pod_name}.#{tsuffix}" do # task pod1
|
67
|
-
set :current_pod, pod_name
|
68
|
-
end
|
63
|
+
config.task "#{pod_name}" do # task pod1
|
64
|
+
set :current_pod, pod_name
|
69
65
|
end
|
70
66
|
|
71
67
|
node_dna = { }
|
@@ -79,7 +75,7 @@ module AlphaOmega
|
|
79
75
|
next nil unless cap_roles
|
80
76
|
config.set :dna, node_dna[remote_name]
|
81
77
|
|
82
|
-
config.task "#{task_name}.#{pod_name}
|
78
|
+
config.task "#{task_name}.#{pod_name}" do # task host.pod1
|
83
79
|
cap_roles.each do |cap_role, cap_preds|
|
84
80
|
if $this_host["local_pods"] && $this_host["local_pods"].member?(node["env_pod"])
|
85
81
|
role cap_role, node["node_name"], cap_preds
|
@@ -89,35 +85,20 @@ module AlphaOmega
|
|
89
85
|
end
|
90
86
|
end
|
91
87
|
|
92
|
-
config.task "#{task_name}
|
93
|
-
|
94
|
-
end
|
95
|
-
|
96
|
-
config.task "#{task_name}.#{pod_name}.yaml" do # task host.pod1.yaml
|
97
|
-
StringIO.new({ remote_name => n }.to_yaml).lines.to_a[1..-1].each {|l| puts "#{$magic_prefix} #{l}" }
|
98
|
-
end
|
99
|
-
|
100
|
-
%w(app echo yaml).each do |tsuffix|
|
101
|
-
config.task "#{task_name}.#{tsuffix}" do # task host -> host.current_pod
|
102
|
-
config.after "#{task_name}.#{tsuffix}", "#{task_name}.#{current_pod}.#{tsuffix}"
|
103
|
-
end
|
88
|
+
config.task "#{task_name}" do # task host -> host.current_pod
|
89
|
+
config.after "#{task_name}", "#{task_name}.#{current_pod}"
|
104
90
|
end
|
105
91
|
|
106
92
|
n
|
107
93
|
end
|
108
94
|
|
109
95
|
self.what_groups hosts do |task_name, nodes|
|
110
|
-
|
111
|
-
config.
|
112
|
-
|
113
|
-
|
114
|
-
nodes.keys.sort.each do |remote_name|
|
115
|
-
config.after "#{task_name}.#{pod_name}.#{tsuffix}", "#{remote_name}.#{tsuffix}"
|
116
|
-
end
|
96
|
+
nodes.keys.sort.each do |remote_name|
|
97
|
+
config.after "#{task_name}.#{pod_name}", "#{remote_name}"
|
98
|
+
end
|
117
99
|
|
118
|
-
|
119
|
-
|
120
|
-
end
|
100
|
+
config.task "#{task_name}" do
|
101
|
+
config.after "#{task_name}", "#{task_name}.#{current_pod}"
|
121
102
|
end
|
122
103
|
end
|
123
104
|
end
|
data/libexec/build
CHANGED
@@ -1,199 +1,30 @@
|
|
1
|
-
#!/bin/bash
|
1
|
+
#!/bin/bash
|
2
2
|
|
3
|
-
|
3
|
+
#/ NAME
|
4
|
+
#/ build-gem -- upload the latest (timestamp) rubygem to rubygems.org
|
5
|
+
#/
|
6
|
+
#/ SYNOPSIS
|
7
|
+
#/ build gem -n gem_name
|
4
8
|
|
5
|
-
|
6
|
-
|
7
|
-
export COMMAND="$1"; shift
|
9
|
+
# figure out the project root under which bin, lib live
|
10
|
+
shome="$(cd -P -- "$(dirname -- "$BASH_SOURCE")/.." && pwd -P)"
|
8
11
|
|
9
|
-
|
10
|
-
|
11
|
-
fi
|
12
|
+
# load a jason bourne library
|
13
|
+
source "$shome/bin/_treadstone"
|
12
14
|
|
13
|
-
|
14
|
-
|
15
|
+
# define command line options:
|
16
|
+
DEFINE_string 'name' "$(basename "$shome")" 'name of gem' 'n'
|
15
17
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
if [[ -n $1 ]]; then
|
24
|
-
set -- $(for a in "$@"; do echo $a; done)
|
25
|
-
fi
|
18
|
+
# entry point
|
19
|
+
function main {
|
20
|
+
local pth_gemspec="$shome/$FLAGS_name.gemspec"
|
21
|
+
if [[ ! -e "$pth_gemspec" ]]; then
|
22
|
+
logger_fatal "could not find gemspec $pth_gemspec"
|
23
|
+
exit 1
|
24
|
+
fi
|
26
25
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
if [[ -z $1 ]]; then
|
31
|
-
set "world"
|
32
|
-
fi
|
33
|
-
|
34
|
-
if [[ -n $1 ]]; then
|
35
|
-
cap $(for a in "$@"; do echo $a.echo; done)
|
36
|
-
fi
|
37
|
-
;;
|
38
|
-
|
39
|
-
hosts)
|
40
|
-
LOCAL_ONLY=true
|
41
|
-
{
|
42
|
-
if [[ -n $1 ]]; then
|
43
|
-
cap $(for a in "$@"; do echo $a.echo; done)
|
44
|
-
fi
|
45
|
-
} 2>&1 | grep eea914aaa8dde6fdae29242b1084a2b0415eefaf | awk '{print $NF}' | sort -u
|
46
|
-
;;
|
47
|
-
|
48
|
-
dna)
|
49
|
-
LOCAL_ONLY=true
|
50
|
-
{
|
51
|
-
echo "eea914aaa8dde6fdae29242b1084a2b0415eefaf ---"
|
52
|
-
if [[ -n $1 ]]; then
|
53
|
-
cap $(for a in "$@"; do echo $a.yaml; done)
|
54
|
-
fi
|
55
|
-
} 2>&1 | grep eea914aaa8dde6fdae29242b1084a2b0415eefaf | sed 's#eea914aaa8dde6fdae29242b1084a2b0415eefaf ##'
|
56
|
-
;;
|
57
|
-
|
58
|
-
task)
|
59
|
-
if [[ -n $1 ]]; then
|
60
|
-
nm_task=$1; shift
|
61
|
-
set -- $(for a in "$@"; do echo $a.app; done)
|
62
|
-
fi
|
63
|
-
bundle exec cap "$@" deploy:lock_migrate deploy:migrate "$nm_task"
|
64
|
-
;;
|
65
|
-
|
66
|
-
*)
|
67
|
-
if [[ -n $1 ]]; then
|
68
|
-
set -- $(for a in "$@"; do echo $a.app; done)
|
69
|
-
fi
|
70
|
-
case "$(basename $0)" in
|
71
|
-
deploy)
|
72
|
-
bundle exec cap "$@" deploy:lock deploy
|
73
|
-
;;
|
74
|
-
|
75
|
-
release)
|
76
|
-
bundle exec cap "$@" deploy:lock deploy
|
77
|
-
;;
|
78
|
-
|
79
|
-
stage)
|
80
|
-
bundle exec cap "$@" deploy:lock deploy:update_code deploy:symlink_next
|
81
|
-
;;
|
82
|
-
|
83
|
-
restart)
|
84
|
-
bundle exec cap "$@" deploy:lock deploy:restart
|
85
|
-
;;
|
86
|
-
|
87
|
-
config)
|
88
|
-
bundle exec cap "$@" deploy:lock deploy:config
|
89
|
-
;;
|
90
|
-
|
91
|
-
build)
|
92
|
-
bundle exec cap "$@" deploy:lock deploy:build
|
93
|
-
;;
|
94
|
-
|
95
|
-
dist)
|
96
|
-
bundle exec cap "$@" deploy:lock deploy:dist
|
97
|
-
;;
|
98
|
-
|
99
|
-
activate)
|
100
|
-
bundle exec cap "$@" deploy:lock deploy:symlink deploy:restart
|
101
|
-
;;
|
102
|
-
|
103
|
-
rollback)
|
104
|
-
bundle exec cap "$@" deploy:lock deploy:rollback
|
105
|
-
;;
|
106
|
-
|
107
|
-
check)
|
108
|
-
bundle exec cap "$@" deploy:lock deploy:check
|
109
|
-
;;
|
110
|
-
|
111
|
-
plan)
|
112
|
-
bundle exec cap "$@" deploy:lock deploy:plan
|
113
|
-
;;
|
114
|
-
|
115
|
-
lock)
|
116
|
-
case "${1%.app}" in
|
117
|
-
compare|migrate)
|
118
|
-
nm_lock="${1%.app}"; shift
|
119
|
-
bundle exec cap "$@" deploy:dont_unlock "deploy:lock_${nm_lock}"
|
120
|
-
;;
|
121
|
-
*)
|
122
|
-
bundle exec cap "$@" deploy:dont_unlock deploy:lock
|
123
|
-
;;
|
124
|
-
esac
|
125
|
-
;;
|
126
|
-
|
127
|
-
unlock)
|
128
|
-
case "${1%.app}" in
|
129
|
-
compare|migrate)
|
130
|
-
nm_lock="${1%.app}"; shift
|
131
|
-
bundle exec cap "$@" "deploy:unlock_${nm_lock}"
|
132
|
-
;;
|
133
|
-
*)
|
134
|
-
bundle exec cap "$@" deploy:unlock
|
135
|
-
;;
|
136
|
-
esac
|
137
|
-
;;
|
138
|
-
|
139
|
-
shell)
|
140
|
-
bundle exec cap "$@" shell
|
141
|
-
;;
|
142
|
-
|
143
|
-
compare)
|
144
|
-
bundle exec cap "$@" deploy:lock_compare deploy:compare
|
145
|
-
;;
|
146
|
-
|
147
|
-
repl)
|
148
|
-
bundle exec cap "$@" deploy:lock_compare deploy:repl
|
149
|
-
;;
|
150
|
-
|
151
|
-
migrate)
|
152
|
-
want_list=
|
153
|
-
if [[ "${1%.app}" = "list" ]]; then
|
154
|
-
want_list=1; shift
|
155
|
-
fi
|
156
|
-
|
157
|
-
change_group=
|
158
|
-
migration=
|
159
|
-
case "${1%.app}" in
|
160
|
-
data)
|
161
|
-
change_group=${1%.app}; shift
|
162
|
-
;;
|
163
|
-
pre)
|
164
|
-
change_group=${1%.app}; shift
|
165
|
-
;;
|
166
|
-
during)
|
167
|
-
change_group=${1%.app} shift
|
168
|
-
;;
|
169
|
-
post)
|
170
|
-
change_group=${1%.app}; shift
|
171
|
-
;;
|
172
|
-
[0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789])
|
173
|
-
migration=${1%.app}; shift
|
174
|
-
;;
|
175
|
-
esac
|
176
|
-
|
177
|
-
if [[ -n $change_group ]]; then
|
178
|
-
if [[ -n $want_list ]]; then
|
179
|
-
echo "listing change group $change_group"
|
180
|
-
else
|
181
|
-
echo "running change group $change_group"
|
182
|
-
fi
|
183
|
-
elif [[ -n $migration ]]; then
|
184
|
-
echo "running migration $migratio"
|
185
|
-
elif [[ -n $want_list ]]; then
|
186
|
-
echo "listing migrations"
|
187
|
-
fi
|
188
|
-
|
189
|
-
bundle exec cap "$@" deploy:lock_migrate deploy:migrate
|
190
|
-
;;
|
191
|
-
|
192
|
-
*)
|
193
|
-
bundle exec cap "$@"
|
194
|
-
;;
|
195
|
-
esac
|
196
|
-
esac
|
197
|
-
;;
|
198
|
-
esac
|
26
|
+
cd "$shome"
|
27
|
+
gem build "$pth_gemspec"
|
28
|
+
}
|
199
29
|
|
30
|
+
require sub "$BASH_SOURCE" "$@"
|
data/libexec/build-gem
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
|
3
|
+
#/ NAME
|
4
|
+
#/ build-gem -- upload the latest (timestamp) rubygem to rubygems.org
|
5
|
+
#/
|
6
|
+
#/ SYNOPSIS
|
7
|
+
#/ build gem -n gem_name
|
8
|
+
|
9
|
+
# figure out the project root under which bin, lib live
|
10
|
+
shome="$(cd -P -- "$(dirname -- "$BASH_SOURCE")/.." && pwd -P)"
|
11
|
+
|
12
|
+
# load a jason bourne library
|
13
|
+
source "$shome/bin/_treadstone"
|
14
|
+
|
15
|
+
# define command line options:
|
16
|
+
DEFINE_string 'name' "$(basename "$shome")" 'name of gem' 'n'
|
17
|
+
|
18
|
+
# entry point
|
19
|
+
function main {
|
20
|
+
local pth_gemspec="$shome/$FLAGS_name.gemspec"
|
21
|
+
if [[ ! -e "$pth_gemspec" ]]; then
|
22
|
+
logger_fatal "could not find gemspec $pth_gemspec"
|
23
|
+
exit 1
|
24
|
+
fi
|
25
|
+
|
26
|
+
cd "$shome"
|
27
|
+
gem build "$pth_gemspec"
|
28
|
+
}
|
29
|
+
|
30
|
+
require sub "$BASH_SOURCE" "$@"
|
data/libexec/build.orig
ADDED
@@ -0,0 +1,199 @@
|
|
1
|
+
#!/bin/bash -e
|
2
|
+
|
3
|
+
export LOCAL_ONLY=
|
4
|
+
|
5
|
+
case "$(basename $0)" in
|
6
|
+
invoke)
|
7
|
+
export COMMAND="$1"; shift
|
8
|
+
|
9
|
+
if [[ -n $1 ]]; then
|
10
|
+
set -- $(for a in "$@"; do echo $a.app; done)
|
11
|
+
fi
|
12
|
+
|
13
|
+
tmp_invoke=$(mktemp -t XXXXXXXXX)
|
14
|
+
bundle exec cap "$@" invoke 2>&1 | perl -pe 's{.\[\d+m}{}g' | perl -ne 'm{^\s*\*+\s*\[(out|err)\s*::\s*([^]]+)\] ?(.*)} && print "$1 $2 $3\n"' > $tmp_invoke 2>&1
|
15
|
+
|
16
|
+
cat $tmp_invoke | awk '{print $2}' | sort -u | while read -r nm_host; do
|
17
|
+
egrep "^(out|err) $nm_host" $tmp_invoke || true
|
18
|
+
echo
|
19
|
+
done
|
20
|
+
rm -f $tmp_invoke
|
21
|
+
;;
|
22
|
+
*)
|
23
|
+
if [[ -n $1 ]]; then
|
24
|
+
set -- $(for a in "$@"; do echo $a; done)
|
25
|
+
fi
|
26
|
+
|
27
|
+
case "$(basename $0)" in
|
28
|
+
debug)
|
29
|
+
LOCAL_ONLY=true
|
30
|
+
if [[ -z $1 ]]; then
|
31
|
+
set "world"
|
32
|
+
fi
|
33
|
+
|
34
|
+
if [[ -n $1 ]]; then
|
35
|
+
cap $(for a in "$@"; do echo $a.echo; done)
|
36
|
+
fi
|
37
|
+
;;
|
38
|
+
|
39
|
+
hosts)
|
40
|
+
LOCAL_ONLY=true
|
41
|
+
{
|
42
|
+
if [[ -n $1 ]]; then
|
43
|
+
cap $(for a in "$@"; do echo $a.echo; done)
|
44
|
+
fi
|
45
|
+
} 2>&1 | grep eea914aaa8dde6fdae29242b1084a2b0415eefaf | awk '{print $NF}' | sort -u
|
46
|
+
;;
|
47
|
+
|
48
|
+
dna)
|
49
|
+
LOCAL_ONLY=true
|
50
|
+
{
|
51
|
+
echo "eea914aaa8dde6fdae29242b1084a2b0415eefaf ---"
|
52
|
+
if [[ -n $1 ]]; then
|
53
|
+
cap $(for a in "$@"; do echo $a.yaml; done)
|
54
|
+
fi
|
55
|
+
} 2>&1 | grep eea914aaa8dde6fdae29242b1084a2b0415eefaf | sed 's#eea914aaa8dde6fdae29242b1084a2b0415eefaf ##'
|
56
|
+
;;
|
57
|
+
|
58
|
+
task)
|
59
|
+
if [[ -n $1 ]]; then
|
60
|
+
nm_task=$1; shift
|
61
|
+
set -- $(for a in "$@"; do echo $a.app; done)
|
62
|
+
fi
|
63
|
+
bundle exec cap "$@" deploy:lock_migrate deploy:migrate "$nm_task"
|
64
|
+
;;
|
65
|
+
|
66
|
+
*)
|
67
|
+
if [[ -n $1 ]]; then
|
68
|
+
set -- $(for a in "$@"; do echo $a.app; done)
|
69
|
+
fi
|
70
|
+
case "$(basename $0)" in
|
71
|
+
deploy)
|
72
|
+
bundle exec cap "$@" deploy:lock deploy
|
73
|
+
;;
|
74
|
+
|
75
|
+
release)
|
76
|
+
bundle exec cap "$@" deploy:lock deploy
|
77
|
+
;;
|
78
|
+
|
79
|
+
stage)
|
80
|
+
bundle exec cap "$@" deploy:lock deploy:update_code deploy:symlink_next
|
81
|
+
;;
|
82
|
+
|
83
|
+
restart)
|
84
|
+
bundle exec cap "$@" deploy:lock deploy:restart
|
85
|
+
;;
|
86
|
+
|
87
|
+
config)
|
88
|
+
bundle exec cap "$@" deploy:lock deploy:config
|
89
|
+
;;
|
90
|
+
|
91
|
+
build)
|
92
|
+
bundle exec cap "$@" deploy:lock deploy:build
|
93
|
+
;;
|
94
|
+
|
95
|
+
dist)
|
96
|
+
bundle exec cap "$@" deploy:lock deploy:dist
|
97
|
+
;;
|
98
|
+
|
99
|
+
activate)
|
100
|
+
bundle exec cap "$@" deploy:lock deploy:symlink deploy:restart
|
101
|
+
;;
|
102
|
+
|
103
|
+
rollback)
|
104
|
+
bundle exec cap "$@" deploy:lock deploy:rollback
|
105
|
+
;;
|
106
|
+
|
107
|
+
check)
|
108
|
+
bundle exec cap "$@" deploy:lock deploy:check
|
109
|
+
;;
|
110
|
+
|
111
|
+
plan)
|
112
|
+
bundle exec cap "$@" deploy:lock deploy:plan
|
113
|
+
;;
|
114
|
+
|
115
|
+
lock)
|
116
|
+
case "${1%.app}" in
|
117
|
+
compare|migrate)
|
118
|
+
nm_lock="${1%.app}"; shift
|
119
|
+
bundle exec cap "$@" deploy:dont_unlock "deploy:lock_${nm_lock}"
|
120
|
+
;;
|
121
|
+
*)
|
122
|
+
bundle exec cap "$@" deploy:dont_unlock deploy:lock
|
123
|
+
;;
|
124
|
+
esac
|
125
|
+
;;
|
126
|
+
|
127
|
+
unlock)
|
128
|
+
case "${1%.app}" in
|
129
|
+
compare|migrate)
|
130
|
+
nm_lock="${1%.app}"; shift
|
131
|
+
bundle exec cap "$@" "deploy:unlock_${nm_lock}"
|
132
|
+
;;
|
133
|
+
*)
|
134
|
+
bundle exec cap "$@" deploy:unlock
|
135
|
+
;;
|
136
|
+
esac
|
137
|
+
;;
|
138
|
+
|
139
|
+
shell)
|
140
|
+
bundle exec cap "$@" shell
|
141
|
+
;;
|
142
|
+
|
143
|
+
compare)
|
144
|
+
bundle exec cap "$@" deploy:lock_compare deploy:compare
|
145
|
+
;;
|
146
|
+
|
147
|
+
repl)
|
148
|
+
bundle exec cap "$@" deploy:lock_compare deploy:repl
|
149
|
+
;;
|
150
|
+
|
151
|
+
migrate)
|
152
|
+
want_list=
|
153
|
+
if [[ "${1%.app}" = "list" ]]; then
|
154
|
+
want_list=1; shift
|
155
|
+
fi
|
156
|
+
|
157
|
+
change_group=
|
158
|
+
migration=
|
159
|
+
case "${1%.app}" in
|
160
|
+
data)
|
161
|
+
change_group=${1%.app}; shift
|
162
|
+
;;
|
163
|
+
pre)
|
164
|
+
change_group=${1%.app}; shift
|
165
|
+
;;
|
166
|
+
during)
|
167
|
+
change_group=${1%.app} shift
|
168
|
+
;;
|
169
|
+
post)
|
170
|
+
change_group=${1%.app}; shift
|
171
|
+
;;
|
172
|
+
[0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789])
|
173
|
+
migration=${1%.app}; shift
|
174
|
+
;;
|
175
|
+
esac
|
176
|
+
|
177
|
+
if [[ -n $change_group ]]; then
|
178
|
+
if [[ -n $want_list ]]; then
|
179
|
+
echo "listing change group $change_group"
|
180
|
+
else
|
181
|
+
echo "running change group $change_group"
|
182
|
+
fi
|
183
|
+
elif [[ -n $migration ]]; then
|
184
|
+
echo "running migration $migratio"
|
185
|
+
elif [[ -n $want_list ]]; then
|
186
|
+
echo "listing migrations"
|
187
|
+
fi
|
188
|
+
|
189
|
+
bundle exec cap "$@" deploy:lock_migrate deploy:migrate
|
190
|
+
;;
|
191
|
+
|
192
|
+
*)
|
193
|
+
bundle exec cap "$@"
|
194
|
+
;;
|
195
|
+
esac
|
196
|
+
esac
|
197
|
+
;;
|
198
|
+
esac
|
199
|
+
|