- When restore a backup and change project_name or/and project_domain the script fails: - If the main domain detected is a root-domain like mydomain.com the "search and replace" will replace https://www.mydomain.com by https://www.test.mydomain.com - If decide to generate new certificate on root-domain, it fails to generate nginx config
- LetsEncrypt: when delete a certificate, nginx config fails.
- MySQL: delete user fails if was created different than "USER CREATE 'user'@'localhost'; - Maybe should save user data on /etc/brolit/domain_conf.json
- Cloudflare: if migrate a site with certificates generated by python3-certbot-cloudflare, the certbot will fail.
- Cloudflare: if proxy is enable on subdomain, change IP on record will fail.
- Nginx+WP: if website is configured with root domain like: DOMAIN.com infinite redirects will happen. So we need to check that before create nginx server configuration.
- Nginx-LetsEncrypt: regenerate nginx server configuration projects fails after running certbot.
- Notifications: Email HTML breaks sometimes.
- Core: need to check if select domain is a root domain or www domain, and ask if the user want to create a redirection.
- Cloudflare-Certbot: Change proxy mode with Cloudflare API when create a certificate with Cloudflare. Also, if you use www, it should ask you if you want to use the root domain too.
- Nginx-LetsEncrypt: When copy or generate a new nginx server configuration need to check certificates.
- LetsEncrypt: need a better way to re-install a certificate after a website migration.
- Project: on project delete, if the script can't find the user, maybe it will be better list all mysql users with database permision (before database deletion).
- Backups: When restore or create a new project and the db_user already exists, we need to ask what todo (new user or continue?).
- Borg support.
- Core: PHP composer support (installer).
- Core: Generate project config file (/etc/brolit/domain_conf.json).
- Postgres: Better postgres support. On "DATABASE MANAGEMENT" Menu, add Database Engine selection.
- Core: Docker support: backup and restore databases.
- Core: Flags should receive a json file to deploy or restore a new project.
- Core: On project creation/restore need to ask first the project stage, then project domain. If project stage != prod and subdomains is not containing the stage, need to suggest one. Example: test.landing.gauchocode.net OK Example 2: landing.gauchocode.net X (OK only if prod).
- Restore-database: granting privileges to user fails, database_name is empty.
- PHP: At BROLIT init, if php is installed, check default version. https://stackoverflow.com/questions/42619312/switch-php-versions-on-commandline-ubuntu-16-04
- Core: Resolve small "TODOs" comments.
- Core: Main menu should not show options that are disabled on .brolit_conf.json
- Core: Add borg & borgmatic support.
- Brolit-ui: Integration without brolit_lite.sh
- Notifications: Email notification after install a new project (with credentials info).
- Core: Implementation of brolit_project.json (intall, copy and restore).
- Core: Create warning if multiple WP installation found on backup to restore.
- Restore: Refactor function restore_config_files_from_dropbox.
- Nginx: Multidomain support for nginx.
- MySQL: Rename database (with and without WP).
- PHP: php_reconfigure maybe PHP config files need to have specific version template.
- Core: Create a way to check if nginx, php, and mysql are configured with the script recommendations.
- Core: Add support to create projects with a database on different server. https://www.digitalocean.com/community/tutorials/automating-the-deployment-of-a-scalable-wordpress-site https://spinupwp.com/scaling-wordpress-dedicated-database-server/
- Core: maybe with could ask for database user nomenclature. Today is "PROJECTNAME_user" and it could be "PROJECTNAME_PROJECTSTATE_user".
- Backups: Implement on restore_from_backup easy way to restore all sites.
- Scheduled options: backups, malware scans, image optimizations and wp actions (core and plugins updates, checksum and wp re-installation).
- Refactor of RESTORE_FROM_SOURCE and complete server config restore.
- Nginx: New option to put website on maintenance (maybe rename index.html/php and create a new HTML).
- LetsEncrypt: Add more options of certificates creation (certonly and return the path).
- Wordpress: Rollback plugins and core updates (wpcli_plugin_version_rollback).
- SFTP: option to create SFTP user when create a new project.
- SFTP: Option to create a user jail on sftp_create_user. Important:https://www.electricmonk.nl/log/2015/07/13/ssh-chrootdirectory-sftponly-not-working-fixed/
- Core: Add react-project support.
- Core: Extend ufw support.
- Core: Extend fail2ban support.
- Core: Git deployment support.
- Core: Prevent execute the script more than once at a time.
- Core: More performance improvements.
- Core: Refactor: croned tasks. Maybe should run the runner with flags.
- Core: Add an option to backup/restore an entired server.
- Core: IPv6 support for nginx, certbot and cloudflare helpers. https://geekflare.com/es/enable-ipv6-nginx-apache/
- WordPress: Fallback for replace strings on wp database (if wp-cli fails, use old script version).
- Installers: Refactor of WORDPRESS_INSTALLER - COPY_FROM_PROJECT The idea is that you could create/copy/delete/update different kind of projects (WP, Laravel, React, Composer, Empty) Maybe add this for Laravel: https://gitlab.com/gauchocode/laravel-boilerplate/-/tree/master
- Installers: COPY_FROM_PROJECT option to exclude uploads directory rsync -ax --exclude [relative path to directory to exclude] /path/from /path/to
- Server Optimization: Complete the pdf optimization process.
- Core: Make new standard directory structure for projects "${PROJECTS_PATH}/${SUBDOMAIN}/public". Logs could be stored on "${PROJECTS_PATH}/${SUBDOMAIN}/log"
- MySQL: Optimization script
- PHP: Option to change php version on project https://easyengine.io/blog/easyengine-v4-0-15-released/
- Installers: Option to select netdata metrics to be reported https://docs.netdata.cloud/health/notifications/discord/
- Include network (lan and internet) tests with iperf and speedtest-cli.
- Database Management: Add suport to create databases and users on other server.
- Teleport support.
- Uptime Kuma support: https://github.com/louislam/uptime-kuma
- WordPress: WP Network support (nginx config, and wp-cli commands).
- Core: Accept command via Telegram: https://github.com/topkecleon/telegram-bot-bash
- Nginx: bad bot blocker. https://github.com/mitchellkrogza/nginx-ultimate-bad-bot-blocker
- Security: Option to auto-install security updates on Ubuntu: https://help.ubuntu.com/lts/serverguide/automatic-updates.html
- Woocommerce support: https://github.com/woocommerce/woocommerce/wiki/WC-CLI-Commands
- Buddypress support: https://github.com/buddypress/wp-cli-buddypress
- IT Utils: Control of mounted partitions or directories.
- IT Utils: Better malware detection with https://github.com/rfxn/linux-malware-detect
- Addon: Fileover support with hetzner? https://community.hetzner.com/tutorials/failover-script