/
process-type-hup.t
73 lines (56 loc) · 1.63 KB
/
process-type-hup.t
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# vim:set ft= ts=4 sw=4 et fdm=marker:
use lib '.';
use t::TestCore::Stream;
repeat_each(2);
plan tests => repeat_each() * (blocks() * 4);
add_block_preprocessor(sub {
my $block = shift;
my $stream_config = $block->stream_config || '';
$stream_config .= <<_EOC_;
lua_package_path '$t::TestCore::Stream::lua_package_path';
init_by_lua_block {
$t::TestCore::Stream::init_by_lua_block
$init_by_lua_block
local process = require "ngx.process"
local ok, err = process.enable_privileged_agent()
if not ok then
ngx.log(ngx.ERR, "enable_privileged_agent failed: ", err)
end
}
init_worker_by_lua_block {
local base = require "resty.core.base"
local typ = require "ngx.process".type
if typ() == "privileged agent" then
ngx.log(ngx.WARN, "process type: ", typ())
end
}
_EOC_
$block->set_value("stream_config", $stream_config);
});
master_on();
check_accum_error_log();
run_tests();
__DATA__
=== TEST 1: sanity
--- stream_server_config
content_by_lua_block {
local typ = require "ngx.process".type
local f, err = io.open(ngx.config.prefix() .. "/logs/nginx.pid", "r")
if not f then
ngx.say("failed to open nginx.pid: ", err)
return
end
local pid = f:read()
-- ngx.say("master pid: [", pid, "]")
f:close()
ngx.say("type: ", typ())
os.execute("kill -HUP " .. pid)
}
--- stream_response
type: worker
--- error_log
init_worker_by_lua:6: process type: privileged
--- no_error_log
[error]
--- skip_nginx: 4: < 1.11.2
--- wait: 0.1