dockerize-ruby 0.0.3 → 0.0.8

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d84e5e9b3cb9bc0701ec775ce3aa313d784c09c2b6f3173031f6bc4b0f2f9567
4
- data.tar.gz: 6d1ab8ecdf24087d53cd65d0493e13dc9f3030c606686fc7b0dd81b3b09b740d
3
+ metadata.gz: ee75657666bc8fb2cca248dc540e5cbd5760d1f555bc6fbe2baa3aa5004ded35
4
+ data.tar.gz: 128f5edd132d968af8a4f57a0d0084738f3d9f83d9a8ef4c8f3bb3c9ca2cd314
5
5
  SHA512:
6
- metadata.gz: 7b480a98501d912a3232310e7b1f6964f393c5bf048a318911f36ad891dda4c171541cde88ea29d91a6a22ec501dcefd349e45aebbd454fff71d28553ae38e5f
7
- data.tar.gz: 84273b5bb121a4d9e8204f51f928cfff65667968ad1afdba02ef5c028e17a2f631d3e6609d7dda6c5e217b52f585dd875d92493261ef4fa8c1fba04e39df9c52
6
+ metadata.gz: 0f206ee9d816e18cff6f2b210e40c92ef9849d17f49036d574abf9a59f1c1d399c1fcae29f579418cdbccd56e9284110aba142367d7a968351cf8c3f0f4a951b
7
+ data.tar.gz: 441d8e1b664e8fcafd4fa847490c1fb6db19596061c8f81788e62b6da35adddcf17946c37e56a3785ff9980b38a3cc4798179e719fb644502e59c5e0e3560143
data/bin/dockerize-ruby CHANGED
@@ -6,6 +6,9 @@ require 'gli'
6
6
  class App
7
7
  extend GLI::App
8
8
 
9
+ subcommand_option_handling :normal
10
+ arguments :strict
11
+
9
12
  program_desc 'A simple docker generation file tool'
10
13
 
11
14
  desc 'Generates a docker-compose.yml'
@@ -16,9 +19,23 @@ class App
16
19
  end
17
20
 
18
21
  desc 'Generates a Dockerfile'
22
+ arg_name '<arg>...', %i(:multiple)
19
23
  command :dockerfile do |c|
24
+ c.desc 'Pass a bundler version argument'
25
+ c.flag :bundler_version, type: String
26
+
27
+ c.desc 'Pass a ruby version argument'
28
+ c.flag :ruby_version, type: String
29
+
30
+ c.action do |globals, options, args|
31
+ Dockerize.dockerfile options: options
32
+ end
33
+ end
34
+
35
+ desc 'Generates an entrypoint.sh'
36
+ command :entrypoint do |c|
20
37
  c.action do
21
- Dockerize.dockerfile
38
+ Dockerize.entrypoint
22
39
  end
23
40
  end
24
41
  end
@@ -1,12 +1,13 @@
1
1
  class Dockerize
2
- def self.dockerfile
2
+ def self.dockerfile(options: {})
3
3
  File.open("Dockerfile", 'w') do |file|
4
4
  file.write """# syntax=docker/dockerfile:1
5
- FROM ruby:2.5
5
+ FROM ruby:#{options[:ruby_version]}
6
6
  RUN apt-get update -qq && apt-get install -y nodejs postgresql-client
7
7
  WORKDIR /myapp
8
8
  COPY Gemfile /myapp/Gemfile
9
9
  COPY Gemfile.lock /myapp/Gemfile.lock
10
+ RUN gem install bundler -v #{options[:bundler_version]}
10
11
  RUN bundle install
11
12
 
12
13
  # Add a script to be executed every time the container starts.
@@ -41,4 +42,17 @@ services:
41
42
  - db"""
42
43
  end
43
44
  end
45
+
46
+ def self.entrypoint
47
+ File.open("entrypoint.sh", 'w') do |file|
48
+ file.write """#!/bin/bash
49
+ set -e
50
+
51
+ # Remove a potentially pre-existing server.pid for Rails.
52
+ rm -f /myapp/tmp/pids/server.pid
53
+
54
+ # Then exec the container's main process (what's set as CMD in the Dockerfile).
55
+ exec \"$@\""""
56
+ end
57
+ end
44
58
  end
metadata CHANGED
@@ -1,16 +1,58 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dockerize-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Luilver Garces
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-09-04 00:00:00.000000000 Z
12
- dependencies: []
13
- description: This ruby tool will be intended to help you dockerize any ruby app
11
+ date: 2021-09-19 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ">="
17
+ - !ruby/object:Gem::Version
18
+ version: '0'
19
+ name: rake
20
+ prerelease: false
21
+ type: :development
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ name: minitest
34
+ prerelease: false
35
+ type: :development
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ name: gli
48
+ prerelease: false
49
+ type: :runtime
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ description: Dockerize, bootstrap and develop any ruby app in a faster way.
14
56
  email: luilver@gmail.com
15
57
  executables:
16
58
  - dockerize-ruby
@@ -19,7 +61,7 @@ extra_rdoc_files: []
19
61
  files:
20
62
  - bin/dockerize-ruby
21
63
  - lib/dockerize-ruby.rb
22
- homepage: https://rubygems.org/gems/dockerize-ruby
64
+ homepage: https://github.com/luilver/dockerize-ruby
23
65
  licenses:
24
66
  - Apache-2.0
25
67
  metadata: {}
@@ -38,7 +80,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
38
80
  - !ruby/object:Gem::Version
39
81
  version: '0'
40
82
  requirements: []
41
- rubygems_version: 3.0.9
83
+ rubygems_version: 3.2.27
42
84
  signing_key:
43
85
  specification_version: 4
44
86
  summary: A ruby gem for dockerize your app!