Skip to content

A tool to automatically create, download and then upload to S3 Bucket backups for Starrs App (e.g : Radarr, Sonarr ...)

License

Notifications You must be signed in to change notification settings

Zerka30/servarr-backup

Repository files navigation

📦 Servarr Backup Tool

GitHub release (latest by date) License Issues Pull Requests

Servarr Backup

📖 Description

Servarr Backup Tool is a backup tool for your media applications like Sonarr, Radarr, and Prowlarr. It allows you to create, list, download, and delete backups directly from your terminal and store them on S3. We recommend storing your S3 bucket with Infomaniak for reliable and affordable cloud storage (See more here).

✨ Features

  • 🔧 Configure: Initialize and display the configuration.
  • 📦 Create: Create a backup for your Servarr applications.
  • 📋 List: List available backups on S3.
  • 🗑 Delete: Delete specific backups on S3.

🚀 Installation

Prerequisites

  • Python 3.6 or higher
  • pip

Install via pip

You can install the tool directly from GitHub:

pip install git+https://github.com/Zerka30/servarr-backup.git

Installation from source

  1. Clone the repository:

    git clone https://github.com/Zerka30/servarr-backup.git
    cd servarr-backup
  2. Install the dependencies:

    pip install .
  3. Add ~/.local/bin to your PATH if it's not already there:

    export PATH="$HOME/.local/bin:$PATH"
    source ~/.bashrc  # or source ~/.zshrc for zsh users

📝 Usage

Commands

Configuration

  • Initialize configuration:

    servarr config init
  • Show configuration:

    servarr config show

Backups

  • Create a backup:

    servarr backup create [servertype]

    Example for prowlarr:

    servarr backup create prowlarr
  • List backups:

    servarr backup ls [servertype]

    Example for prowlarr:

    servarr backup ls prowlarr
  • Delete a backup:

    servarr backup delete [servertype] [backup_name]

    Example for prowlarr:

    servarr backup delete prowlarr prowlarr_backup_v1.18.0.4543_2024.06.22_17.28.57.zip

🛠 Configuration

The configuration is located in the config.json file in the ~/.config/servarr directory. This file contains the necessary information to access your Servarr applications and your S3 bucket.

Example config.json

{
    "starrs": {
        "lidarr": {
            "url": "",
            "api_key": ""
        },
        "radarr": {
            "url": "",
            "api_key": ""
        },
        "readarr": {
            "url": "",
            "api_key": ""
        },
        "sonarr": {
            "url": "",
            "api_key": ""
        },
        "prowlarr": {
            "url": "",
            "api_key": ""
        }
    },
    "backup": {
        "s3": {
            "endpoint": "",
            "bucket": "servarr",
            "key": {
                "access": "",
                "secret": ""
            }
        }
    }
}

📄 License

This project is licensed under the MIT License. See the LICENSE file for details.

🤝 Contributing

Contributions are welcome! Please see CONTRIBUTING.md for more information.

About

A tool to automatically create, download and then upload to S3 Bucket backups for Starrs App (e.g : Radarr, Sonarr ...)

Resources

License

Stars

Watchers

Forks

Packages