Proxy integration tests (#228)
* cicd: Proxies included in integration testing * cicd: proxy configs for integration testing
This commit is contained in:
parent
c12431d8a3
commit
917a0469d8
|
|
@ -2,6 +2,11 @@ default:
|
||||||
npm install --no-fund
|
npm install --no-fund
|
||||||
./node_modules/.bin/mocha
|
./node_modules/.bin/mocha
|
||||||
|
|
||||||
|
nginx:
|
||||||
|
podman-compose up -d nginx
|
||||||
|
|
||||||
|
clean:
|
||||||
|
podman-compose down
|
||||||
|
|
||||||
getsnapshot:
|
getsnapshot:
|
||||||
rm -rf /opt/OliveTin-snapshot/*
|
rm -rf /opt/OliveTin-snapshot/*
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,17 @@
|
||||||
|
---
|
||||||
|
version: "3.8"
|
||||||
|
services:
|
||||||
|
nginx:
|
||||||
|
container_name: nginx
|
||||||
|
image: docker.io/nginx
|
||||||
|
volumes:
|
||||||
|
- ./proxies/nginx/:/etc/nginx/
|
||||||
|
ports:
|
||||||
|
- "8443:8443"
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- otproxy
|
||||||
|
|
||||||
|
networks:
|
||||||
|
otproxy:
|
||||||
|
name: otproxy
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
http://olivetin.example.com {
|
||||||
|
reverse_proxy * http://localhost:1337
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
frontend cleartext_frontend
|
||||||
|
bind 0.0.0.0:80
|
||||||
|
|
||||||
|
option httplog
|
||||||
|
|
||||||
|
use_backend be_olivetin_webs if { hdr(Host) -i olivetin.example.com && path_beg /websocket }
|
||||||
|
use_backend be_olivetin_http if { hdr(Host) -i olivetin.example.com }
|
||||||
|
|
||||||
|
backend be_olivetin_http
|
||||||
|
server olivetinServer 127.0.0.1:1337 check
|
||||||
|
|
||||||
|
backend be_olivetin_webs
|
||||||
|
timeout tunnel 1h
|
||||||
|
option http-server-close
|
||||||
|
server olivetinServer 127.0.0.1:1337
|
||||||
|
|
@ -0,0 +1,9 @@
|
||||||
|
<VirtualHost *:80>
|
||||||
|
ServerName olivetin.example.com
|
||||||
|
ProxyPass / http://localhost:1337/
|
||||||
|
ProxyPassReverse / http://localhost:1337/
|
||||||
|
|
||||||
|
RewriteEngine On
|
||||||
|
RewriteCond %{REQUEST_URI} ^/websocket
|
||||||
|
RewriteRule /(.) ws://localhost:1337/websocket [P,L]
|
||||||
|
</VirtualHost>
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
server {
|
||||||
|
listen 8443 ssl;
|
||||||
|
|
||||||
|
ssl_certificate "/etc/nginx/conf.d/server.crt";
|
||||||
|
ssl_certificate_key "/etc/nginx/conf.d/server.key";
|
||||||
|
|
||||||
|
access_log /var/log/nginx/ot.access.log main;
|
||||||
|
error_log /var/log/nginx/ot.error.log notice;
|
||||||
|
|
||||||
|
server_name olivetin.example.com;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://host.containers.internal:1337/;
|
||||||
|
proxy_redirect http://host.containers.internal:1337/ http://host.containers.internal/OliveTin/;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /websocket {
|
||||||
|
proxy_set_header Upgrade "websocket";
|
||||||
|
proxy_set_header Connection "upgrade";
|
||||||
|
proxy_pass http://host.containers.internal:1337/websocket;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
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
|
||||||
|
GC7hzoakuA==
|
||||||
|
-----END CERTIFICATE-----
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
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
|
||||||
|
4yUUyGwTvAXkb/sR4+AhqzfChmbub6E=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,82 @@
|
||||||
|
# For more information on configuration, see:
|
||||||
|
# * Official English Documentation: http://nginx.org/en/docs/
|
||||||
|
# * Official Russian Documentation: http://nginx.org/ru/docs/
|
||||||
|
|
||||||
|
user nginx;
|
||||||
|
worker_processes auto;
|
||||||
|
error_log /var/log/nginx/error.log notice;
|
||||||
|
pid /run/nginx.pid;
|
||||||
|
|
||||||
|
# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
|
||||||
|
include /usr/share/nginx/modules/*.conf;
|
||||||
|
|
||||||
|
events {
|
||||||
|
worker_connections 1024;
|
||||||
|
}
|
||||||
|
|
||||||
|
http {
|
||||||
|
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
||||||
|
'$status $body_bytes_sent "$http_referer" '
|
||||||
|
'"$http_user_agent" "$http_x_forwarded_for"';
|
||||||
|
|
||||||
|
access_log /var/log/nginx/access.log main;
|
||||||
|
|
||||||
|
sendfile on;
|
||||||
|
tcp_nopush on;
|
||||||
|
keepalive_timeout 65;
|
||||||
|
types_hash_max_size 4096;
|
||||||
|
|
||||||
|
include /etc/nginx/mime.types;
|
||||||
|
default_type application/octet-stream;
|
||||||
|
|
||||||
|
# Load modular configuration files from the /etc/nginx/conf.d directory.
|
||||||
|
# See http://nginx.org/en/docs/ngx_core_module.html#include
|
||||||
|
# for more information.
|
||||||
|
include /etc/nginx/conf.d/*.conf;
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
server_name _;
|
||||||
|
root /usr/share/nginx/html;
|
||||||
|
|
||||||
|
# Load configuration files for the default server block.
|
||||||
|
include /etc/nginx/default.d/*.conf;
|
||||||
|
|
||||||
|
error_page 404 /404.html;
|
||||||
|
location = /404.html {
|
||||||
|
}
|
||||||
|
|
||||||
|
error_page 500 502 503 504 /50x.html;
|
||||||
|
location = /50x.html {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Settings for a TLS enabled server.
|
||||||
|
#
|
||||||
|
# server {
|
||||||
|
# listen 8443 ssl http2;
|
||||||
|
# listen [::]:8443 ssl http2;
|
||||||
|
# server_name _;
|
||||||
|
# root /usr/share/nginx/html;
|
||||||
|
#
|
||||||
|
# ssl_certificate "/etc/pki/nginx/server.crt";
|
||||||
|
# ssl_certificate_key "/etc/pki/nginx/private/server.key";
|
||||||
|
# ssl_session_cache shared:SSL:1m;
|
||||||
|
# ssl_session_timeout 10m;
|
||||||
|
# ssl_ciphers PROFILE=SYSTEM;
|
||||||
|
# ssl_prefer_server_ciphers on;
|
||||||
|
#
|
||||||
|
# # Load configuration files for the default server block.
|
||||||
|
# include /etc/nginx/default.d/*.conf;
|
||||||
|
#
|
||||||
|
# error_page 404 /404.html;
|
||||||
|
# location = /404.html {
|
||||||
|
# }
|
||||||
|
#
|
||||||
|
# error_page 500 502 503 504 /50x.html;
|
||||||
|
# location = /50x.html {
|
||||||
|
# }
|
||||||
|
# }
|
||||||
|
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue