dockerfile-rails 1.5.9 → 1.5.11

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: aa278e91ec05725efb320caaecd9ca2cde617166b4ad4157f7103eeccecf4961
4
- data.tar.gz: 748f841c1ba25cfa9f126c056a97e6eb9f6e854ea937f0e7c3a93756992746ed
3
+ metadata.gz: 1d82a193aafa58b460153c6f40f11eb3ef6928dd889b2225cf05c8d54403413e
4
+ data.tar.gz: 102a8194647678ee4d21cbdc5e01aeab3f626a6498ae8b01bc1ec1f9ab8e25ae
5
5
  SHA512:
6
- metadata.gz: 6af2d5008690de608fb72d114c59a3a4a56ff7348be8d4a3c8f21243e3a5e002bd53341297ccaece8191c9e53312b080af973e382dc62b698bb0f7e4832cb188
7
- data.tar.gz: c87bbb4eee23e9a5c2dc63d297308edc16df2baf42ea68640df6edca33537ed2acd195a0b49438b6d857c26a8812ad0c19809b8e129d0645e80f6e604a3d0553
6
+ metadata.gz: f9eeb2d4615acba7c25d796b7c77cf636794b73e003f966c061607e5c46948db96c84c42d3cc4608ad2afbdcae8ebb13f580dfac971e5318d232190b983d8eb0
7
+ data.tar.gz: 4f94cb176f2d6bb93379895cc5616d93061638c2f5ec17af50492d397007d8457f90adc14851e0bde6c8d95a1ccb5f57294466fddd19169f29b3ef8db43201b2
data/README.md CHANGED
@@ -15,14 +15,22 @@ For more background:
15
15
 
16
16
  ## Usage
17
17
 
18
+ Install from the root of your Rails project by running the following.
19
+
18
20
  ```
19
21
  bundle add dockerfile-rails --optimistic --group development
20
22
  bin/rails generate dockerfile
21
23
  ```
22
24
 
25
+ The `--optomistic` flag will make sure you always get the latest `dockerfile-rails` gem when you run `bundle update && rails g dockerfile`.
26
+
23
27
  ### General option:
24
28
 
25
29
  * `--force` - overwrite existing files
30
+ * `--skip` - keep existing files
31
+
32
+ If neither are specified, you will be prompted if a file exists with
33
+ different contents. If both are specified, `--force` takes precedence.
26
34
 
27
35
  ### Runtime Optimizations:
28
36
 
@@ -61,6 +69,7 @@ additional support may be needed:
61
69
  * `--postgresql` - add postgresql libraries
62
70
  * `--redis` - add redis libraries
63
71
  * `--sqlite3` - add sqlite3 libraries
72
+ * `--sqlserver` - add SQL Server libraries
64
73
 
65
74
  ### Add a package/environment variable/build argument:
66
75
 
@@ -71,7 +80,7 @@ Not all of your needs can be determined by scanning your application. For examp
71
80
  * `--env=name:value` - add an environment variable
72
81
  * `--remove package...` - remove package from "to be added" list
73
82
 
74
- Each of these can be tailored to a specific build phase by adding `-base`, `-build`, or `-deploy` after the flag name (e.g `--add-build freetds-dev --add-deploy freetds-bin`). If no such suffix is found, the default for arg is `-base`, and the default for the rest is `-deploy`. Removal of an arg or environment variable is done by leaving the value blank (e.g `--env-build=PORT:`).
83
+ Args and environment variables can be tailored to a specific build phase by adding `-base`, `-build`, or `-deploy` after the flag name (e.g `--add-build freetds-dev --add-deploy freetds-bin`). If no such suffix is found, the default for arg is `-base`, and the default for env is `-deploy`. Removal of an arg or environment variable is done by leaving the value blank (e.g `--env-build=PORT:`).
75
84
 
76
85
  ### Configuration:
77
86
 
@@ -53,6 +53,7 @@ module DockerfileRails
53
53
  @sqlite3 = true if @gemfile.include? "sqlite3"
54
54
  @postgresql = true if @gemfile.include? "pg"
55
55
  @mysql = true if @gemfile.include?("mysql2") || using_trilogy?
56
+ @sqlserver = true if @gemfile.include?("activerecord-sqlserver-adapter")
56
57
 
57
58
  ### node modules ###
58
59
 
@@ -35,6 +35,7 @@ class DockerfileGenerator < Rails::Generators::Base
35
35
  "rollbar" => false,
