dockerize-ruby 0.0.3 → 0.0.7

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: 86660d4ef122c6da6a25a014b4e4f274e172db736dad32cd0e3b214dbd0ada38
4
+ data.tar.gz: 1c21f54b105a0e4119353f6ad29f62bf847df7f2b83418ce38c743e5bf4ab452
5
5
  SHA512:
6
- metadata.gz: 7b480a98501d912a3232310e7b1f6964f393c5bf048a318911f36ad891dda4c171541cde88ea29d91a6a22ec501dcefd349e45aebbd454fff71d28553ae38e5f
7
- data.tar.gz: 84273b5bb121a4d9e8204f51f928cfff65667968ad1afdba02ef5c028e17a2f631d3e6609d7dda6c5e217b52f585dd875d92493261ef4fa8c1fba04e39df9c52
6
+ metadata.gz: '0375480f17bf8f117c75d9181f1660e9189eae4b66b0aabdc5c5bfae47c2926cca488c86c27871a2967222f06600c177145bc1554c36ef007c71391e6c3abe1e'
7
+ data.tar.gz: a9e2a864f91fd5559bcb141168e572d7c577c13ad7b66b244f1c662f4f41527d68195cb3d7eb28fa65c81e6c499be2ce8b8d97c2540b77a21e5beae3976d0d61
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,13 +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 bundle install
10
+ RUN bundle install #{options[:bundler_version]}
11
11
 
12
12
  # Add a script to be executed every time the container starts.
13
13
  COPY entrypoint.sh /usr/bin/
@@ -41,4 +41,17 @@ services:
41
41
  - db"""
42
42
  end
43
43
  end
44
+
45
+ def self.entrypoint
46
+ File.open("entrypoint.sh", 'w') do |file|
47
+ file.write """#!/bin/bash
48
+ set -e
49
+
50
+ # Remove a potentially pre-existing server.pid for Rails.
51
+ rm -f /myapp/tmp/pids/server.pid
52
+
53
+ # Then exec the container's main process (what's set as CMD in the Dockerfile).
54
+ exec \"$@\""""
55
+ end
56
+ end
44
57
  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.7
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!