dockerize-ruby 0.0.5 → 0.1.0

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: 2205cbb46296622734aaaef7ca89ea764cbc8985beb464df5f0aac8669fd6402
4
- data.tar.gz: 983ce480aaa22c9c014c76adb4a5e02981d5ff63f02bcf8dbf2557a7683ac2cc
3
+ metadata.gz: 563dd94337a17b1d5b6da9311ad86320bd227b69f4c12ecb1b0664e4300aa122
4
+ data.tar.gz: d8be8570323673c16b001e017f33b94fdfc9fa65977e7556ede88f9e7f331ca0
5
5
  SHA512:
6
- metadata.gz: 32f1371729cd7c7da7a17319595943785c4ddd5c44f041d86a226cc2c698222b7437be61eea44b203cb8e33c28751ac2c9b2b76ba887312a869e201d08be63ff
7
- data.tar.gz: 05e048b26b5435245047417ad95791a80a73c85d3220f7f58aa529f69cda8a30b6ea0b563bf8d1d61941a419bf2b409f43049fc433f9e79f61b470d981975dab
6
+ metadata.gz: 6ed7ef43b24e7772c345126050e61063b7e15754705beb407e6f3546229022793e395844a7da379caefc40afb884eea9537363b991a19ffad56ba5d179a90188
7
+ data.tar.gz: a795392a66d4454eeedcd5ea40e1f702c725a8387ac8a7f37b0562d7008bcabf566c7f78a3e55186e14d9fea16bc82828a9a737f92a830458cb794ed449434e9
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.
@@ -28,11 +29,13 @@ services:
28
29
  image: postgres
29
30
  volumes:
30
31
  - ./tmp/db:/var/lib/postgresql/data
32
+ ports:
33
+ - \"5432:5432\"
31
34
  environment:
32
35
  POSTGRES_PASSWORD: password
33
36
  web:
34
37
  build: .
35
- command: bash -c \"rm -f tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'\"
38
+ command: bash -c \"rm -f tmp/pids/server.pid && bundle exec rails db:migrate && bundle exec rails s -p 3000 -b '0.0.0.0'\"
36
39
  volumes:
37
40
  - .:/myapp
38
41
  ports:
metadata CHANGED
@@ -1,52 +1,52 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dockerize-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.1.0
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-05 00:00:00.000000000 Z
11
+ date: 2021-09-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: rake
15
14
  requirement: !ruby/object:Gem::Requirement
16
15
  requirements:
17
16
  - - ">="
18
17
  - !ruby/object:Gem::Version
19
18
  version: '0'
20
- type: :development
19
+ name: rake
21
20
  prerelease: false
21
+ type: :development
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: minitest
29
28
  requirement: !ruby/object:Gem::Requirement
30
29
  requirements:
31
30
  - - ">="
32
31
  - !ruby/object:Gem::Version
33
32
  version: '0'
34
- type: :development
33
+ name: minitest
35
34
  prerelease: false
35
+ type: :development
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: gli
43
42
  requirement: !ruby/object:Gem::Requirement
44
43
  requirements:
45
44
  - - ">="
46
45
  - !ruby/object:Gem::Version
47
46
  version: '0'
48
- type: :runtime
47
+ name: gli
49
48
  prerelease: false
49
+ type: :runtime
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - ">="
@@ -80,7 +80,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
80
80
  - !ruby/object:Gem::Version
81
81
  version: '0'
82
82
  requirements: []
83
- rubygems_version: 3.0.9
83
+ rubygems_version: 3.2.27
84
84
  signing_key:
85
85
  specification_version: 4
86
86
  summary: A ruby gem for dockerize your app!