shared-infrastructure 0.0.15 → 0.0.16

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
  SHA1:
3
- metadata.gz: da04dfe750e140c1338ffdb29a780aec11cc5d67
4
- data.tar.gz: f07c6a555130703d979dddec88f58c5eb02b7d51
3
+ metadata.gz: d045d1733b5238d63ba991f82ee7a0aede2aa8c9
4
+ data.tar.gz: d8b39349b97ac3cdcf1042429ecd077e34899b72
5
5
  SHA512:
6
- metadata.gz: f82b761326514cc4ff6f9b3c65e0906546e2fe8f9adee2aa503e26a9069d45a311ffbe0e24ab2b62511345ad7e6031b61e4bca9a10ee429f2e19a3df177cd27a
7
- data.tar.gz: 1818e9387a3037ae3ec2a26eeca27a1558fd44cfb0ccbf1d2fc14f276fbfbec51a2b33468cf1a80ab71ff5704288040e6ad8db2ec52f91ddc103673149550ef4
6
+ metadata.gz: 765448322ab39cbabb387e56bb6d112c6c017949a12d76be23204d40efd09787e176cf033726e702dcc594c7ac5a8abf825106aef60aa37e6384f203b81d6b75
7
+ data.tar.gz: e471cbb425cf5508aac4e1fcb0ba07b1f412197307982a265434d622cb66a75e42356f8ccd314ee641dc468ed950947db7cc95de0248042d79c777349a6c7e7d
@@ -15,6 +15,5 @@ require "shared_infrastructure/runner/base.rb"
15
15
  require "shared_infrastructure/runner/reverse_proxy.rb"
16
16
  require "shared_infrastructure/runner/static_site.rb"
17
17
  require "shared_infrastructure/runner/rails.rb"
18
- require "shared_infrastructure/runner/deploy.rb"
19
18
  require "shared_infrastructure/systemd/systemd.rb"
20
19
  require "shared_infrastructure/systemd/rails.rb"
@@ -20,6 +20,10 @@ module SharedInfrastructure
20
20
  @domain_name = domain_name
21
21
  end
22
22
 
23
+ def production_log
24
+ "/var/www/#{domain_name}/log/production.log"
25
+ end
26
+
23
27
  def secrets
24
28
  File.join(site_root, "secrets")
25
29
  end
@@ -170,6 +170,19 @@ Finally, re-run this script to configure nginx for TLS.
170
170
  ENV[var]
171
171
  end
172
172
  end
173
+ SharedInfrastructure::Output.open(File.join("/etc/logrotate.d", "#{domain.domain_name}.conf"), "w") do |io|
174
+ io << <<~LOGROTATE
175
+ compress
176
+
177
+ #{domain.production_log} {
178
+ size 1M
179
+ rotate 4
180
+ copytruncate
181
+ missingok
182
+ notifempty
183
+ }
184
+ LOGROTATE
185
+ end &&
173
186
  File.open(SharedInfrastructure::Output.file_name(File.join(domain.site_root, "secrets")), "w", 0o600) do |io|
174
187
  io << env.map { |pair| "#{pair[0]}=#{pair[1]}\n" }.join
175
188
  end &&
@@ -73,11 +73,12 @@ module Runner
73
73
  "--root DIRECTORY",
74
74
  "DIRECTORY. Set a root for files. This options is for debugging.") do |directory|
75
75
  Nginx.chroot(directory)
76
+ SharedInfrastructure::Output.fake_root(directory)
76
77
  end
77
78
 
78
79
  opts.on("-u USER",
79
80
  "--user USER",
80
- "User to be the owner of certain files. Default: ubuntu.") do |user|
81
+ "User to be the owner of certain files. Default: the current user.") do |user|
81
82
  options[:user] = user
82
83
  end
83
84
 
@@ -22,7 +22,7 @@ module Runner
22
22
  # There's almost certainly a refactoring that would make this less
23
23
  # convoluted.
