I need a tool or one-liner or whatever, which will export the entire server {...}
block containing the given domain.
For examples:
### 1)
cat conf.d/domains.conf
server {
include http.conf;
server_name example.com;
# [...]
}
server {
include https.conf;
server_name foo.com;
# [...]
}
server {
include https.conf;
server_name example.com;
# [...]
}
---
./script conf.d/domains.conf example.com
server {
include http.conf;
server_name example.com;
# [...]
}
server {
include https.conf;
server_name example.com;
# [...]
}
### 2)
cat conf.d/domains.conf
server {
include ssl.conf;
server_name example-foo.com;
# [...]
}
server {
include ssl.conf;
server_name example-bar.com
example.com
fake.domain.com;
location / {
return 204 "OK";
}
# [...]
}
server {
# include headers.conf;
include ssl.conf;
server_name example-baz.com example.com;
# [...]
}
server {
include ssl.conf;
root /var/www/;
server_name example-baz.com exampleee.com;
# [...]
}
---
./script conf.d/domains.conf example.com
server {
include ssl.conf;
server_name example-bar.com
example.com;
# [...]
}
server {
include ssl.conf;
server_name example-bar.com
example.com
fake.domain.com;
location / {
return 204 "OK";
}
# [...]
}
server {
# include headers.conf;
include ssl.conf;
server_name example-baz.com example.com;
# [...]
}
My config has a lot of lines and is divided into many external files.
Do you know the tools that do this? Or any suggestions?
Thanks!