shipitron 0.3.3 → 0.3.4
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.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/Dockerfile +14 -6
- data/Dockerfile.release +6 -3
- data/build_dev.sh +1 -13
- data/lib/shipitron/server/docker/run_build_script.rb +6 -3
- data/lib/shipitron/version.rb +1 -1
- data/shipitron.gemspec +1 -0
- metadata +17 -4
- data/scripts/fetch-bundler-data.sh +0 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7b4ac38c06b7175cd6cd6afa86db5a58f1720685
|
4
|
+
data.tar.gz: 132599f283d1b3d2c4af7109e7234ce767f4a244
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ba91de68f68176fb983e12cbb708c708f65986641b8d9cc219a59954b01c4d2a694b1f0ddf61cc9352788d5a457c65efb358a2a41e6aa35225c56dc6bdbde499
|
7
|
+
data.tar.gz: c9da9482a2b85247c3b9da71c3c553b57a5138d70d84d4d12e9a631cecf9d79438fede1aa0761ae5b274f4b2dc6408523ec61b39218d3a2ab906bff657e28ae2
|
data/.gitignore
CHANGED
data/Dockerfile
CHANGED
@@ -1,4 +1,11 @@
|
|
1
|
-
FROM ruby:2.
|
1
|
+
FROM ruby:2.4.1-alpine as cache
|
2
|
+
COPY cache/ /tmp/
|
3
|
+
RUN cd /usr/local/bundle && \
|
4
|
+
([ -f /tmp/bundler-data.tar.gz ] && \
|
5
|
+
tar -zxf /tmp/bundler-data.tar.gz && \
|
6
|
+
rm /tmp/bundler-data.tar.gz) || true
|
7
|
+
|
8
|
+
FROM ruby:2.4.1-alpine
|
2
9
|
MAINTAINER Ryan Schlesinger <ryan@outstand.com>
|
3
10
|
|
4
11
|
RUN addgroup -S shipitron && \
|
@@ -33,7 +40,10 @@ RUN apk add --no-cache \
|
|
33
40
|
git \
|
34
41
|
openssh-client \
|
35
42
|
perl \
|
36
|
-
bash
|
43
|
+
bash \
|
44
|
+
curl \
|
45
|
+
wget \
|
46
|
+
jq
|
37
47
|
|
38
48
|
ENV USE_BUNDLE_EXEC true
|
39
49
|
ENV BUNDLE_GEMFILE /shipitron/Gemfile
|
@@ -41,11 +51,9 @@ ENV BUNDLE_GEMFILE /shipitron/Gemfile
|
|
41
51
|
WORKDIR /app
|
42
52
|
COPY Gemfile shipitron.gemspec /shipitron/
|
43
53
|
COPY lib/shipitron/version.rb /shipitron/lib/shipitron/
|
44
|
-
COPY scripts/fetch-bundler-data.sh /shipitron/scripts/fetch-bundler-data.sh
|
45
54
|
|
46
|
-
|
47
|
-
RUN
|
48
|
-
(bundle check || bundle install) && \
|
55
|
+
COPY --from=cache /usr/local/bundle /usr/local/bundle
|
56
|
+
RUN (bundle check || bundle install) && \
|
49
57
|
git config --global push.default simple
|
50
58
|
COPY . /shipitron/
|
51
59
|
RUN ln -s /shipitron/exe/shipitron /usr/local/bin/shipitron && \
|
data/Dockerfile.release
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
FROM ruby:2.
|
1
|
+
FROM ruby:2.4.1-alpine
|
2
2
|
MAINTAINER Ryan Schlesinger <ryan@outstand.com>
|
3
3
|
|
4
4
|
RUN addgroup -S shipitron && \
|
@@ -33,11 +33,14 @@ RUN apk add --no-cache \
|
|
33
33
|
git \
|
34
34
|
openssh-client \
|
35
35
|
perl \
|
36
|
-
bash
|
36
|
+
bash \
|
37
|
+
curl \
|
38
|
+
wget \
|
39
|
+
jq
|
37
40
|
|
38
41
|
WORKDIR /app
|
39
42
|
|
40
|
-
ENV SHIPITRON_VERSION=0.3.
|
43
|
+
ENV SHIPITRON_VERSION=0.3.4
|
41
44
|
|
42
45
|
RUN gem install shipitron -v ${SHIPITRON_VERSION} && \
|
43
46
|
mkdir -p /home/shipitron/.ssh && \
|
data/build_dev.sh
CHANGED
@@ -3,17 +3,11 @@ set -e -x
|
|
3
3
|
|
4
4
|
build_image=outstand/shipitron:dev
|
5
5
|
dockerfile=Dockerfile
|
6
|
-
bundler_data_dir=
|
6
|
+
bundler_data_dir=cache
|
7
7
|
|
8
|
-
bundler_data_container=''
|
9
8
|
tar_container=''
|
10
9
|
|
11
10
|
function cleanup {
|
12
|
-
if [ -n "$bundler_data_container" ]; then
|
13
|
-
docker stop bundler-data
|
14
|
-
docker rm -fv bundler-data
|
15
|
-
fi
|
16
|
-
|
17
11
|
if [ -n "$tar_container" ]; then
|
18
12
|
docker rm -fv ${tar_container}
|
19
13
|
fi
|
@@ -26,12 +20,6 @@ trap cleanup EXIT
|
|
26
20
|
build_args=''
|
27
21
|
mkdir -p ${bundler_data_dir}
|
28
22
|
|
29
|
-
if [ -f $(pwd)/${bundler_data_dir}/bundler-data.tar.gz ]; then
|
30
|
-
docker run --name bundler-data -v $(pwd)/${bundler_data_dir}/bundler-data.tar.gz:/usr/share/nginx/html/bundler-data.tar.gz:ro -d nginx:stable-alpine
|
31
|
-
bundler_data_container=bundler-data
|
32
|
-
build_args="--build-arg bundler_data_host=$(docker inspect --format '{{ .NetworkSettings.IPAddress }}' bundler-data)"
|
33
|
-
fi
|
34
|
-
|
35
23
|
docker build -t ${build_image} -f ${dockerfile} ${build_args} .
|
36
24
|
|
37
25
|
docker run -t --cidfile=${bundler_data_dir}/cidfile -w /usr/local/bundle ${build_image} tar -zcf /tmp/bundler-data.tar.gz .
|
@@ -24,9 +24,12 @@ module Shipitron
|
|
24
24
|
unless Pathname.new(build_script).exist?
|
25
25
|
fail_with_error!(message: "#{build_script} does not exist")
|
26
26
|
end
|
27
|
-
|
28
|
-
|
29
|
-
|
27
|
+
|
28
|
+
cmd = TTY::Command.new
|
29
|
+
result = cmd.run!("#{build_script} #{docker_image}")
|
30
|
+
|
31
|
+
if result.failure?
|
32
|
+
fail_with_error!(message: "build script exited with non-zero code: #{result.exit_status}")
|
30
33
|
end
|
31
34
|
end
|
32
35
|
end
|
data/lib/shipitron/version.rb
CHANGED
data/shipitron.gemspec
CHANGED
@@ -26,6 +26,7 @@ Gem::Specification.new do |spec|
|
|
26
26
|
spec.add_runtime_dependency 'mime-types', '~> 3.0'
|
27
27
|
spec.add_runtime_dependency 'minitar', '~> 0.5'
|
28
28
|
spec.add_runtime_dependency 'mustache', '~> 1.0'
|
29
|
+
spec.add_runtime_dependency 'tty-command', '~> 0.6'
|
29
30
|
|
30
31
|
spec.add_development_dependency "bundler", "~> 1.12"
|
31
32
|
spec.add_development_dependency "rake", "~> 10.0"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shipitron
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ryan Schlesinger
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-08-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -136,6 +136,20 @@ dependencies:
|
|
136
136
|
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: '1.0'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: tty-command
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - "~>"
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '0.6'
|
146
|
+
type: :runtime
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - "~>"
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '0.6'
|
139
153
|
- !ruby/object:Gem::Dependency
|
140
154
|
name: bundler
|
141
155
|
requirement: !ruby/object:Gem::Requirement
|
@@ -283,7 +297,6 @@ files:
|
|
283
297
|
- lib/shipitron/smash.rb
|
284
298
|
- lib/shipitron/version.rb
|
285
299
|
- scripts/docker-entrypoint.sh
|
286
|
-
- scripts/fetch-bundler-data.sh
|
287
300
|
- shipitron.gemspec
|
288
301
|
homepage: https://github.com/outstand/shipitron
|
289
302
|
licenses: []
|
@@ -304,7 +317,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
304
317
|
version: '0'
|
305
318
|
requirements: []
|
306
319
|
rubyforge_project:
|
307
|
-
rubygems_version: 2.6.
|
320
|
+
rubygems_version: 2.6.13
|
308
321
|
signing_key:
|
309
322
|
specification_version: 4
|
310
323
|
summary: A deployment tool for use with Docker and ECS.
|
@@ -1,16 +0,0 @@
|
|
1
|
-
#!/bin/sh
|
2
|
-
set -x
|
3
|
-
|
4
|
-
if [ -z "$1" ]; then
|
5
|
-
echo 'Missing argument: bundler data host'
|
6
|
-
exit 0
|
7
|
-
fi
|
8
|
-
|
9
|
-
wget -T 2 -O /tmp/bundler-data.tar.gz http://${1}/bundler-data.tar.gz
|
10
|
-
if [ $? -ne 0 ]; then
|
11
|
-
echo 'Unable to fetch bundler data.'
|
12
|
-
else
|
13
|
-
cd /usr/local/bundle && \
|
14
|
-
tar -zxf /tmp/bundler-data.tar.gz && \
|
15
|
-
rm /tmp/bundler-data.tar.gz
|
16
|
-
fi
|