24
24
  domain_name = options.delete(:domain_name)
25
- user = options.delete(:user) || "ubuntu"
25
+ user = options.delete(:user)
26
26
  certificate_domain = options.delete(:certificate_domain)
27
27
  accel_location = options.delete(:accel_location)
28
28
  domain = SharedInfrastructure::Domain.new(domain_name)
@@ -12,7 +12,7 @@ module Runner
12
12
  )
13
13
 
14
14
  domain_name = options.delete(:domain_name)
15
- user = options.delete(:user) || "ubuntu"
15
+ user = options.delete(:user)
16
16
  certificate_domain = options.delete(:certificate_domain)
17
17
  domain = SharedInfrastructure::Domain.new(domain_name)
18
18
  protocol_class.new(user, certificate_domain, domain: domain)
@@ -44,11 +44,8 @@ module Systemd
44
44
  # Environment=PUMA_DEBUG=1
45
45
  Environment=RACK_ENV=production
46
46
  Environment=RAILS_ENV=production
47
+ # FIXME: The following is the wrong place
47
48
  EnvironmentFile=#{domain.secrets}
48
- Environment=SECRET_KEY_BASE=#{ENV['SECRET_KEY_BASE']}
49
- Environment=DATABASE_USERNAME=#{ENV['DATABASE_USERNAME']}
50
- Environment=DATABASE_PASSWORD=#{ENV['DATABASE_PASSWORD']}
51
- Environment=EMAIL_PASSWORD=#{ENV['EMAIL_PASSWORD']}
52
49
  Environment=REDIS_URL=unix:///tmp/#{redis_location(domain_name)}.sock
53
50
 
54
51
  # The command to start Puma
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shared-infrastructure
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.15
4
+ version: 0.0.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - Larry Reid
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-04-05 00:00:00.000000000 Z
11
+ date: 2018-04-24 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: 'For static sites, Rails apps, and reverse proxies.
14
14
 
@@ -37,7 +37,6 @@ files:
37
37
  - lib/shared_infrastructure/nginx/upstream.rb
38
38
  - lib/shared_infrastructure/output.rb
39
39
  - lib/shared_infrastructure/runner/base.rb
40
- - lib/shared_infrastructure/runner/deploy.rb
41
40
  - lib/shared_infrastructure/runner/rails.rb
42
41
  - lib/shared_infrastructure/runner/reverse_proxy.rb
43
42
  - lib/shared_infrastructure/runner/static_site.rb
@@ -1,55 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "optparse"
4
- require "production"
5
-
6
- module Runner
7
- class << self
8
- attr_accessor :debug
9
- end
10
- self.debug = false
11
-
12
- ##
13
- # Runner for deployment
14
- class Deploy
15
- def main
16
- process_options
17
- raise MissingArgument, "repository required" unless ARGV.size == 1
18
- Production.repository = ARGV[0]
19
- end
20
-
21
- def process_options
22
- options = OptionParser.new do |opts|
23
- opts.banner = "Usage: [options] REPOSITORY"
24
-
25
- opts.on("-b BRANCH", "--branch BRANCH", "Branch in repository to deploy.") do |branch|
26
- Production.branch = branch
27
- end
28
-
29
- opts.on("-d", "--debug", "Print debugging information.") do
30
- Runner.debug = true
31
- end
32
-
33
- opts.on("-r DIRECTORY",
34
- "--root DIRECTORY",
35
- "DIRECTORY. Set a root for files. This options is for debugging.") do |directory|
36
- Output.fake_root(directory)
37
- end
38
-
39
- opts.on("-u REPOSITORY_USER",
40
- "--user REPOSITORY_USER",
41
- "REPOSITORY_USER. User name for the respository.") do |user|
42
- Production.user = user
43
- end
44
- end
45
- options.parse!
46
- end
47
- end
48
-
49
- class MissingArgument < RuntimeError
50
- def initialize(msg)
51
- super msg
52
- end
53
- attr_reader :msg
54
- end
55
- end