#!/bin/bash

sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm
sudo yum update -y
sudo yum install dotnet-sdk-3.1 -y

wget https://keysystems.ru/files/web/INSTALL/WEB6-TEST/Stable/Linux/core.tar.gz
chmod ugo+rwx core.tar.gz
mkdir /etc/web_core
tar -C /etc/web_core/ -xvf core.tar.gz

sudo yum install -y libicu fontconfig harfbuzz freetype libgdiplus glibc glibc-devel

sudo yum -y install httpd
cd /etc/httpd/conf.modules.d/
echo -e  "<VirtualHost *:*>">web_next.conf
echo -e  "RequestHeader set "X-Forwarded-Proto" expr=%{REQUEST_SCHEME}">>web_next.conf
echo -e  "</VirtualHost>">>web_next.conf
echo -e  "<VirtualHost *:80>">>web_next.conf
echo -e  "ProxyPreserveHost On">>web_next.conf
echo -e  "ProxyPass / http://127.0.0.1:5000/">>web_next.conf
echo -e  "ProxyPassReverse / http://127.0.0.1:5001/">>web_next.conf
echo -e  "ServerName localhost">>web_next.conf
echo -e  "RewriteEngine on">>web_next.conf
echo -e  "RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC]">>web_next.conf
echo -e  "RewriteCond %{HTTP:CONNECTION} Upgrade$ [NC]">>web_next.conf
echo -e  "RewriteRule /(.*) ws://localhost:5000/$1 [P]">>web_next.conf
echo -e  "ErrorLog /var/log/httpd/web_next-error.log">>web_next.conf
echo -e  "CustomLog /var/log/httpd/web_next-access.log common">>web_next.conf
echo -e  "</VirtualHost>">>web_next.conf

cd /etc/httpd/conf
mv httpd.conf httpd_old.conf
echo -e "ServerName localhost\n">httpd.conf
cat httpd_old.conf>>httpd.conf
rm httpd_old.conf

cd /etc/systemd/system/
echo -e  "[Unit]">kestrel-web_next.service
echo -e  "Description=Example .NET Web API App running on RedOS 7.2">>kestrel-web_next.service
echo -e  "[Service]">>kestrel-web_next.service
echo -e  "WorkingDirectory=/etc/web_core/Publish/">>kestrel-web_next.service
echo -e  "ExecStart=/bin/dotnet /etc/web_core/Publish/web_core.dll">>kestrel-web_next.service
echo -e  "Restart=always">>kestrel-web_next.service
echo -e  "RestartSec=10">>kestrel-web_next.service
echo -e  "KillSignal=SIGINT">>kestrel-web_next.service
echo -e  "SyslogIdentifier=dotnet-example">>kestrel-web_next.service
echo -e  "User=root">>kestrel-web_next.service
echo -e  "Environment=ASPNETCORE_ENVIRONMENT=Production">>kestrel-web_next.service
echo -e  "[Install]">>kestrel-web_next.service
echo -e  "WantedBy=multi-user.target">>kestrel-web_next.service

firewall-cmd --add-port=5000/tcp -–permanent
firewall-cmd –-reload
firewall-cmd --add-port=80/tcp –-permanent
firewall-cmd –-reload

sudo systemctl enable kestrel-web_next
sudo systemctl start kestrel-web_next.service
sudo systemctl status kestrel-web_next.service
sudo systemctl enable httpd
sudo systemctl start httpd
sudo systemctl status httpd

/usr/sbin/setsebool -P httpd_can_network_connect 1
sudo systemctl restart httpd
sudo systemctl status httpd











