puma-daemon 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 181a06dc6b28bae8af85a9eaa03ad0e8eb5c0a147647b10907022db5d596b74e
4
- data.tar.gz: 21907cb861b6fb67538502fd70fa56d6c3038997869af268a8891de93f0f728c
3
+ metadata.gz: 354e2bfa89bfc2998f3b70ecd66a9854f0e6ae181f4d58646571afd50c8d85f9
4
+ data.tar.gz: e9c5d6f64616786ffb204e156546d320afe0cfbdf6a13045156d37b850436b21
5
5
  SHA512:
6
- metadata.gz: d1c287db4aaa4a4ec29abb422ed9800a31ecc32891a600ced60bf796c192d08eb7e75642a7b8137afcb283fbd1ae2872e4b02124f7ec3bbb09b8072ce72f867b
7
- data.tar.gz: c26fe226d00997d7432ef73fadaf44d70719a0c20dc5efdf6c55062dcc6df8e00b69b5794e1b94591c7625e255574135d5d36c2bc4747599e39f8c510bd3e3a7
6
+ metadata.gz: 478d5657a49012c23b2b215aaa172f2e56b81116570d98dc78c980da0cf58c6b886b334385f41c4eff3eb592534ae27c68b47e4c700137dde2d87927259ac7ab
7
+ data.tar.gz: 9d95ce3e1b76e153e2eee51e6d3f007aca208afd7ce907d2ee23d07bbc90f6f41e8943964d7800d848fda3c97e1cd400a3cee4f4af5fc646f65f51ef80c1999a
data/.envrc ADDED
@@ -0,0 +1,2 @@
1
+ alias be='bundle exec'
2
+ alias bep='bundle exec puma -C config/puma.rb --debug -v --redirect-stderr puma.stderr --redirect-stdout puma.stdout spec/rackup/bind.ru'
data/.gitignore CHANGED
@@ -1,14 +1,26 @@
1
+ !/log/.keep
2
+ !/tmp/.keep
3
+ !/tmp/pids/
4
+ !/tmp/pids/.keep
5
+ *.stderr
6
+ *.stdout
7
+ .byebug_history
8
+ .idea/
9
+ .rspec_status
10
+ .ruby-version
11
+ /.bundle
12
+ **/.bundle
1
13
  /.bundle/
2
14
  /.yardoc
15
+ /Gemfile.lock
3
16
  /_yardoc/
17
+ **/config/master.key
4
18
  /coverage/
5
19
  /doc/
20
+ /log/.keep
6
21
  /pkg/
22
+ /public/assets
7
23
  /spec/reports/
