potluck-nginx 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/potluck/nginx.rb +20 -2
  3. metadata +4 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bc33a9aab81524eb41a2c734599b947bf3893cf62c72de1edeaee25850961500
4
- data.tar.gz: 4802c81ccc6c0fabdb2bbfe2c77db4d9798ac9af9f4a827fb5816ca81c991295
3
+ metadata.gz: 3c15060a79498a8616523a551ef3031549bbb8b09af0e6d7eb7e329c166b9e8d
4
+ data.tar.gz: bf716efed8715260cec9439c731e5c799073080fda9f25ebf19b8ea1e09d061b
5
5
  SHA512:
6
- metadata.gz: 64c6f24f5a322452320f942ea7feefab6afa9970c96786cf0807f261f2209e1f29c4229454e1e65629d408b282abc304821e7163ccf6d622c26802109bb6d2f5
7
- data.tar.gz: c5133b05bd80ec716eaf60f7ea41cc0c44c643d54ea729dcc36c6e8df3fdbc0cdeb4037d34097f25233b31f6138468efc64762397338803b4ae5091dfab333d1
6
+ metadata.gz: 99f5a935c622ec367f01a7852b1992ff1c687cfb575286e7e05b211eb98788b97fa7684f11cd1f1f7afe95ed46cb110a8589602dc8cb288bbfec2d0f9b5e522d
7
+ data.tar.gz: 4ccc0baa9b708d498bf46b7f925ba8e725eba121c0ed17e5a41d54f281972839a39fb5baa46db9dc153f7fbe88e06709596d62de9d9fdaf1e6503aa8e846c7e2
data/lib/potluck/nginx.rb CHANGED
@@ -14,8 +14,19 @@ module Potluck
14
14
  TEST_CONFIG_REGEX = /nginx: configuration file (?<config>.+) test (failed|is successful)/.freeze
15
15
  INCLUDE_REGEX = /^ *include +#{Regexp.escape(ACTIVE_CONFIG_PATTERN)} *;/.freeze
16
16
 
17
+ NON_LAUNCHCTL_COMMANDS = {
18
+ status: 'ps aux | grep \'[n]ginx: master process\'',
19
+ start: 'nginx',
20
+ stop: 'nginx -s stop',
21
+ }.freeze
22
+
17
23
  def initialize(hosts, port, subdomains: nil, ssl: nil, one_host: false, www: nil, multiple_slashes: nil,
18
- multiple_question_marks: nil, trailing_slash: nil, trailing_question_mark: nil, config: {}, **args)
24
+ multiple_question_marks: nil, trailing_slash: nil, trailing_question_mark: nil, config: {},
25
+ ensure_host_entries: false, **args)
26
+ if args[:manage] && !args[:manage].kind_of?(Hash) && !launchctl?
27
+ args[:manage] = NON_LAUNCHCTL_COMMANDS
28
+ end
29
+
19
30
  super(**args)
20
31
 
21
32
  @hosts = Array(hosts).map { |h| h.sub(/^www\./, '') }.uniq
@@ -23,6 +34,7 @@ module Potluck
23
34
  @host = @hosts.first
24
35
  @port = port
25
36
 
37
+ @ensure_host_entries = ensure_host_entries
26
38
  @dir = File.join(DIR, @host)
27
39
  @ssl = SSL.new(self, @dir, @host, **ssl) if ssl
28
40
 
@@ -45,8 +57,10 @@ module Potluck
45
57
  end
46
58
 
47
59
  def start
60
+ return unless manage?
61
+
48
62
  @ssl&.ensure_files
49
- ensure_host_entries
63
+ ensure_host_entries if @ensure_host_entries
50
64
  ensure_include
51
65
 
52
66
  write_config
@@ -58,12 +72,16 @@ module Potluck
58
72
  end
59
73
 
60
74
  def stop(hard = false)
75
+ return unless manage?
76
+
61
77
  deactivate_config
62
78
 
63
79
  hard || status != :active ? super() : reload
64
80
  end
65
81
 
66
82
  def reload
83
+ return unless manage?
84
+
67
85
  run('nginx -s reload')
68
86
  end
69
87
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: potluck-nginx
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nate Pickens
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-12-13 00:00:00.000000000 Z
11
+ date: 2021-12-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: potluck
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.0.2
19
+ version: 0.0.3
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.0.2
26
+ version: 0.0.3
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement