Cloudbox Versions Save

Ansible-based solution for rapidly deploying a Docker containerized cloud media server.

1.0.1

4 years ago
  • Common: Installs ansible-toolbox.
  • Ombi: New role.
    • subdomain: ombi
    • install: --tags install-ombi
    • folder: /opt/ombi
  • Scripts: Arrpush - minor adjustments
  • Resilio Sync: New role.
    • To install, run the Cloudbox install command with --tags install-resilio.
    • subdomain: resilio
    • install: --tags install-resilio
    • folder: /opt/resilio
  • Glances: New role.
    • Command line tool; simply run glances.
  • Nextcloud: New role.
    • To install, run the Cloudbox install command with --tags install-nextcloud.
    • subdomain: nextcloud
    • install: --tags install-nextcloud
    • folder: /opt/nextcloud
  • Suitarr: Docker containers now use default app ports.
    • This effects Sonarr, Radarr, NZBGet, NZBHydra, and Jackett.

1.0.2

4 years ago
  • Lidarr: New role.
    • subdomain: lidarr
    • install: --tags install-lidarr
    • folder: /opt/lidarr
  • ruTorrent: Now uses ruTorrent Docker image by horjulf.
  • WebTools: Updated to v3.0.0 (to update, see this here page).
  • Emby: New role.
    • subdomain: emby
    • install: --tags install-emby
    • folder: /opt/emby
  • NZBHydra2: New role.
    • subdomain: nzbhydra2
    • install: --tags install-nzbhydra2
    • folder: /opt/nzbhydra2
  • PlexPy: Now installs PlexPy v2 (aka Tautulli)

1.1.0

4 years ago
  • Docker: Force the installation of docker-ce v17.09.0
  • General: Fixed misc SSL errors with Github links.
  • Gitignore: Added .gitignore to repo.
    • git pull will no longer have conflicts with logs, retry files, etc.
  • Docker: Prevent it from being updated by placing version "on hold".
  • Backup: Added keep_local_copy option in settings.yml to keep or remove local backup (cloudbox.tar).
    • During backup, if use_rclone/use_rsync is false and keep_local_copy is set to true, then backup will be made to local file only.
    • During restore, if keep_local_copy is set to true and a local backup file (cloudbox.tar) exists, then that local backup file will be used for the restore task (no rclone / resync download of a remote cloudbox.tar file will occur).
    • This is handy for when a user just wants to drop in a backup file and restore from it.
  • Unionfs: Modified unionfs.service file to added 30 second wait to start to UnionFS.
    • Gives extra time for other mounts to be loaded before Unionfs starts.
    • This helps with users who..
      1. have more than one mounts setup (eg rclone sftp mount for a feederbox), and
      2. are using encrypted rclone mounts with plexdrive (takes longer to start up).
  • Rclone: Set binary location to /usr/bin/rclone (as documented here.
    • Removed the use of /opt/rclone/ folder (and the symlinks within it).
  • ZSH: New role
    • This will install ZSH & Oh My Zsh, and set it as the default shell.
    • install: --tags install-zsh
    • config: ~/.zshrc
    • This role does not run with default install.
  • Plex: Added hosts required for Lazyman Plex Channel.
  • Commmon: netaddr python module for Ansible's ipv4 filter.
  • Traktarr: New role.
    • install: --tags install-traktarr
    • folder: /opt/traktarr
  • Settings Updater: New role.
  • Scripts: Added new script: arrpush.py (for ruTorrent autodl-irssi)
  • Scripts: Renamed arrpush.sh (the previous script) to arrpush.legacy.sh.
  • Scripts: Moved script folder creation tasks here.
  • Commmon: dnspythonpython module for Ansible's dig lookup.
  • Scripts: Added tag: --tags update-scripts.
  • ctop: version updated to 0.7.1.
  • Common: installs screen.
  • Common: installs tmux.
  • Resilio Sync: Switched to official Resilio Docker image.
    • Advanced options now persist after restart.
    • Files created retain correct permissions.
  • Plex Dupefinder: New role.
    • install: --tags install-plex_dupefinder
    • folder: /opt/plex_dupefinder
  • Ombi: Switched to linuxserver/ombi image (as it now installs v3).
  • Dependency Installer Script: added into wiki.
    • Simple, clean install script.
    • Fixes potential pip issues.
  • Radarr4K: New role.
    • Basically, just an extra copy of Radarr to be used for any purpose, including the building of a 4K only library.
    • subdomain: radarr4k
    • install: --tags install-radarr4k
    • folder: /opt/radarr4k/
    • Uses port 7879.
    • Only mounts /mnt/
      • User's choice on where to keep 4K movies.
      • Examples:
        • /mnt/unionfs/Media/Movies/Movies4K/
        • /mnt/unionfs/Media/Movies4K/
    • Plex Autoscan will also require tweaking. See "Configuring Plex Libraries" wiki page for more info.
  • Heimdall: New role (thanks TheBradz).
    • subdomain: heimdall
    • install: --tags install-heimdall
    • folder: /opt/heimdall
  • HTTP Authentication support: See here for more details.
  • Rclone: fix for trailing zeroes in version numbers.
  • The Lounge: New role.
    • subdomain: thelounge
    • install: --tags install-thelounge
    • folder: /opt/thelounge
  • Cloudflare DNS support
    • Added cloudflare_api_token to settings.yml.
    • When API token is filled in, Cloudbox will automatically create DNS entries (non proxied/CDN), and/or update them with the host's IP address, when relevant tasks are run.
    • Will also add one of 3 relevant subdomains: plexbox, feederbox, or cloudbox.
      • This is useful for ssh, ftp, etc, especially with a Feederbox/Plexbox setup.
    • This requires the email address in settings.yml to match the one used for the Cloudflare account.
  • MOTD: Now shows memory info (based off the word by EnorMOZ).
  • Ansible: Added command_warnings: off
  • Netdata: New role.
  • Preinstall: Set sudo group to NOPASSWD
    • No more password prompts when running sudo commands.
  • Rclone: use latest for rclone version in settings.yml to always install the latest version.
    • Version numbers can still be used (e.g.1.40).
  • ZNC: New role.
    • Uses ZNC Docker image by horjulf.
    • subdomain: znc
    • install: --tags install-znc
    • folder: /opt/znc
  • Scripts: Removed cloudflared.py as this is not needed anymore.
  • Quassel IRC core: New role.
    • subdomain: quassel
    • install: --tags install-quassel
    • folder: /opt/quassel
  • Rclone: rclone.conf location: ~/.config/rclone/rclone.conf.
  • Backup: Rclone uses less bandwidth, due to server-side move commands (initially submitted by RXWatcher).
  • Backup: Will archive older versions of cloudbox.tar on Rclone remotes (initially submitted by RXWatcher).
  • Backup: Systemd files will be saved to /opt/systemd-backup (vs /opt/systemd).
    • The name makes the purpose of the folder clearer.
  • Backup: Local cloudbox.tar.backup file is now deleted after a successful tar archiving task.
  • Backup: Will now keep rclone.conf and settings.yml files separate from cloudbox.tar.
  • Restore: Looks for rclone.conf in ~/cloudbox/ and, if found, moves it to ~/.config/rclone/rclone.conf.

1.1.1

4 years ago
  • Backup: systemd-backup now uses synchronize, should avoid issues with copy module failing on 0 byte files.
  • Docker: Better log size management.
  • ZSH: Existing .zshrc file will no longer be replaced with default one.
  • Plex Patrol: Added new role.
  • Watchower: now an optional module.
  • MOTD: Replaced generic MOTD with Cloudbox MOTD, a Cloudbox-enhanced MOTD.
  • AppVeyor: CI testing added.
  • Cloudflare: Now only creates a single subdomain entry.
  • Backup: Exclude Plex cache folder in backup.
  • Common: Installs unrar-free if unrar could not be installed.
  • Common: netaddr is now installed via the Dependency Installer script instead of Ansible.
  • ZSH: Will now link to /bin/zsh if it doesn't already do so.
  • Kernel: Now runs without settings-updater checks.
  • Common: Set /opt to ugo+X instead of 0775.
  • Rutorrent: Added stop_timeout to Docker container.
  • Docker: Updated to 18.03.1.
  • Readme: Added feathub link.
  • PlexPy: Now downloads nightly version.
  • Nginx-Proxy: Renamed update tag to update-nginx-proxy vs update-nginx.
  • Cloudflare: (Real) Public IP Address will now be used.
  • Common: Node.js Updated to v10.X.
  • Backup: Logs are created in ~/logs/ path.
  • Preinstall: No longer changes the user's shell on Cloudbox run (eg full).

1.1.3

4 years ago
  • Plex: Will auto-update to the latest WebTools version.
  • Common: Install/Update to latest ctop version.
  • Common: Install/Update to latest hostess version.
  • Webtools: Moved into a separate role.
  • AppVeyor: Will now install the default Ansible version in the Dependencies Installer Script.
  • Cloudflare: Task name shows correct IP address, now.

1.2.0

4 years ago
  • Kernel: Added PATH to cron task fix issues with purge-old-kernels.
  • General: Added support for 18.04/18.10 (thanks EnorMOZ).
  • Settings: Added support for adv_settings.yml For misc/advanced settings that that don't seem to fit in the main settings.yml file.
  • Organizr: Direct domain option in adv_settings.yml.
  • Ombi: Custom subdomain option in adv_settings.yml.
  • Plex Requests: Custom subdomain option in adv_settings.yml.
  • System: Removes useless packages and dependencies.
  • Telly: Added new role (thanks EnorMOZ).
    • Options are set in adv_settings.yml.
  • Common: Install iperf3.
  • Ctop: display the version after install.
  • hostess: display the version after install.
  • Settings: Took out entry for Plex Autoscan IP, as it's usually 0.0.0.0 for CB purposes.
  • NZBGet: Fixed unrar issue with latest version of NZBGet (thanks RXWatcher).
  • Sanity Check: Exit any CB install when backup is in progress.
  • NZBHydra1: Switched to LSIO image as Hotio/Suitarr dropped support.
  • NZBHydra2: NZBHydra2 now replaces NZBHydra1 for "default" installs (i.e. cloudbox and feederbox).
  • Plex Autoscan: Added music folder into default config.
  • Feeder Mount Role - Mounts rclone feeder remote onto the /mnt/feeder path of a Plexbox.
  • Pre-Tasks: Cloudbox related subdomains are now: cloudbox, plexbox, feederbox.
    • Don't put these behind proxy/CDN, as these are meant to reach your server directly.
  • Pre-Tasks: Removes cloudbox subdomain for plex/feeder box installs.
  • Ansible: Added localhost to inventory to suppress warning messages.
  • PIP: Suppress outdated pip warnings.
  • Nethogs: Added new role (thanks EnorMOZ).
  • Cloudplow - Cloudplow replaces UnionFS Cleaner.
  • Rutorrent: Disables extsearch plugin for new and old installs.
    • Will help fix some slow loading issues.
  • Scripts: 'Plex Autoscan URL Script' will now catch errors and display the error message (e.g. missing dependencies, invalid JSON formatting). Also Added some visual enhancements.
  • Feeder Dismount Role - Reverts all changes from Feeder Mount role.
  • Sanity Check: Make sure users are using a valid tag (thanks EnorMOZ).
  • Rutorrent: Uses same password as passwd in settings.yml.
  • NZBHydra1: Config files for Suitarr path now automatically migrated over to LSIO path.
  • NZBHydra2: Automates entering in login and auth info, and sets JVM memory to 512MB if the system has >= 16GB of RAM.
  • NZBHydra2: Mounts NZBHydra1, so that previous config/db can be migrated on first install or from settings later.
  • Backup: Excludes /opt/sonarr/MediaCover and /opt/radarr/MediaCover.
  • Suitarr: Updated tasks to reflect new config paths.
  • Tags: updates:
    • core (new)
    • full -> cloudbox
    • plex -> mediabox
    • feeder -> feederbox
    • update- and install- prefixes removed from all tags
    • To see a full list of tags: sudo ansible-playbook cloudbox.yml --list-tags

1.2.1

4 years ago
  • NZBHydra2: Increase JVM memory to 512 MB when system has 8 GB of RAM or more.
  • Cloudplow: Adds **.fuse_hidden** to rclone excludes.
  • Cloudplow: Adds Plex integration into default config.
  • Heimdall: Turns on http login authentication by default.
  • Organizr: Adds www subdomain to Organizr when direct_domain is set in adv_settings.yml.
  • ZSH: Now installed by default.
    • To switch to bash, set shell: bash in adv_settings.yml and run the shell tag.
  • System: Only updates ext4 mount.
  • NZBGet: Fixes missing env's for new installs.
  • Z (jump) - Added new role.
  • NowShowing - Added new role.
  • Plex Autoscan: Updated config to support latest changes.
  • Nginx Proxy: Allows EPGs with large channel data to be added in to Plex. (EnorMOZ)
  • Plexpy: /scripts/plexpy/ points to /opt/scripts/plexpy/.
  • Scripts: Torrent Cleaner - Experimental support for Lidarr.
  • NZBGet: Tweaked /scripts mount path.
  • ruTorrent: Tweaked /scripts mount path.
  • PreInstall: Set ownership of entire /home/{{user}} folder to {{user}}:{{user}}.

1.2.2

4 years ago

1.2.3

4 years ago
  • Plex Autoscan: Added --loglevel=INFO to service file.
  • Cloudplow: Added --loglevel=INFO to service file.
  • Cloudplow: Added Rclone throttle speeds settings into default config.
  • Suitarr: Updated migration helper tasks to reflect recent changes.
  • Scripts: Added 'Plex Trash Fixer' script.
  • ZSH: Sets correct permissions during repo clone.
  • Z: Sets correct permissions during repo clone.
  • Plex Library: Added new role.
  • Backup: Minor tweaks to Docker start / stop tasks.
  • Backup: Excludes reflect new Sonarr/Radarr Mediacover paths.
  • Rclone: Will attempt to look for missing rclone.conf, and if found, move it to the correct 'default' location.
  • Bash: Added new role.
  • Shell: Add nano as default editor.
  • Ansible: Turned off retry files.
  • Ansible: Turned off retry files.
  • NZBGet: Updated settings subtasks to match new Suitarr config location.
  • NZBHydra2: Updated settings subtasks to match new Suitarr config location.
  • System: Added system tag.
  • NodeJS: Separated into its own role.
  • NodeJS: Will now output NodeJS, npm, and frontail versions once installed.
  • Docker: Added docker tags.
  • Docker: Will stop and start running containers on task run.

1.2.4

4 years ago
  • Hostess: Added explicit download URL as failsafe.
  • Ctop: Added explicit download URL as failsafe.
  • WebTools: Added explicit download URL as failsafe.
  • WebTools: Display version installed.
  • Shell: shell role replaces zsh and bash roles.
    • Use adv_settings.yml to switch between them.
  • Pre-Install: Cleaned up role a bit.
  • Pre-Install: Created variable cloudflare_enabled.
  • Cloudflare: Made use of cloudflare_enabled variable.
  • Gitignore: Added rclone.conf so having it in cloudbox folder doesnt git conflict.
  • Ansible: Enabled hash merge behavior (hash_behavior) in ansible.cfg (for new users).
  • Backup: Added a default backup_excludes.txt into the backup role.
    • If you want to have a custom excludes list, simply drop a backup_excludes.txt file in the cloudbox folder, and backup will use that one instead.
  • Variables: Created universally accessible uid, guid, and vgid variables.
  • Kernel: Will quit now if kernel is already updated.
  • Common: Adds multiverse APT repositories.
  • Common: Added common tag to role.
  • Plex: Reorganized Host Tasks (thanks EnorMOZ).
  • Plex: Added support for entering in login info in accounts.yml.
    • This will bypass the claim code prompt and automate everything needed to setup Plex.
    • Based on the work by EnorMOZ.
  • Backup: Added ANSIBLE_CONFIG env variable to cron task.
  • Backup: Added --skip-tags settings to the cron task.
  • Scripts: Updated paths for nzb scripts.
    • Will now go to /opt/scripts/nzbs/.
  • Scripts: Updated paths for torrent scripts.
    • Will now go to /opt/scripts/torents/.
  • System: Certain kernel versions that have no matching linux-tools will no error out anymore.
  • Settings: Automatically adds in hash_behavior into ansible.cfg if missing (for current users).
  • Settings: New downloads folder structure.
    • This will allow for more downloaders to be added without the need to modify PVR (eg Sonarr) mounts.
    • Left backwards compatibility for previous downloads folder settings (for now). But will eventually remove them from from there (settings.yml).
  • Variables: Created old_downloads_settings and new_downloads_settings variables.
  • NZBGet: Support for the new downloads path settings.
  • ruTorrent: Support for the new downloads path settings.
  • Sonarr: Support for the new downloads path settings.
  • Sonarr4K: Support for the new downloads path settings.
  • Radarr: Support for the new downloads path settings.
  • Radarr4K: Support for the new downloads path settings.
  • Rclone: Added in failsafes for incorrect version numbers etc. Will revert to latest version if no setting is specified.
  • Rclone: Now supports beta tag as well.
  • Docker: Installs docker-ce 18.05.0 for all Ubuntu versions.
  • Plex: Create some folders ahead of time. Prevents container from creating them in root.
  • Nginx-Proxy: Creates vhost.d folder.
  • Scripts: Changed nzbs folder to nzbget.
  • Added SABnzbd
    • Install tag: --tags sabnzbd
    • After setup wizard finishes, it will try to redirect to domain:8080. Just take out the :8080 part and it will be OK from then on.
    • User will also need to add in categories for sonarr, radarr, and lidarr. Was also not able to do that without server already filled in.
    • Direct unpack is disabled by default. Left it as-is for user to setup.
  • Scripts: Added scripts folder for sabnzbd.
  • Plex Dupefinder: Renamed sample config' TV library name as "TV Shows" to match Plex's default one.
  • Added "Plex Auth Token" role.
    • Used to generate plex auth tokens.
    • Requires Plex login info in settings.
    • Can use --tags plex_auth_token to print out the token.
  • Plex Autoscan: Pre-filled Plex token when Plex login is set.
  • Cloudplow: Pre-filled Plex token when Plex login is set.
  • Plex Dupefinder: Pre-filled Plex token when Plex login is set.
  • Plex Patrol: Pre-filled Plex token when Plex login is set.
  • SABnzbd: Role exists when new download path settings are not set.
  • SABnzbd: Presets login based on user/passwd from accounts.yml.
  • Docker: Replaced the pip module docker-py with docker.
  • Backup: Moved ~/logs/ to ~/logs/backup/.
  • Common: Install lxml for Ansible's XML module.
  • Plex: Added 'Forced Automatic Quality Settings' (experimental)
  • Docker: Added purge_networks: yes to all container tasks.
  • Docker: Reworked cloudbox docker network
  • Added 'Nginx' web browser.
    • Can be used to host websites.
    • Access via www.domain.com or domain.com.
  • Pre-Install: Migrates folder to home location.
  • Settings: Went back to saving log files in cloudbox folder.
  • Lidarr: Support for the new downloads path settings.
  • Variables: Created variables for downloads path settings.
  • NZBGet: Support for "new and improved downloads path variables".
  • ruTorrent: Support for "new and improved downloads path variables".
  • SABnzbd: Support for "new and improved downloads path variables".
  • Lidarr: Support for "new and improved downloads path variables".
  • Sonarr: Support for "new and improved downloads path variables".
  • Sonarr4K: Support for "new and improved downloads path variables".
  • Radarr: Support for "new and improved downloads path variables".
  • Radarr4K: Support for "new and improved downloads path variables".
  • MOTD: Peek is default banner type.
  • Docker: Added Housekeeping tasks.
  • Emby: Presets baseline settings
  • Lidarr: Now part of default install for 'cloudbox' and 'feederbox' (based on poll results).
  • Plex Autoscan: Added Music section into PLEX_SECTION_PATH_MAPPINGS for default config.
  • NZBGet: Set scripts path to /scripts/nzbget
  • Plex: Mounted /scripts to plex.
  • Netdata: Added HTTP auth.
  • Moved previous organizr to organizrv1 as legacy support.
    • use --tags organizrv1 to install.
    • subdomain: organizrv1
    • direct_domain settings do get applied to this. So if you want to have both versions, turn the setting off before installing the other.
  • Added Organizr v2 (beta) (from here on will be referred to as just 'Organizr')
    • will migrate over folder of previous version from /opt/organizr to /opt/organizrv1.
  • Plex: Added adv_settings.yml option to open/close port 32400 on host.
  • OrganizrV1: Took out support fro direct_domain option in adv_settings.yml. Can now only be used with a subdomain.
  • Organizr: Added Plex theme support.
  • Ombi: Replaces 'Plex Requests' for default installs ('cloudbox' and 'mediabox').
  • Feeder: Mount and Dismount tags renamed to match role names.
  • Python-PlexLibrary: Renamed 'PlexLibrary' to 'Python-PlexLibrary' to match GitHub repo name.
  • Sanity Check: Deletes stale backup.lock files, automatically.
  • Permissions: Swapped 0755 to 0775 for all permission tasks.
  • Permissions: Swapped 0644 to 0664 for all permission tasks.
  • Common: Install httpie.
  • NZBGet: Prefetch some commonly used scripts.
  • Scripts: Renamed nginx scripts folder to nginx-proxy.
  • NZBGet: Removed SafeRename.py as it did not work too well.
  • Script: 'Plex Autoscan URL Script' now supports vaulted accounts.yml.
  • Traktarr: Automatically adds in Sonarr and Radarr API keys into config.json.
  • Common: Install zip.
  • Common: Will only reset /opt permissions if folder age >= 7 days.
  • Common: Install apprise.
  • NZBGet: Added HashRenamer.py PP script.
  • Pushover: Added support for message priority.
  • Docker: Adds "com.github.cloudbox.cloudbox_managed": "true" label to all CB for future use.
  • Common: Install subliminal.
  • Restore: Added 'Local Only Mode'.
    • Will use local backup for restores when present.
  • Backup: Will now only stop/start Cloudbox-managed Docker containers during backup.
  • Telly: Updated to reflect recent changes.
  • Webtools: Added tag reinstall-webtools
  • Shell: Copy .bashrc from /etc/skel when missing.
  • Backup: Added accounts.yml to backed up files list.
  • Settings: Addition of accounts.yml.
    • Shifting of account related settings from settings.yml into accounts.yml.
  • Ansible: Skip installing certain apps if downloads paths are left blank (on purpose).
  • Docker: Changed docker start up delay to 30s post unionfs (from 120s). 120s delay was just not needed.
  • Docker: Service is always stopped/started during the role runtime.
  • Pushover: Now in accounts.yml. Still backwards compatible with old location under backup.