8
- /tmp/
9
- .idea/
10
- # rspec failure tracking
11
- .rspec_status
12
- .ruby-version
13
- /Gemfile.lock
14
-
24
+ **/tmp/
25
+ /tmp/*
26
+ /tmp/pids/*
data/.rubocop.yml CHANGED
@@ -19,3 +19,7 @@ Style/StringLiteralsInInterpolation:
19
19
 
20
20
  Layout/LineLength:
21
21
  Max: 120
22
+
23
+ Naming/FileName:
24
+ Exclude:
25
+ - 'lib/puma-daemon.rb'
data/CHANGELOG.md ADDED
@@ -0,0 +1,13 @@
1
+ # Changelog
2
+
3
+ ## [v0.1.1](https://github.com/kigster/puma-daemon/tree/v0.1.1) (2021-01-24)
4
+
5
+ [Full Changelog](https://github.com/kigster/puma-daemon/compare/v0.1.0...v0.1.1)
6
+
7
+ ## [v0.1.0](https://github.com/kigster/puma-daemon/tree/v0.1.0) (2021-01-18)
8
+
9
+ [Full Changelog](https://github.com/kigster/puma-daemon/compare/647f057123f45aecdb5da1d0567b92c72114cd8f...v0.1.0)
10
+
11
+
12
+
13
+ \* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
data/Dockerfile.build ADDED
@@ -0,0 +1,85 @@
1
+ # Thi Dockerfile is provided so that we can eventually build
2
+ # Linux support for the bin/setup script.
3
+ #
4
+ # vim: ft=Dockerfile
5
+ #
6
+ # © 2021 Konstantin Gredeskoul, All rights reserved, MIT License.
7
+ #
8
+ # docker build . -t puma-daemon:latest
9
+ # docker run -it puma-daemon:latest
10
+ #
11
+ # Once in the container:
12
+ #
13
+ # # Run specs in Linux:
14
+ # $ specs
15
+ #
16
+ # # Test encryption:
17
+ # $ encrypt word
18
+ #
19
+
20
+ FROM ubuntu:latest
21
+
22
+ RUN apt-get update -y && \
23
+ apt-get install -yqq \
24
+ build-essential \
25
+ git \
26
+ python3-pip \
27
+ libssl-dev
28
+
29
+ ENV TERM=xterm-256color \
30
+ LC_ALL=en_US.UTF-8 \
31
+ LANG=en_US.UTF-8 \
32
+ LANGUAGE=en_US.UTF-8 \
33
+ USER=root \
34
+ HOME=/root \
35
+ DEBIAN_FRONTEND=noninteractive \
36
+ DEBCONF_NONINTERACTIVE_SEEN=true \
37
+ TZ=Pacific/Los_Angeles
38
+ RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
39
+
40
+ RUN apt-get update -y && \
41
+ apt-get install -yqq locales
42
+
43
+ RUN locale-gen en_US.UTF-8
44
+
45
+ RUN apt-get update -y && \
46
+ apt-get install -yqq \
47
+ silversearcher-ag \
48
+ curl \
49
+ vim \
50
+ htop \
51
+ direnv \
52
+ sudo
53
+
54
+
55
+ ENV PATH="/root/.rbenv/bin:/root/.rbenv/shims:$PATH"
56
+
57
+ # Install rbenv in ~/.rbenv
58
+ # https://github.com/rbenv/rbenv-installer#rbenv-installer
59
+ RUN /bin/bash -c 'curl -fsSL https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-installer | bash || true'
60
+ RUN /bin/bash -c 'eval "$(rbenv init -)"; rbenv install -sv 3.0.0 && rbenv global 3.0.0'
61
+
62
+ ENV SHELL_INIT="${HOME}/.bashrc"
63
+
64
+ RUN set -e && \
65
+ cd ${HOME} && \
66
+ git clone https://github.com/kigster/bash-it .bash_it && \
67
+ cd .bash_it && \
68
+ ./install.sh -s && \
69
+ sed -i'' -E 's/bobby/powerline-multiline/g' ${SHELL_INIT} && \
70
+ echo 'eval "$(direnv hook bash)"' >>${SHELL_INIT} && \
71
+ gem install sym --no-document >/dev/null
72
+
73
+ RUN echo 'powerline.prompt.set-right-to ruby go user_info ssh clock' >>${SHELL_INIT} && \
74
+ echo 'export POWERLINE_PROMPT_CHAR="#"' >>${SHELL_INIT}
75
+
76
+ ENV PUMAD_HOME=/app/puma-daemon
77
+ RUN mkdir -p ${PUMAD_HOME}
78
+ COPY . ${PUMAD_HOME}
79
+ WORKDIR ${PUMAD_HOME}
80
+ RUN bundle install
81
+ RUN echo "source ${PUMAD_HOME}/.envrc" >>${SHELL_INIT}
82
+ RUN bash -c "cd ${PUMAD_HOME}; direnv allow . "
83
+ ENTRYPOINT /bin/bash -l
84
+
85
+
@@ -0,0 +1,71 @@
1
+ # Linux support for the bin/setup script.
2
+ #
3
+ # vim: ft=Dockerfile
4
+ #
5
+ # © 2021 Konstantin Gredeskoul, All rights reserved, MIT License.
6
+ #
7
+ # docker build . -t ruby-puma-daemon:latest
8
+ # docker run -it ruby-puma-daemon:latest
9
+ #
10
+ # Once in the container:
11
+ #
12
+ # # Run specs in Linux:
13
+ # $ bundle exec rspec
14
+ # $ bundle exec puma -C config/puma.rb spec/fixtures/lobster.ru
15
+ #
16
+ FROM ruby:3.0.0
17
+
18
+ RUN apt-get update -y && \
19
+ apt-get install -yqq \
20
+ build-essential \
21
+ git
22
+
23
+ ENV TERM=xterm-256color \
24
+ LC_ALL=en_US.UTF-8 \
25
+ LANG=en_US.UTF-8 \
26
+ LANGUAGE=en_US.UTF-8 \
27
+ USER=root \
28
+ HOME=/root \
29
+ DEBIAN_FRONTEND=noninteractive \
30
+ DEBCONF_NONINTERACTIVE_SEEN=true \
31
+ TZ=Pacific/Los_Angeles
32
+
33
+ RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
34
+
35
+ RUN apt-get update -y && \
36
+ apt-get install -yqq locales
37
+
38
+ RUN locale-gen en_US.UTF-8
39
+
40
+ RUN apt-get update -y && \
41
+ apt-get install -yqq \
42
+ silversearcher-ag \
43
+ curl \
44
+ vim \
45
+ htop \
46
+ direnv \
47
+ sudo
48
+
49
+ ENV SHELL_INIT="${HOME}/.bashrc"
50
+
51
+ RUN set -e && \
52
+ cd ${HOME} && \
53
+ git clone https://github.com/kigster/bash-it .bash_it && \
54
+ cd .bash_it && \
55
+ ./install.sh -s && \
56
+ sed -i'' -E 's/bobby/powerline-multiline/g' ${SHELL_INIT} && \
57
+ echo 'eval "$(direnv hook bash)"' >>${SHELL_INIT} && \
58
+ gem install sym --no-document >/dev/null
59
+
60
+ RUN echo 'powerline.prompt.set-right-to ruby go user_info ssh clock' >>${SHELL_INIT} && \
61
+ echo 'export POWERLINE_PROMPT_CHAR="#"' >>${SHELL_INIT}
62
+
63
+ ENV PUMAD_HOME=/app/puma-daemon
64
+ RUN mkdir -p ${PUMAD_HOME}
65
+ WORKDIR ${PUMAD_HOME}
66
+ COPY . ${PUMAD_HOME}
67
+ RUN test -f .envrc && direnv allow . || true
68
+ RUN bundle install
69
+
70
+ ENTRYPOINT /bin/bash -l
71
+
data/Gemfile CHANGED
@@ -6,7 +6,6 @@ source 'https://rubygems.org'
6
6
  gemspec
7
7
 
8
8
  gem 'rake', '~> 13.0'
9
-
10
9
  group :test do
11
10
  gem 'codecov', require: false
12
11
  gem 'rspec', '~> 3.0'
data/Makefile ADDED
@@ -0,0 +1,31 @@
1
+ # vim: tabstop=8
2
+ # vim: shiftwidth=8
3
+ # vim: noexpandtab
4
+
5
+ # grep '^[a-z\-]*:' Makefile | cut -d: -f 1 | tr '\n' ' '
6
+ .PHONY: help docker-build docker-bash
7
+
8
+ RUBY_VERSION := $(cat .ruby-version)
9
+ OS := $(shell uname -s | tr '[:upper:]' '[:lower:]')
10
+
11
+ # see: https://stackoverflow.com/questions/18136918/how-to-get-current-relative-directory-of-your-makefile/18137056#18137056
12
+ MAKEFILE_PATH := $(abspath $(lastword $(MAKEFILE_LIST)))
13
+ CURRENT_DIR := $(notdir $(patsubst %/,%,$(dir $(MAKEFILE_PATH))))
14
+ PUMAD_HOME := $(shell dirname $(MAKEFILE_PATH))
15
+
16
+ help: ## Prints help message auto-generated from the comments.
17
+ @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
18
+
19
+ docker-build-ruby: ## Builds the Docker image by compiling ruby 3.0.0
20
+ @docker build -f Dockerfile.build -t puma-daemon:latest .
21
+
22
+ docker-download-ruby: ## Builds the Docker image by downloading ruby 3.0.0 image
23
+ @docker build -f Dockerfile.download -t puma-daemon:latest .
24
+
25
+ docker-build-run: docker-build-ruby ## Drops you into a BASH session on ubuntu with ruby 3.0.0
26
+ @docker run -it puma-daemon:latest
27
+
28
+ docker-download-run: docker-download-ruby ## Drops you into a BASH session on ubuntu with ruby 3.0.0
29
+ @docker run -it puma-daemon:latest
30
+
31
+
File without changes
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'puma/daemon'
4
+
5
+ # workers 3
6
+ threads 2, 8
7
+ port 3000
8
+ environment ENV['RAILS_ENV'] || 'production'
9
+ daemonize ENV['NO_DAEMON'] ? false : true
@@ -0,0 +1,3 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'puma/daemon'
data/lib/puma/daemon.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'puma'
3
4
  require 'puma/runner'
4
5
  require 'puma/single'
5
6
  require 'puma/cluster'
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Puma
4
4
  module Daemon
5
- VERSION = '0.1.1'
5
+ VERSION = '0.1.2'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: puma-daemon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Konstantin Gredeskoul
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-01-24 00:00:00.000000000 Z
11
+ date: 2021-03-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: puma
@@ -153,19 +153,26 @@ executables:
153
153
  extensions: []
154
154
  extra_rdoc_files: []
155
155
  files:
156
+ - ".envrc"
156
157
  - ".github/workflows/main.yml"
157
158
  - ".gitignore"
158
159
  - ".rspec"
159
160
  - ".rubocop.yml"
160
161
  - ".rubocop_todo.yml"
162
+ - CHANGELOG.md
163
+ - Dockerfile.build
164
+ - Dockerfile.download
161
165
  - Gemfile
162
166
  - LICENSE.txt
167
+ - Makefile
163
168
  - README.adoc
164
169
  - Rakefile
165
170
  - bin/console
166
171
  - bin/setup
167
- - config/puma.rb
172
+ - config/puma_cluster.rb
173
+ - config/puma_single.rb
168
174
  - exe/pumad
175
+ - lib/puma-daemon.rb
169
176
  - lib/puma/daemon.rb
170
177
  - lib/puma/daemon/cli.rb
171
178
  - lib/puma/daemon/configuration.rb
@@ -195,7 +202,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
195
202
  - !ruby/object:Gem::Version
196
203
  version: '0'
197
204
  requirements: []
198
- rubygems_version: 3.1.4
205
+ rubygems_version: 3.2.13
199
206
  signing_key:
200
207
  specification_version: 4
201
208
  summary: Restore somewhat Puma's ability to self-daemonize, since Puma 5.0 dropped