36
36
  "root" => false,
37
37
  "sqlite3" => false,
38
+ "sqlserver" => false,
38
39
  "sentry" => false,
39
40
  "sudo" => false,
40
41
  "swap" => nil,
@@ -127,6 +128,9 @@ class DockerfileGenerator < Rails::Generators::Base
127
128
  class_option :sqlite3, aliases: "--sqlite", type: :boolean, default: OPTION_DEFAULTS.sqlite3,
128
129
  desc: "include sqlite3 libraries"
129
130
 
131
+ class_option :sqlserver, aliases: "--sqlserver", type: :boolean, default: OPTION_DEFAULTS.sqlserver,
132
+ desc: "include SQL server libraries"
133
+
130
134
  class_option :litefs, type: :boolean, default: OPTION_DEFAULTS.litefs,
131
135
  desc: "replicate sqlite3 databases using litefs"
132
136
 
@@ -294,7 +298,7 @@ class DockerfileGenerator < Rails::Generators::Base
294
298
  fly_attach_consul
295
299
  end
296
300
 
297
- if File.exist?("fly.toml") && (fly_processes || !options.prepare || options.swap)
301
+ if File.exist?("fly.toml") && (fly_processes || !options.prepare || options.swap || deploy_database == "sqlite3")
298
302
  if File.stat("fly.toml").size > 0
299
303
  template "fly.toml.erb", "fly.toml"
300
304
  else
@@ -560,6 +564,7 @@ private
560
564
  # add databases: sqlite3, postgres, mysql
561
565
  packages << "pkg-config" if options.sqlite3? || @sqlite3
562
566
  packages << "libpq-dev" if options.postgresql? || @postgresql
567
+ packages << "freetds-dev" if options.sqlserver? || @sqlserver
563
568
 
564
569
  if (options.mysql? || @mysql) && !using_trilogy?
565
570
  packages << "default-libmysqlclient-dev"
@@ -615,6 +620,7 @@ private
615
620
  # start with databases: sqlite3, postgres, mysql
616
621
  packages << "postgresql-client" if options.postgresql? || @postgresql
617
622
  packages << "default-mysql-client" if options.mysql? || @mysql
623
+ packages << "freetds-bin" if options.sqlserver? || @sqlserver
618
624
  packages << "libjemalloc2" if options.jemalloc? && !options.fullstaq?
619
625
  if options.sqlite3? || @sqlite3
620
626
  packages << "libsqlite3-0" unless packages.include? "sqlite3"
@@ -916,6 +922,8 @@ private
916
922
  "postgresql"
917
923
  elsif options.mysql? || @mysql || has_mysql_gem?
918
924
  "mysql"
925
+ elsif options.sqlserver || @sqlserver
926
+ "sqlserver"
919
927
  else
920
928
  "sqlite3"
921
929
  end
@@ -960,7 +968,7 @@ private
960
968
 
961
969
  version
962
970
  rescue
963
- "latest"
971
+ "1.22.19"
964
972
  end
965
973
 
966
974
 
@@ -1147,6 +1155,12 @@ private
1147
1155
  end
1148
1156
  end
1149
1157
 
1158
+ if deploy_database == "sqlite3"
1159
+ if not toml.include? "[mounts]"
1160
+ toml += "[mounts]\n source=\"data\"\n destination=\"/data\"\n\n"
1161
+ end
1162
+ end
1163
+
1150
1164
  if options.swap
1151
1165
  suffixes = {
1152
1166
  "kib" => 1024,
@@ -34,8 +34,8 @@ ENV <%= base_env.join(" \\\n ") %>
34
34
  RUN gem update --system --no-document && \
35
35
  gem install -N <%= base_gems.join(" ") %>
36
36
 
37
- <% unless base_requirements.empty? -%>
38
- # Install packages needed to install <%= base_requirements %>
37
+ <% unless base_packages.empty? -%>
38
+ # Install packages<% unless base_requirements.empty? -%> needed to install <%= base_requirements %><% end %>
39
39
  <%= render partial: 'apt_install', locals: {packages: base_packages, clean: true, repos: base_repos} %>
40
40
 
41
41
  <% end -%>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dockerfile-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.9
4
+ version: 1.5.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sam Ruby
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-09-16 00:00:00.000000000 Z
11
+ date: 2023-10-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: 3.0.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: 3.0.0
27
27
  description:
28
28
  email: rubys@intertwingly.net
29
29
  executables: []