summaryrefslogtreecommitdiff
path: root/CHANGELOG.md
diff options
context:
space:
mode:
authorValery Piashchynski <[email protected]>2021-10-06 22:35:30 +0300
committerGitHub <[email protected]>2021-10-06 22:35:30 +0300
commit98f4e867af8e4dce3d8951227db8bd1268984551 (patch)
treeddf182386f78a64210e580bcf7a0c8ab34cf6712 /CHANGELOG.md
parent59e29a90cfa6f16c790d16ac1f03a0f9f82b73d6 (diff)
parentb25e0bcc94b237b3fabf6f582a3864efd300033b (diff)
[#823]: feat(pipes,sockets): allow running scripts in the server's command
## Description of Changes - ✏️ Remove requirement to share the same PID for the worker and root process. According to the fork (and to be precise, `fork-exec` in go) man pages documentation, ```text The child inherits copies of the parent's set of open file descriptors. Each file descriptor in the child refers to the same open file description (see open(2)) as the corresponding file descriptor in the parent. This means that the two file descriptors share open file status flags, file offset, and signal-driven I/O attributes (see the description of F_SETOWN and F_SETSIG in fcntl(2)). ``` - ✏️ Server plugin can accept scripts (sh, bash, etc) in it's `command` configuration key: ```yaml server: command: "./script.sh OR sh script.sh" <--- UPDATED relay: "pipes" relay_timeout: "20s" ``` The script should start a worker as the last command. For the `pipes`, scripts should not contain programs, which can close `stdin`, `stdout` or `stderr`.
Diffstat (limited to 'CHANGELOG.md')
-rw-r--r--CHANGELOG.md66
1 files changed, 41 insertions, 25 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 09f40dd3..46de41cc 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -73,39 +73,55 @@ ssl:
]
```
-- ✏️ Add a new option to the `service` plugin. Service plugin will not use std RR logger as output in the flavor of raw output.
+- ✏️ Add a new option to the `log` plugin to configure the line ending. By default, used `\n`.
-New options:
+**New option**:
```yaml
-# Service plugin settings
-service:
- some_service_1:
+# Logs plugin settings
+logs:
(....)
- # Console output
+ # Line ending
#
- # Default: stderr. Available options: stderr, stdout
- output: "stderr"
-
- # Endings for the stderr/stdout output
- #
- # Default: "\n". Available options: any.
+ # Default: "\n".
line_ending: "\n"
-
- # Color for regular output
- #
- # Default: none. Available options: white, red, green, yellow, blue, magenta
- color: "green"
-
- # Color for the process errors
- #
- # Default: none. Available options: white, red, green, yellow, blue, magenta
- err_color: "red"
```
-**!!!**
-Be careful, now, there is no logger plugin dependency for the `service` plugin. That means, that if you used `json` output, now,
-you need to serialize data on the `executable` (in the command) side.
+- ✏️ [Access log support](https://github.com/spiral/roadrunner-plugins/issues/34) at the `Info` log level.
+```yaml
+http:
+ address: 127.0.0.1:55555
+ max_request_size: 1024
+ access_logs: true <-------- Access Logs ON/OFF
+ middleware: []
+
+ pool:
+ num_workers: 2
+ max_jobs: 0
+ allocate_timeout: 60s
+ destroy_timeout: 60s
+```
+- ✏️ HTTP middleware to handle Symfony's `X-Sendfile` [header](https://github.com/spiral/roadrunner-plugins/issues/9).
+```yaml
+http:
+ address: 127.0.0.1:44444
+ max_request_size: 1024
+ middleware: ["sendfile"] <----- NEW MIDDLEWARE
+
+ pool:
+ num_workers: 2
+ max_jobs: 0
+ allocate_timeout: 60s
+ destroy_timeout: 60s
+```
+- ✏️ Server plugin can accept scripts (sh, bash, etc) in it's `command` configuration key:
+```yaml
+server:
+ command: "./script.sh OR sh script.sh" <--- UPDATED
+ relay: "pipes"
+ relay_timeout: "20s"
+```
+The script should start a worker as the last command. For the `pipes`, scripts should not contain programs, which can close `stdin`, `stdout` or `stderr`.
## 🩹 Fixes: