This commit is contained in:
Bozhidar 2024-05-15 01:30:35 +03:00
parent 6420e89858
commit f0deeb24b6
16 changed files with 45 additions and 41 deletions

View file

@ -8,7 +8,7 @@ steps:
- sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* - sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
- sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-* - sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
- yum update -y - yum update -y
- dnf -y install sudo wget - dnf -yq install sudo wget
- sudo wget -q -O - http://www.atomicorp.com/installers/atomic | sh - sudo wget -q -O - http://www.atomicorp.com/installers/atomic | sh
- mkdir /phyre-panel - mkdir /phyre-panel
@ -38,7 +38,7 @@ steps:
DEBIAN_FRONTEND: noninteractive DEBIAN_FRONTEND: noninteractive
commands: commands:
- apt-get update - apt-get update
- apt-get install -y libicu-dev sudo cron apt-utils -yqq daemonize dbus-user-session fontconfig rsync - apt-get install -yq libicu-dev sudo cron apt-utils -yqq daemonize dbus-user-session fontconfig rsync
- daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target - daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target
- mkdir /phyre-panel - mkdir /phyre-panel

View file

@ -10,7 +10,7 @@ steps:
- service mysql start - service mysql start
- service phyre start - service phyre start
- MAIN_REPO_DIR=$(pwd) - MAIN_REPO_DIR=$(pwd)
- apt-get install -y rsync - apt-get install -yq rsync
- cp /usr/local/phyre/web/phyre-config.ini /usr/local/phyre/phyre-config.ini.bak - cp /usr/local/phyre/web/phyre-config.ini /usr/local/phyre/phyre-config.ini.bak
- rm -rf /usr/local/phyre/web - rm -rf /usr/local/phyre/web
- cp -r $MAIN_REPO_DIR/web /usr/local/phyre/web - cp -r $MAIN_REPO_DIR/web /usr/local/phyre/web
@ -37,7 +37,7 @@ steps:
- export DEBIAN_FRONTEND=noninteractive - export DEBIAN_FRONTEND=noninteractive
- MAIN_REPO_DIR=$(pwd) - MAIN_REPO_DIR=$(pwd)
- apt-get update - apt-get update
- apt-get install -y libicu-dev sudo cron apt-utils -yqq daemonize dbus-user-session fontconfig rsync - apt-get install -yq libicu-dev sudo cron apt-utils -yqq daemonize dbus-user-session fontconfig rsync
- daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target - daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target
- ls -la - ls -la
@ -87,6 +87,6 @@ steps:
- mv clover.xml $MAIN_REPO_DIR/clover.xml - mv clover.xml $MAIN_REPO_DIR/clover.xml
- mv coverage.xml $MAIN_REPO_DIR/coverage.xml - mv coverage.xml $MAIN_REPO_DIR/coverage.xml
- cd $MAIN_REPO_DIR - cd $MAIN_REPO_DIR
- apt install -y pip - apt install -yq pip
- pip install codecov-cli - pip install codecov-cli
- codecovcli --verbose upload-process -t $CODECOV_TOKEN - codecovcli --verbose upload-process -t $CODECOV_TOKEN

View file

@ -11,7 +11,7 @@ steps:
commands: commands:
- MAIN_REPO_DIR=$(pwd) - MAIN_REPO_DIR=$(pwd)
- apt-get update - apt-get update
- apt-get install -y libicu-dev sudo cron apt-utils -yqq daemonize dbus-user-session fontconfig rsync - apt-get install -yq libicu-dev sudo cron apt-utils -yqq daemonize dbus-user-session fontconfig rsync
- daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target - daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target
- ls -la - ls -la
@ -60,6 +60,6 @@ steps:
- mv clover.xml $MAIN_REPO_DIR/clover.xml - mv clover.xml $MAIN_REPO_DIR/clover.xml
- mv coverage.xml $MAIN_REPO_DIR/coverage.xml - mv coverage.xml $MAIN_REPO_DIR/coverage.xml
- cd $MAIN_REPO_DIR - cd $MAIN_REPO_DIR
- apt install -y pip - apt install -yq pip
- pip install codecov-cli - pip install codecov-cli
- codecovcli --verbose upload-process -t $CODECOV_TOKEN - codecovcli --verbose upload-process -t $CODECOV_TOKEN

View file

@ -23,27 +23,27 @@ jobs:
run: | run: |
ls -la ls -la
sudo mkdir /phyre-panel sudo mkdir /phyre-panel
sudo cp installers/${{ matrix.os }}/install-partial/install_base.sh /phyre-panel/install_base.sh sudo cp installers/${{ matrix.os }}/install-partial/install_base.sh /phyre-panel/install_base.sh
sudo chmod +x /phyre-panel/install_base.sh sudo chmod +x /phyre-panel/install_base.sh
sudo /phyre-panel/install_base.sh sudo /phyre-panel/install_base.sh
sudo cp installers/${{ matrix.os }}/install-partial/install_web.sh /phyre-panel/install_web.sh sudo cp installers/${{ matrix.os }}/install-partial/install_web.sh /phyre-panel/install_web.sh
sudo chmod +x /phyre-panel/install_web.sh sudo chmod +x /phyre-panel/install_web.sh
- name: Run Code Coverage - name: Run Code Coverage
run: | run: |
sudo cp -r web /usr/local/phyre/web/ sudo cp -r web /usr/local/phyre/web/
cd /usr/local/phyre/web/ cd /usr/local/phyre/web/
ls -la ls -la
sudo wget https://getcomposer.org/download/latest-stable/composer.phar sudo wget https://getcomposer.org/download/latest-stable/composer.phar
sudo COMPOSER_ALLOW_SUPERUSER=1 phyre-php composer.phar install sudo COMPOSER_ALLOW_SUPERUSER=1 phyre-php composer.phar install
sudo /phyre-panel/install_web.sh sudo /phyre-panel/install_web.sh
sudo apt-get install autoconf build-essential -y sudo apt-get install autoconf build-essential -yq
sudo mkdir -p /usr/local/phyre/php-xdebug sudo mkdir -p /usr/local/phyre/php-xdebug
cd /usr/local/phyre/php-xdebug cd /usr/local/phyre/php-xdebug
sudo wget http://xdebug.org/files/xdebug-3.3.2.tgz sudo wget http://xdebug.org/files/xdebug-3.3.2.tgz
@ -52,17 +52,17 @@ jobs:
sudo /usr/local/phyre/php/bin/phpize sudo /usr/local/phyre/php/bin/phpize
sudo ./configure --enable-xdebug --with-php-config=/usr/local/phyre/php/bin/php-config sudo ./configure --enable-xdebug --with-php-config=/usr/local/phyre/php/bin/php-config
sudo make sudo make
sudo mkdir -p /usr/local/phyre/php/zend-xdebug sudo mkdir -p /usr/local/phyre/php/zend-xdebug
sudo cp modules/xdebug.so /usr/local/phyre/php/zend-xdebug/xdebug.so sudo cp modules/xdebug.so /usr/local/phyre/php/zend-xdebug/xdebug.so
sudo chmod 777 /usr/local/phyre/php/zend-xdebug/xdebug.so sudo chmod 777 /usr/local/phyre/php/zend-xdebug/xdebug.so
sudo cp /usr/local/phyre/web/tests/xdebug-php-ini.txt /usr/local/phyre/php/bin/php.ini sudo cp /usr/local/phyre/web/tests/xdebug-php-ini.txt /usr/local/phyre/php/bin/php.ini
sudo chmod 777 /usr/local/phyre/php/bin/php.ini sudo chmod 777 /usr/local/phyre/php/bin/php.ini
phyre-php -v phyre-php -v
cd /usr/local/phyre/web/ cd /usr/local/phyre/web/
sudo chmod -R 777 vendor sudo chmod -R 777 vendor
apt install composer -y apt install composer -y

View file

@ -2,7 +2,7 @@
FROM ubuntu:22.04 AS production FROM ubuntu:22.04 AS production
RUN apt-get update && apt-get install -y wget RUN apt-get update && apt-get install -yq wget
RUN ls -la RUN ls -la
RUN wget https://raw.githubusercontent.com/PhyreApps/PhyrePanel/main/installers/install.sh -O phyre-install.sh RUN wget https://raw.githubusercontent.com/PhyreApps/PhyrePanel/main/installers/install.sh -O phyre-install.sh
RUN chmod +x phyre-install.sh RUN chmod +x phyre-install.sh

View file

@ -35,7 +35,7 @@ DEPENDENCIES_LIST=(
) )
# Check if the dependencies are installed # Check if the dependencies are installed
for DEPENDENCY in "${DEPENDENCIES_LIST[@]}"; do for DEPENDENCY in "${DEPENDENCIES_LIST[@]}"; do
yum install -y $DEPENDENCY yum install -yq $DEPENDENCY
done done
# Start MySQL # Start MySQL

View file

@ -35,7 +35,7 @@ DEPENDENCIES_LIST=(
) )
# Check if the dependencies are installed # Check if the dependencies are installed
for DEPENDENCY in "${DEPENDENCIES_LIST[@]}"; do for DEPENDENCY in "${DEPENDENCIES_LIST[@]}"; do
apt install -y $DEPENDENCY apt install -yq $DEPENDENCY
done done
# Start MySQL # Start MySQL

View file

@ -35,7 +35,7 @@ DEPENDENCIES_LIST=(
) )
# Check if the dependencies are installed # Check if the dependencies are installed
for DEPENDENCY in "${DEPENDENCIES_LIST[@]}"; do for DEPENDENCY in "${DEPENDENCIES_LIST[@]}"; do
apt install -y $DEPENDENCY apt install -yq $DEPENDENCY
done done
# Start MySQL # Start MySQL

View file

@ -35,7 +35,7 @@ DEPENDENCIES_LIST=(
) )
# Check if the dependencies are installed # Check if the dependencies are installed
for DEPENDENCY in "${DEPENDENCIES_LIST[@]}"; do for DEPENDENCY in "${DEPENDENCIES_LIST[@]}"; do
apt install -y $DEPENDENCY apt install -yq $DEPENDENCY
done done
# Start MySQL # Start MySQL

View file

@ -35,7 +35,7 @@ DEPENDENCIES_LIST=(
) )
# Check if the dependencies are installed # Check if the dependencies are installed
for DEPENDENCY in "${DEPENDENCIES_LIST[@]}"; do for DEPENDENCY in "${DEPENDENCIES_LIST[@]}"; do
apt install -y $DEPENDENCY apt install -yq $DEPENDENCY
done done
# Start MySQL # Start MySQL

View file

@ -21,7 +21,7 @@ DEPENDENCIES_LIST=(
) )
for DEPENDENCY in "${DEPENDENCIES_LIST[@]}"; do for DEPENDENCY in "${DEPENDENCIES_LIST[@]}"; do
sudo apt install -y $DEPENDENCY sudo apt install -yq $DEPENDENCY
done done
echo "Done!" echo "Done!"

View file

@ -19,13 +19,13 @@ class DovecotInstaller
$commands[] = 'echo "Installing dovecot..."'; $commands[] = 'echo "Installing dovecot..."';
// postfix - internet site // postfix - internet site
$commands[] = 'apt-get install -y telnet exim4 dovecot-core dovecot-imapd dovecot-pop3d dovecot-lmtpd'; $commands[] = 'apt-get install -yq telnet exim4 dovecot-core dovecot-imapd dovecot-pop3d dovecot-lmtpd';
// /var/lib/roundcube // /var/lib/roundcube
// wget https://github.com/roundcube/roundcubemail/releases/download/1.6.0/roundcubemail-1.6.0-complete.tar.gz // wget https://github.com/roundcube/roundcubemail/releases/download/1.6.0/roundcubemail-1.6.0-complete.tar.gz
// $commands[] = 'apt-get install -y roundcube roundcube-core roundcube-mysql roundcube-plugins'; // $commands[] = 'apt-get install -yq roundcube roundcube-core roundcube-mysql roundcube-plugins';
$shellFileContent = ''; $shellFileContent = '';
foreach ($commands as $command) { foreach ($commands as $command) {

View file

@ -21,7 +21,8 @@ class NodeJsInstaller
public function install() public function install()
{ {
$commands = []; $commands = [];
$commands[] = 'apt-get install -y npm'; $commands[] = 'export DEBIAN_FRONTEND=noninteractive';
$commands[] = 'apt-get install -yq npm';
$commands[] = 'curl -sL https://deb.nodesource.com/setup_20.x -o /tmp/nodesource_setup.sh'; $commands[] = 'curl -sL https://deb.nodesource.com/setup_20.x -o /tmp/nodesource_setup.sh';
$commands[] = 'bash /tmp/nodesource_setup.sh'; $commands[] = 'bash /tmp/nodesource_setup.sh';
$commands[] = 'apt-get install nodejs -y'; $commands[] = 'apt-get install nodejs -y';
@ -30,7 +31,7 @@ class NodeJsInstaller
$commands[] = 'curl https://oss-binaries.phusionpassenger.com/auto-software-signing-gpg-key.txt | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/phusion.gpg >/dev/null'; $commands[] = 'curl https://oss-binaries.phusionpassenger.com/auto-software-signing-gpg-key.txt | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/phusion.gpg >/dev/null';
$commands[] = "sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger jammy main > /etc/apt/sources.list.d/passenger.list'"; $commands[] = "sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger jammy main > /etc/apt/sources.list.d/passenger.list'";
$commands[] = 'apt-get update'; $commands[] = 'apt-get update';
$commands[] = 'sudo apt-get install -y libapache2-mod-passenger'; $commands[] = 'sudo apt-get install -yq libapache2-mod-passenger';
$commands[] = 'sudo a2enmod passenger'; $commands[] = 'sudo a2enmod passenger';
$commands[] = 'sudo service apache2 restart'; $commands[] = 'sudo service apache2 restart';

View file

@ -27,7 +27,8 @@ class PHPInstaller
{ {
$commands = []; $commands = [];
$commands[] = 'echo "Starting PHP Installation..."'; $commands[] = 'echo "Starting PHP Installation..."';
$commands[] = 'apt-get install -y sudo'; $commands[] = 'export DEBIAN_FRONTEND=noninteractive';
$commands[] = 'apt-get install -yq sudo';
$commands[] = 'add-apt-repository -y ppa:ondrej/php'; $commands[] = 'add-apt-repository -y ppa:ondrej/php';
$commands[] = 'add-apt-repository -y ppa:ondrej/apache2'; $commands[] = 'add-apt-repository -y ppa:ondrej/apache2';
@ -51,7 +52,7 @@ class PHPInstaller
$dependencies = implode(' ', $dependenciesList); $dependencies = implode(' ', $dependenciesList);
$commands[] = 'apt-get install -y ' . $dependencies; $commands[] = 'apt-get install -yq ' . $dependencies;
$lastItem = end($this->phpVersions); $lastItem = end($this->phpVersions);
foreach ($this->phpVersions as $phpVersion) { foreach ($this->phpVersions as $phpVersion) {

View file

@ -21,19 +21,20 @@ class PythonInstaller
public function install() public function install()
{ {
$commands = []; $commands = [];
$commands[] = 'export DEBIAN_FRONTEND=noninteractive';
foreach ($this->pythonVersions as $pythonVersion) { foreach ($this->pythonVersions as $pythonVersion) {
$commands[] = 'apt-get install -y python' . $pythonVersion; $commands[] = 'apt-get install -yq python' . $pythonVersion;
$commands[] = 'apt-get install -y python' . $pythonVersion . '-dev'; $commands[] = 'apt-get install -yq python' . $pythonVersion . '-dev';
$commands[] = 'apt-get install -y python' . $pythonVersion . '-venv'; $commands[] = 'apt-get install -yq python' . $pythonVersion . '-venv';
$commands[] = 'apt-get install -y python' . $pythonVersion . '-setuptools'; $commands[] = 'apt-get install -yq python' . $pythonVersion . '-setuptools';
$commands[] = 'apt-get install -y python' . $pythonVersion . '-wheel'; $commands[] = 'apt-get install -yq python' . $pythonVersion . '-wheel';
} }
// Install Apache Passenger // Install Apache Passenger
$commands[] = 'curl https://oss-binaries.phusionpassenger.com/auto-software-signing-gpg-key.txt | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/phusion.gpg >/dev/null'; $commands[] = 'curl https://oss-binaries.phusionpassenger.com/auto-software-signing-gpg-key.txt | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/phusion.gpg >/dev/null';
$commands[] = "sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger jammy main > /etc/apt/sources.list.d/passenger.list'"; $commands[] = "sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger jammy main > /etc/apt/sources.list.d/passenger.list'";
$commands[] = 'apt-get update'; $commands[] = 'apt-get update';
$commands[] = 'sudo apt-get install -y libapache2-mod-passenger'; $commands[] = 'sudo apt-get install -yq libapache2-mod-passenger';
$commands[] = 'sudo a2enmod passenger'; $commands[] = 'sudo a2enmod passenger';
$commands[] = 'sudo service apache2 restart'; $commands[] = 'sudo service apache2 restart';

View file

@ -21,17 +21,18 @@ class RubyInstaller
public function install() public function install()
{ {
$commands = []; $commands = [];
$commands[] = 'export DEBIAN_FRONTEND=noninteractive';
foreach ($this->rubyVersions as $rubyVersion) { foreach ($this->rubyVersions as $rubyVersion) {
$commands[] = 'apt-get install -y ruby' . $rubyVersion; $commands[] = 'apt-get install -yq ruby' . $rubyVersion;
$commands[] = 'apt-get install -y ruby' . $rubyVersion . '-dev'; $commands[] = 'apt-get install -yq ruby' . $rubyVersion . '-dev';
$commands[] = 'apt-get install -y ruby' . $rubyVersion . '-bundler'; $commands[] = 'apt-get install -yq ruby' . $rubyVersion . '-bundler';
} }
// Install Apache Passenger // Install Apache Passenger
$commands[] = 'curl https://oss-binaries.phusionpassenger.com/auto-software-signing-gpg-key.txt | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/phusion.gpg >/dev/null'; $commands[] = 'curl https://oss-binaries.phusionpassenger.com/auto-software-signing-gpg-key.txt | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/phusion.gpg >/dev/null';
$commands[] = "sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger jammy main > /etc/apt/sources.list.d/passenger.list'"; $commands[] = "sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger jammy main > /etc/apt/sources.list.d/passenger.list'";
$commands[] = 'apt-get update'; $commands[] = 'apt-get update';
$commands[] = 'sudo apt-get install -y libapache2-mod-passenger'; $commands[] = 'sudo apt-get install -yq libapache2-mod-passenger';
$commands[] = 'sudo a2enmod passenger'; $commands[] = 'sudo a2enmod passenger';
$commands[] = 'sudo service apache2 restart'; $commands[] = 'sudo service apache2 restart';