vx-worker 0.3.0.pre0 → 0.3.0.pre1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +5 -0
- data/.travis.yml +1 -0
- data/bin/vx-worker +1 -1
- data/lib/vx/worker/cli.rb +0 -1
- data/lib/vx/worker/configuration.rb +0 -9
- data/lib/vx/worker/consumers/jobs_consumer.rb +5 -7
- data/lib/vx/worker/docker.rb +1 -1
- data/lib/vx/worker/helper/instrument.rb +13 -0
- data/lib/vx/worker/initializers/airbrake.rb +10 -0
- data/lib/vx/worker/initializers/amqp.rb +29 -1
- data/lib/vx/worker/initializers/instrumentation.rb +3 -0
- data/lib/vx/worker/job.rb +14 -4
- data/lib/vx/worker/middlewares/log_job.rb +3 -7
- data/lib/vx/worker/middlewares/run_script.rb +8 -3
- data/lib/vx/worker/middlewares/start_connector.rb +13 -10
- data/lib/vx/worker/middlewares/update_job_status.rb +16 -6
- data/lib/vx/worker/version.rb +1 -1
- data/lib/vx/worker.rb +1 -9
- data/spec/lib/worker/job_spec.rb +4 -3
- data/spec/spec_helper.rb +1 -0
- data/vx-worker.gemspec +4 -2
- metadata +25 -20
- data/dist/build.sh +0 -77
- data/dist/debian/changelog.mk +0 -6
- data/dist/debian/ci_env +0 -7
- data/dist/debian/compat +0 -1
- data/dist/debian/control.mk +0 -12
- data/dist/debian/postrm +0 -35
- data/dist/debian/preinst +0 -27
- data/dist/debian/rules +0 -22
- data/dist/debian/script +0 -6
- data/dist/debian/source/format +0 -1
- data/dist/debian/upstart +0 -18
- data/lib/vx/worker/helper/logger.rb +0 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f90646fd30f7005ecc81621ae81743e794a30acc
|
4
|
+
data.tar.gz: caf487d0602e547e7a079d616b9939358801f159
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: df8bd48f4532605208141ff4eacffe77fdf51abf310afb91c9582ab47c6006c50bce33f66c74dcea6446a52b25e58453d0860431c89cb311e7c9f74c3ea98c94
|
7
|
+
data.tar.gz: dba72da68461c00e9cbeec6c4bf1ebe859ac9b56819a7b7bfc165e4ebda8d20b797e15b65fc7d3ed612f87fef632da16f3cb95838f1e60d2a4bd33f0fad5a670
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/bin/vx-worker
CHANGED
data/lib/vx/worker/cli.rb
CHANGED
@@ -1,6 +1,4 @@
|
|
1
1
|
require 'hashr'
|
2
|
-
require 'logger'
|
3
|
-
require 'vx/common/tagged_logging'
|
4
2
|
|
5
3
|
module Vx
|
6
4
|
module Worker
|
@@ -8,15 +6,12 @@ module Vx
|
|
8
6
|
|
9
7
|
extend Hashr::EnvDefaults
|
10
8
|
|
11
|
-
@@null_logger = Logger.new("/dev/null")
|
12
|
-
|
13
9
|
self.env_namespace = 'vx'
|
14
10
|
self.raise_missing_keys = true
|
15
11
|
|
16
12
|
define amqp_url: nil,
|
17
13
|
run: "docker",
|
18
14
|
timeout: 30 * 60,
|
19
|
-
logger: Common::TaggedLogging.new(Logger.new STDOUT),
|
20
15
|
|
21
16
|
workers: 1,
|
22
17
|
path_prefix: nil,
|
@@ -45,10 +40,6 @@ module Vx
|
|
45
40
|
self[:path_prefix] || Dir.pwd
|
46
41
|
end
|
47
42
|
|
48
|
-
def null_logger
|
49
|
-
@@null_logger
|
50
|
-
end
|
51
|
-
|
52
43
|
def connector_options
|
53
44
|
self[self.run]
|
54
45
|
end
|
@@ -14,13 +14,11 @@ module Vx
|
|
14
14
|
model Message::PerformJob
|
15
15
|
|
16
16
|
def perform(message)
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
ack!
|
23
|
-
end
|
17
|
+
job = Job.new message
|
18
|
+
number = Thread.current[:consumer_id] || 0
|
19
|
+
path_prefix = "/tmp/.worker/job.#{number}"
|
20
|
+
Worker.perform(job, path_prefix)
|
21
|
+
ack!
|
24
22
|
end
|
25
23
|
|
26
24
|
end
|
data/lib/vx/worker/docker.rb
CHANGED
@@ -1,3 +1,31 @@
|
|
1
|
+
require 'airbrake'
|
1
2
|
require 'vx/common/amqp'
|
3
|
+
require 'active_support/notifications'
|
2
4
|
|
3
|
-
|
5
|
+
module Vx
|
6
|
+
module Worker
|
7
|
+
module AMQP
|
8
|
+
Middleware = Struct.new(:app) do
|
9
|
+
def call(env)
|
10
|
+
prop = env[:properties] || {}
|
11
|
+
head = prop[:headers] || {}
|
12
|
+
|
13
|
+
Vx::Instrumentation.with("@fields" => head) do
|
14
|
+
app.call(env)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
Vx::Common::AMQP.configure do |c|
|
23
|
+
c.content_type = 'application/x-protobuf'
|
24
|
+
c.instrumenter = ActiveSupport::Notifications
|
25
|
+
c.on_error = ->(e, env) {
|
26
|
+
Vx::Instrumentation.handle_exception("worker", e, env)
|
27
|
+
Airbrake.notify(e, env)
|
28
|
+
}
|
29
|
+
c.use :pub, Vx::Worker::AMQP::Middleware
|
30
|
+
c.use :sub, Vx::Worker::AMQP::Middleware
|
31
|
+
end
|
data/lib/vx/worker/job.rb
CHANGED
@@ -5,8 +5,6 @@ module Vx
|
|
5
5
|
module Worker
|
6
6
|
class Job
|
7
7
|
|
8
|
-
include Helper::Logger
|
9
|
-
|
10
8
|
attr_reader :output, :message, :output_counter
|
11
9
|
|
12
10
|
def initialize(perform_job_message)
|
@@ -17,7 +15,13 @@ module Vx
|
|
17
15
|
|
18
16
|
def add_to_output(str)
|
19
17
|
output << str
|
20
|
-
|
18
|
+
end
|
19
|
+
|
20
|
+
def instrumentation
|
21
|
+
{
|
22
|
+
job_id: message.job_id,
|
23
|
+
build_id: message.id
|
24
|
+
}
|
21
25
|
end
|
22
26
|
|
23
27
|
def add_command_to_output(cmd)
|
@@ -40,7 +44,13 @@ module Vx
|
|
40
44
|
tm: output_counter,
|
41
45
|
log: str
|
42
46
|
)
|
43
|
-
JobLogsConsumer.publish
|
47
|
+
JobLogsConsumer.publish(
|
48
|
+
log,
|
49
|
+
headers: {
|
50
|
+
build_id: log.build_id,
|
51
|
+
job_id: log.job_id
|
52
|
+
}
|
53
|
+
)
|
44
54
|
log
|
45
55
|
end
|
46
56
|
|
@@ -3,15 +3,11 @@ module Vx
|
|
3
3
|
|
4
4
|
LogJob = Struct.new(:app) do
|
5
5
|
|
6
|
-
include Helper::
|
6
|
+
include Helper::Instrument
|
7
7
|
|
8
8
|
def call(env)
|
9
|
-
|
10
|
-
|
11
|
-
rs = app.call env
|
12
|
-
logger.info "done job"
|
13
|
-
rs
|
14
|
-
end
|
9
|
+
instrument("starting_job", env.job.instrumentation)
|
10
|
+
app.call env
|
15
11
|
end
|
16
12
|
|
17
13
|
end
|
@@ -5,14 +5,19 @@ module Vx
|
|
5
5
|
|
6
6
|
RunScript = Struct.new(:app) do
|
7
7
|
|
8
|
-
include Helper::Logger
|
9
8
|
include Helper::Config
|
9
|
+
include Helper::Instrument
|
10
10
|
include Common::Helper::UploadShCommand
|
11
11
|
|
12
12
|
def call(env)
|
13
13
|
if env.spawner
|
14
|
-
code = run_script
|
15
|
-
|
14
|
+
code = instrument("run_script", env.job.instrumentation) do
|
15
|
+
run_script(env)
|
16
|
+
end
|
17
|
+
|
18
|
+
instrument("run_after_script", env.job.instrumentation) do
|
19
|
+
run_after_script(env)
|
20
|
+
end
|
16
21
|
|
17
22
|
if code == 0
|
18
23
|
app.call env
|
@@ -8,25 +8,28 @@ module Vx
|
|
8
8
|
StartConnector = Struct.new(:app) do
|
9
9
|
|
10
10
|
include Helper::Config
|
11
|
-
include Helper::
|
11
|
+
include Helper::Instrument
|
12
12
|
|
13
13
|
def call(env)
|
14
14
|
options = config.connector_options
|
15
|
-
options.merge! logger: logger
|
16
15
|
env.connector = ContainerConnector.lookup(config.run, options)
|
16
|
+
|
17
|
+
instrument("starting_container", env.job.instrumentation)
|
18
|
+
|
17
19
|
env.connector.start do |spawner|
|
18
20
|
env.job.add_to_output "using #{Socket.gethostname}##{spawner.id}\n"
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
21
|
+
|
22
|
+
instrument("container_started", env.job.instrumentation.merge(container: spawner.id))
|
23
|
+
|
24
|
+
begin
|
25
|
+
env.spawner = spawner
|
26
|
+
app.call env
|
27
|
+
ensure
|
28
|
+
env.spawner = spawner
|
26
29
|
end
|
27
30
|
end
|
28
31
|
end
|
29
|
-
end
|
30
32
|
|
33
|
+
end
|
31
34
|
end
|
32
35
|
end
|
@@ -1,12 +1,13 @@
|
|
1
1
|
require 'vx/message'
|
2
2
|
require 'vx/common/error_notifier'
|
3
|
+
require 'airbrake'
|
3
4
|
|
4
5
|
module Vx
|
5
6
|
module Worker
|
6
7
|
|
7
8
|
UpdateJobStatus = Struct.new(:app) do
|
8
9
|
|
9
|
-
include Helper::
|
10
|
+
include Helper::Instrument
|
10
11
|
|
11
12
|
STARTED = 2
|
12
13
|
FINISHED = 3
|
@@ -22,9 +23,9 @@ module Vx
|
|
22
23
|
rescue ::Timeout::Error => e
|
23
24
|
env.job.add_to_output("\n\nERROR: #{e.message}\n")
|
24
25
|
rescue ::Exception => e
|
25
|
-
|
26
|
-
|
27
|
-
|
26
|
+
$stderr.puts "#{e.inspect}"
|
27
|
+
$stderr.puts e.backtrace.map{|b| " #{b}" }.join("\n")
|
28
|
+
Airbrake.notify(e, (env || {}).to_h)
|
28
29
|
end
|
29
30
|
|
30
31
|
msg = "\nDone. Your build exited with %s.\n"
|
@@ -45,6 +46,10 @@ module Vx
|
|
45
46
|
private
|
46
47
|
|
47
48
|
def update_status(job, status)
|
49
|
+
instrument(
|
50
|
+
"update_job_status",
|
51
|
+
job.instrumentation.merge(status: status)
|
52
|
+
)
|
48
53
|
publish_status create_message(job, status)
|
49
54
|
end
|
50
55
|
|
@@ -60,8 +65,13 @@ module Vx
|
|
60
65
|
end
|
61
66
|
|
62
67
|
def publish_status(message)
|
63
|
-
|
64
|
-
|
68
|
+
JobStatusConsumer.publish(
|
69
|
+
message,
|
70
|
+
headers: {
|
71
|
+
build_id: message.build_id,
|
72
|
+
job_id: message.job_id
|
73
|
+
}
|
74
|
+
)
|
65
75
|
end
|
66
76
|
|
67
77
|
end
|
data/lib/vx/worker/version.rb
CHANGED
data/lib/vx/worker.rb
CHANGED
@@ -25,8 +25,8 @@ module Vx
|
|
25
25
|
autoload :RunScript, File.expand_path("../worker/middlewares/run_script", __FILE__)
|
26
26
|
|
27
27
|
module Helper
|
28
|
-
autoload :Logger, File.expand_path("../worker/helper/logger", __FILE__)
|
29
28
|
autoload :Config, File.expand_path("../worker/helper/config", __FILE__)
|
29
|
+
autoload :Instrument, File.expand_path("../worker/helper/instrument", __FILE__)
|
30
30
|
end
|
31
31
|
|
32
32
|
extend self
|
@@ -34,14 +34,6 @@ module Vx
|
|
34
34
|
@@root = Pathname.new File.expand_path('../../..', __FILE__)
|
35
35
|
@@config_mutex = Mutex.new
|
36
36
|
|
37
|
-
def logger
|
38
|
-
if ENV['CI_WORKER_SILENT']
|
39
|
-
config.null_logger
|
40
|
-
else
|
41
|
-
config.logger
|
42
|
-
end
|
43
|
-
end
|
44
|
-
|
45
37
|
def configure
|
46
38
|
yield config
|
47
39
|
config
|
data/spec/lib/worker/job_spec.rb
CHANGED
@@ -7,9 +7,10 @@ describe Vx::Worker::Job do
|
|
7
7
|
subject { job }
|
8
8
|
|
9
9
|
context "just created" do
|
10
|
-
its(:message)
|
11
|
-
its(:output)
|
12
|
-
its(:output_counter)
|
10
|
+
its(:message) { should eq message }
|
11
|
+
its(:output) { should be_an_instance_of(Vx::Common::OutputBuffer) }
|
12
|
+
its(:output_counter) { should eq 0 }
|
13
|
+
its(:instrumentation) { should eq(job_id: 2, build_id: 1) }
|
13
14
|
end
|
14
15
|
|
15
16
|
context "publish_job_log_message" do
|
data/spec/spec_helper.rb
CHANGED
data/vx-worker.gemspec
CHANGED
@@ -20,8 +20,10 @@ Gem::Specification.new do |spec|
|
|
20
20
|
|
21
21
|
spec.add_runtime_dependency 'vx-common', "= 0.2.1"
|
22
22
|
spec.add_runtime_dependency 'vx-message', "= 0.4.1"
|
23
|
-
spec.add_runtime_dependency 'vx-container_connector', "= 0.2.
|
24
|
-
spec.add_runtime_dependency 'vx-common-amqp', '
|
23
|
+
spec.add_runtime_dependency 'vx-container_connector', "= 0.2.6"
|
24
|
+
spec.add_runtime_dependency 'vx-common-amqp', '= 0.3.7'
|
25
|
+
spec.add_runtime_dependency 'vx-instrumentation', '= 0.0.8'
|
26
|
+
|
25
27
|
spec.add_runtime_dependency 'hashr', '= 0.0.22'
|
26
28
|
|
27
29
|
spec.add_development_dependency "bundler", "~> 1.3"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vx-worker
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.0.
|
4
|
+
version: 0.3.0.pre1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dmitry Galinsky
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-02-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: vx-common
|
@@ -44,28 +44,42 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - '='
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.2.
|
47
|
+
version: 0.2.6
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - '='
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.2.
|
54
|
+
version: 0.2.6
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: vx-common-amqp
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - '='
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 0.
|
61
|
+
version: 0.3.7
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - '='
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 0.
|
68
|
+
version: 0.3.7
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: vx-instrumentation
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - '='
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 0.0.8
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - '='
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 0.0.8
|
69
83
|
- !ruby/object:Gem::Dependency
|
70
84
|
name: hashr
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -124,17 +138,6 @@ files:
|
|
124
138
|
- Rakefile
|
125
139
|
- Vagrantfile
|
126
140
|
- bin/vx-worker
|
127
|
-
- dist/build.sh
|
128
|
-
- dist/debian/changelog.mk
|
129
|
-
- dist/debian/ci_env
|
130
|
-
- dist/debian/compat
|
131
|
-
- dist/debian/control.mk
|
132
|
-
- dist/debian/postrm
|
133
|
-
- dist/debian/preinst
|
134
|
-
- dist/debian/rules
|
135
|
-
- dist/debian/script
|
136
|
-
- dist/debian/source/format
|
137
|
-
- dist/debian/upstart
|
138
141
|
- docker/.gitignore
|
139
142
|
- docker/Dockerfile
|
140
143
|
- docker/build.sh
|
@@ -169,8 +172,10 @@ files:
|
|
169
172
|
- lib/vx/worker/docker.rb
|
170
173
|
- lib/vx/worker/ext/string.rb
|
171
174
|
- lib/vx/worker/helper/config.rb
|
172
|
-
- lib/vx/worker/helper/
|
175
|
+
- lib/vx/worker/helper/instrument.rb
|
176
|
+
- lib/vx/worker/initializers/airbrake.rb
|
173
177
|
- lib/vx/worker/initializers/amqp.rb
|
178
|
+
- lib/vx/worker/initializers/instrumentation.rb
|
174
179
|
- lib/vx/worker/job.rb
|
175
180
|
- lib/vx/worker/local.rb
|
176
181
|
- lib/vx/worker/middlewares/log_job.rb
|
data/dist/build.sh
DELETED
@@ -1,77 +0,0 @@
|
|
1
|
-
#!/bin/bash
|
2
|
-
|
3
|
-
set -e
|
4
|
-
|
5
|
-
PACKAGE_NAME="vx-worker"
|
6
|
-
|
7
|
-
GIT_LAST_LOG=$(git log -n1 --format=oneline)
|
8
|
-
GIT_BUILD_NUMBER=$(git rev-list HEAD | wc -l | sed -e 's/ *//g' | xargs -n1 printf %04d)
|
9
|
-
GIT_LAST_TAG=$(git describe --abbrev=0 --tags)
|
10
|
-
GIT_VERSION=$(echo $GIT_LAST_TAG | sed -e "s/^v//g")
|
11
|
-
GIT_DATE=$(git log -n1 --format="%aD")
|
12
|
-
|
13
|
-
RELEASE_VERSION=$(echo $GIT_VERSION | ruby -e "puts Gem::Version.new(STDIN.read).release.to_s")
|
14
|
-
RELEASE_SHORT_VERSION=$(echo $GIT_VERSION | ruby -e "puts Gem::Version.new(STDIN.read).release.to_s.split('.')[0..1].join('.')")
|
15
|
-
|
16
|
-
VERSION="${RELEASE_VERSION}.rev${GIT_BUILD_NUMBER}"
|
17
|
-
PACKAGE_NAME_AND_VERSION="${PACKAGE_NAME}_${VERSION}"
|
18
|
-
WORKDIR=".tmp/${PACKAGE_NAME_AND_VERSION}"
|
19
|
-
|
20
|
-
function notice() {
|
21
|
-
echo " ---> $1"
|
22
|
-
}
|
23
|
-
|
24
|
-
function git_export () {
|
25
|
-
rm -rf .tmp
|
26
|
-
mkdir -p $WORKDIR
|
27
|
-
notice "export code to $WORKDIR"
|
28
|
-
git archive master | tar -x -C $WORKDIR
|
29
|
-
}
|
30
|
-
|
31
|
-
function package_gems () {
|
32
|
-
notice "packaging gems"
|
33
|
-
(cd $WORKDIR && bundle package > /dev/null)
|
34
|
-
}
|
35
|
-
|
36
|
-
function generate_debian () {
|
37
|
-
notice "generating debian scripts"
|
38
|
-
|
39
|
-
dst=${WORKDIR}/debian
|
40
|
-
src=dist/debian
|
41
|
-
|
42
|
-
pushd .tmp > /dev/null
|
43
|
-
tar -czf "${PACKAGE_NAME_AND_VERSION}.orig.tar.gz" ${PACKAGE_NAME_AND_VERSION}
|
44
|
-
popd > /dev/null
|
45
|
-
|
46
|
-
cp -r $src $dst
|
47
|
-
|
48
|
-
cat $dst/control.mk | sed -e "s/%PACKAGE_NAME%/${PACKAGE_NAME}/g" > $dst/control
|
49
|
-
cat $dst/changelog.mk | sed -e "s/%VERSION%/${VERSION}/g" | sed -e "s/%DATE%/${GIT_DATE}/g" > $dst/changelog
|
50
|
-
}
|
51
|
-
|
52
|
-
function run_vagrant () {
|
53
|
-
notice "run build in vagrant"
|
54
|
-
|
55
|
-
cat > .tmp/build.sh <<EOF
|
56
|
-
set -e
|
57
|
-
set -x
|
58
|
-
|
59
|
-
(cd ${PACKAGE_NAME_AND_VERSION} && debuild -i -us -uc -S)
|
60
|
-
|
61
|
-
mv ${PACKAGE_NAME_AND_VERSION} work
|
62
|
-
EOF
|
63
|
-
vagrant up
|
64
|
-
vagrant provision
|
65
|
-
}
|
66
|
-
|
67
|
-
|
68
|
-
function build () {
|
69
|
-
notice "Building ${PACKAGE_NAME_AND_VERSION}"
|
70
|
-
|
71
|
-
git_export
|
72
|
-
package_gems
|
73
|
-
generate_debian
|
74
|
-
run_vagrant
|
75
|
-
}
|
76
|
-
|
77
|
-
build
|
data/dist/debian/changelog.mk
DELETED
data/dist/debian/ci_env
DELETED
data/dist/debian/compat
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
5
|
data/dist/debian/control.mk
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
Source: vx-worker
|
2
|
-
Section: ruby
|
3
|
-
Priority: optional
|
4
|
-
Maintainer: Dmitry Galinsky <dima.exe@gmail.com>
|
5
|
-
Build-Depends: debhelper (>= 9.0), vx-embeded-ruby, vx-embeded-bundler, git-core
|
6
|
-
Standards-Version: 3.9.3
|
7
|
-
Homepage: http://www.ruby-lang.org/
|
8
|
-
|
9
|
-
Package: %PACKAGE_NAME%
|
10
|
-
Architecture: any
|
11
|
-
Depends: ${shlibs:Depends}, ${misc:Depends}, vx-embeded-ruby, vx-embeded-bundler, adduser
|
12
|
-
Description: Vexor worker.
|
data/dist/debian/postrm
DELETED
@@ -1,35 +0,0 @@
|
|
1
|
-
#!/bin/bash
|
2
|
-
|
3
|
-
set -e
|
4
|
-
|
5
|
-
# summary of how this script can be called:
|
6
|
-
# * <postrm> `remove'
|
7
|
-
# * <postrm> `purge'
|
8
|
-
# * <old-postrm> `upgrade' <new-version>
|
9
|
-
# * <new-postrm> `failed-upgrade' <old-version>
|
10
|
-
# * <new-postrm> `abort-install'
|
11
|
-
# * <new-postrm> `abort-install' <old-version>
|
12
|
-
# * <new-postrm> `abort-upgrade' <old-version>
|
13
|
-
# * <disappearer's-postrm> `disappear' <r>overwrit>r> <new-version>
|
14
|
-
# for details, see http://www.debian.org/doc/debian-policy/ or
|
15
|
-
# the debian-policy package
|
16
|
-
|
17
|
-
case "$1" in
|
18
|
-
purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
|
19
|
-
if test "x$1" == "xpurge"
|
20
|
-
then
|
21
|
-
userdel -r vx-worker || true
|
22
|
-
rm -rf /var/lib/vexor/worker
|
23
|
-
rm -f /var/log/upstart/vx-worker.log
|
24
|
-
fi
|
25
|
-
;;
|
26
|
-
|
27
|
-
*)
|
28
|
-
echo "postrm called with unknown argument \`$1'" >&2
|
29
|
-
exit 0
|
30
|
-
esac
|
31
|
-
|
32
|
-
#DEBHELPER#
|
33
|
-
|
34
|
-
exit 0
|
35
|
-
|
data/dist/debian/preinst
DELETED
@@ -1,27 +0,0 @@
|
|
1
|
-
#!/bin/bash
|
2
|
-
|
3
|
-
set -e
|
4
|
-
|
5
|
-
# summary of how this script can be called:
|
6
|
-
# * <new-preinst> `install'
|
7
|
-
# * <new-preinst> `install' <old-version>
|
8
|
-
# * <new-preinst> `upgrade' <old-version>
|
9
|
-
# * <old-preinst> `abort-upgrade' <new-version>
|
10
|
-
#
|
11
|
-
# for details, see http://www.debian.org/doc/debian-policy/ or
|
12
|
-
# the debian-policy package
|
13
|
-
|
14
|
-
if [ "$1" == "install" ] || [ "$1" == "upgrade" ]; then
|
15
|
-
|
16
|
-
if ! id vx-worker 1> /dev/null 2>&1; then
|
17
|
-
groupadd -f -r vx-worker
|
18
|
-
useradd -d /var/lib/vexor/worker -g vx-worker -G docker -c "Vexor worker daemon" -s /usr/sbin/nologin -r vx-worker
|
19
|
-
fi
|
20
|
-
|
21
|
-
install -m 750 -o vx-worker -g vx-worker -d /var/lib/vexor/worker
|
22
|
-
fi
|
23
|
-
|
24
|
-
#DEBHELPER#
|
25
|
-
|
26
|
-
exit 0
|
27
|
-
|
data/dist/debian/rules
DELETED
@@ -1,22 +0,0 @@
|
|
1
|
-
#!/usr/bin/make -f
|
2
|
-
# Sample debian/rules that uses debhelper.
|
3
|
-
# GNU copyright 1997 to 1999 by Joey Hess.
|
4
|
-
|
5
|
-
BUNDLE = /opt/vexor/bin/bundle
|
6
|
-
DIST = $(shell pwd)/debian/vx-worker/opt/vexor/worker
|
7
|
-
|
8
|
-
%:
|
9
|
-
dh $@
|
10
|
-
|
11
|
-
override_dh_auto_install:
|
12
|
-
$(BUNDLE) install --without development --local --standalone
|
13
|
-
mkdir -p $(DIST)
|
14
|
-
cp -r bin $(DIST)
|
15
|
-
cp -r docker $(DIST)
|
16
|
-
cp -r lib $(DIST)
|
17
|
-
cp -r bundle $(DIST)
|
18
|
-
rm -rf $(DIST)/debian
|
19
|
-
mkdir -p debian/vx-worker/etc/vexor
|
20
|
-
install -m 0644 debian/ci_env debian/vx-worker/etc/vexor/ci
|
21
|
-
mkdir -p debian/vx-worker/opt/vexor/bin
|
22
|
-
install -m 0755 debian/script debian/vx-worker/opt/vexor/bin/worker
|
data/dist/debian/script
DELETED
data/dist/debian/source/format
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
1.0
|
data/dist/debian/upstart
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
description "start and stop the vexor worker"
|
2
|
-
version "1.0"
|
3
|
-
|
4
|
-
start on filesystem or runlevel [2345]
|
5
|
-
stop on runlevel [!2345]
|
6
|
-
|
7
|
-
respawn
|
8
|
-
|
9
|
-
console log
|
10
|
-
|
11
|
-
script
|
12
|
-
home=/var/lib/vexor/worker
|
13
|
-
user=vx-worker
|
14
|
-
command=/opt/vexor/bin/worker
|
15
|
-
|
16
|
-
chdir $home
|
17
|
-
su -s /bin/sh -c "exec $command" $user
|
18
|
-
end script
|