Compare commits
40 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 5c68df7246 | |||
| cc26d9a655 | |||
| 02a1303557 | |||
|
|
817ffcf2b5 | ||
| 4a8b7eb837 | |||
| fcf81ad7d9 | |||
| 89a1b0dec7 | |||
| face51ae0c | |||
| 5ca6757fb0 | |||
| 4f4633c6b3 | |||
| 17c70dfef2 | |||
| 92daaebf9d | |||
| 0c70191687 | |||
|
|
e2a5f2f1b5 | ||
| 1893abd773 | |||
| 41bb08418f | |||
| cf1794145c | |||
| 7d9a25e599 | |||
|
|
cd2175b5ad | ||
| 98ff5184e1 | |||
|
|
da785355d6 | ||
| 4cabd5f0d0 | |||
| a41f03c6b2 | |||
| cde86cf9fd | |||
| 8d4981f10f | |||
| 93d023c54a | |||
| bae450f23e | |||
| 42339e65d4 | |||
| 0bb839c0a0 | |||
|
|
6381d7b742 | ||
| 2efbdad4f0 | |||
| 30bf0c22fa | |||
| 169d6c7364 | |||
| e1fb5f570e | |||
| 92362a5d8c | |||
| 7c88901185 | |||
| 5bce9b240e | |||
| e675168798 | |||
| 8aa88d7343 | |||
|
|
9e6879c0f2 |
@@ -1,6 +1,3 @@
|
|||||||
# Adapted from https://github.com/joshka/github-workflows/blob/main/.github/workflows/rust-release-plz.yml
|
|
||||||
# Thanks to joshka for permission to use this template!
|
|
||||||
|
|
||||||
name: Create release
|
name: Create release
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
@@ -23,35 +20,85 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
bump:
|
bump:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
- name: Configure SSH for Git
|
||||||
|
run: |
|
||||||
|
mkdir -p ~/.ssh
|
||||||
|
echo "${{ secrets.RELEASE_BOT_SSH_KEY }}" > ~/.ssh/id_ed25519
|
||||||
|
chmod 600 ~/.ssh/id_ed25519
|
||||||
|
ssh-keyscan -H github.com >> ~/.ssh/known_hosts
|
||||||
|
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
ssh-key: ${{ secrets.RELEASE_BOT_SSH_KEY }}
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
- name: Set up Python
|
- name: Set up Python
|
||||||
uses: actions/setup-python@v4
|
uses: actions/setup-python@v4
|
||||||
with:
|
with:
|
||||||
python-version: "3.x" # Specify your required Python version
|
python-version: "3.10"
|
||||||
|
|
||||||
- name: Install Commitizen
|
- name: Install Commitizen
|
||||||
run: |
|
run: |
|
||||||
python -m pip install --upgrade pip
|
python -m pip install --upgrade pip
|
||||||
pip install commitizen
|
pip install commitizen
|
||||||
|
npm install -g conventional-changelog-cli
|
||||||
|
|
||||||
|
- name: Configure Git user
|
||||||
|
run: |
|
||||||
|
git config user.name "github-actions[bot]"
|
||||||
|
git config user.email "github-actions[bot]@users.noreply.github.com"
|
||||||
|
|
||||||
- name: Bump version with Commitizen
|
- name: Bump version with Commitizen
|
||||||
run: |
|
run: |
|
||||||
cz bump --yes --increment ${{ github.event.inputs.bump_type }}
|
cz bump --yes --increment ${{ github.event.inputs.bump_type }}
|
||||||
|
|
||||||
|
- name: Amend commit message to include '[skip ci]'
|
||||||
|
run: |
|
||||||
|
git commit --amend --no-edit -m "$(git log -1 --pretty=%B) [skip ci]"
|
||||||
|
|
||||||
|
- name: Get the new version tag
|
||||||
|
id: version
|
||||||
|
run: |
|
||||||
|
NEW_TAG=$(cz version --project)
|
||||||
|
echo "New version: $NEW_TAG"
|
||||||
|
echo "version=$NEW_TAG" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Get the previous version tag
|
||||||
|
id: prev_version
|
||||||
|
run: |
|
||||||
|
PREV_TAG=$(git describe --tags --abbrev=0 ${GITHUB_SHA}^)
|
||||||
|
echo "Previous tag: $PREV_TAG"
|
||||||
|
echo "prev_version=$PREV_TAG" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Generate changelog for the version bump
|
||||||
|
id: changelog
|
||||||
|
run: |
|
||||||
|
changelog=$(conventional-changelog -p angular -i CHANGELOG.md -s --from ${{ env.prev_version }} --to ${{ env.version }})
|
||||||
|
echo "$changelog" > changelog.md
|
||||||
|
echo "changelog_body=$(cat changelog.md)" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Create a GitHub Release
|
||||||
|
uses: softprops/action-gh-release@v1
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
with:
|
||||||
|
tag_name: ${{ env.version }}
|
||||||
|
name: "Release ${{ env.version }}"
|
||||||
|
body: ${{ env.changelog_body }}
|
||||||
|
draft: false
|
||||||
|
prerelease: false
|
||||||
|
|
||||||
- name: Push changes
|
- name: Push changes
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
run: |
|
run: |
|
||||||
git push origin main --follow-tags
|
git push origin --follow-tags
|
||||||
|
|
||||||
release-plz:
|
release-crate:
|
||||||
# see https://release-plz.ieni.dev/docs/github
|
needs: bump
|
||||||
# for more information
|
name: Release Crate
|
||||||
name: Release-plz
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Check if actor is repository owner
|
- name: Check if actor is repository owner
|
||||||
@@ -66,10 +113,6 @@ jobs:
|
|||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
- name: Install Rust stable
|
- name: Install Rust stable
|
||||||
uses: dtolnay/rust-toolchain@stable
|
uses: dtolnay/rust-toolchain@stable
|
||||||
- name: Run release-plz
|
- uses: katyo/publish-crates@v2
|
||||||
uses: MarcoIeni/release-plz-action@v0.5
|
|
||||||
with:
|
with:
|
||||||
command: release
|
registry-token: ${{ secrets.CARGO_REGISTRY_TOKEN }}
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
|
|
||||||
|
|||||||
+131
@@ -5,6 +5,137 @@ All notable changes to this project will be documented in this file.
|
|||||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
|
## v0.3.1 (2024-11-26)
|
||||||
|
|
||||||
|
### Fix
|
||||||
|
|
||||||
|
- **ci**: Don't manually push the tags and let Commitizen do it [skip ci]
|
||||||
|
- **ci**: Fixed a typo in the version creation on GitHub [skip ci]
|
||||||
|
|
||||||
|
## v0.3.0 (2024-11-26)
|
||||||
|
|
||||||
|
### Feat
|
||||||
|
|
||||||
|
- **cli**: Support for editing a sonarr series
|
||||||
|
- **models**: Added the ActiveSonarrBlocks for editing a series
|
||||||
|
- **network**: Support for editing a series in Sonarr
|
||||||
|
- **models**: Created the EditSeriesModal
|
||||||
|
- **cli**: Support for editing Sonarr indexers
|
||||||
|
- **network**: Support for editing a sonarr indexer
|
||||||
|
- **cli**: Support for deleting an episode file from disk
|
||||||
|
- **network**: Support for deleting an episode file from disk in Sonarr
|
||||||
|
- **cli**: Support for editing all indexer settings in Sonarr
|
||||||
|
- **models**: Added the ActiveSonarrBlocks for editing all indexer settings
|
||||||
|
- **network**: Support for editing all sonarr indexer settings
|
||||||
|
- **cli**: Support for searching for new series to add to Sonarr
|
||||||
|
- **network**: Support for searching for new series
|
||||||
|
- **cli**: Support for adding a series to Sonarr
|
||||||
|
- **cli**: Support for adding a series to Sonarr
|
||||||
|
- **network**: Support for adding a new series to Sonarr
|
||||||
|
- **cli**: Support for fetching all sonarr language profiles
|
||||||
|
- **network**: Support for fetching all Sonarr language profiles
|
||||||
|
- **cli**: Support for deleting a series from Sonarr
|
||||||
|
- **network**: Support for deleting a series from Sonarr
|
||||||
|
- **cli**: Support for downloading an episode release in Sonarr
|
||||||
|
- **cli**: Support for downloading a season release in Sonarr
|
||||||
|
- **cli**: Support for downloading a Series release in Sonarr
|
||||||
|
- **network**: Support for downloading releases from Sonarr
|
||||||
|
- **cli**: Support for refreshing Sonarr downloads
|
||||||
|
- **network**: Support for updating Sonarr downloads
|
||||||
|
- **cli**: Support for refreshing a specific series in Sonarr
|
||||||
|
- **network**: Support for updating and scanning a series in Sonarr
|
||||||
|
- **cli**: Support for refreshing all Sonarr series data
|
||||||
|
- **network**: Support for updating all series in Sonarr
|
||||||
|
- **cli**: Support for triggering an automatic episode search in Sonarr
|
||||||
|
- **cli**: Support for triggering an automatic season search in Sonarr
|
||||||
|
- **cli**: Support for triggering an automatic series search in Sonarr
|
||||||
|
- **network**: Support for triggering an automatic episode search in Sonarr
|
||||||
|
- **network**: Support for triggering an automatic season search in Sonarr
|
||||||
|
- **network**: Support for triggering an automatic series search in Sonarr
|
||||||
|
- **cli**: Support for testing all Sonarr indexers at once
|
||||||
|
- **network**: Support for testing all Sonarr indexers at once
|
||||||
|
- **cli**: Support for testing an individual Sonarr indexer
|
||||||
|
- **network**: Added the ability to test an individual indexer in Sonarr
|
||||||
|
- **cli**: Support for starting a Sonarr task
|
||||||
|
- **network**: Support for starting a Sonarr task
|
||||||
|
- **cli**: Support for listing Sonarr updates
|
||||||
|
- **network**: Support for fetching Sonarr updates
|
||||||
|
- **cli**: Support for listing all Sonarr tasks
|
||||||
|
- **network**: Support for fetching all Sonarr tasks
|
||||||
|
- **cli**: Support for marking a Sonarr history item as 'failed'
|
||||||
|
- **network**: Support for marking a Sonarr history item as failed
|
||||||
|
- **cli**: Support for listing the available disk space for all provisioned root folders in both Radarr and Sonarr
|
||||||
|
- **network**: Support for listing disk space on a Sonarr instance
|
||||||
|
- **cli**: Support for listing all Sonarr tags
|
||||||
|
- **cli**: Support for adding a root folder to Sonarr
|
||||||
|
- **cli**: CLI support for adding a tag to Sonarr
|
||||||
|
- **network**: Support for fetching and listing all Sonarr tags
|
||||||
|
- **network**: Support for deleting tags from Sonarr
|
||||||
|
- **network**: Support for adding tags to Sonarr
|
||||||
|
- **network**: Support for adding a root folder to Sonarr
|
||||||
|
- **cli**: Support for deleting a root folder from Sonarr
|
||||||
|
- **network**: Support for deleting a Sonarr root folder
|
||||||
|
- **cli**: Support for fetching all Sonarr root folders
|
||||||
|
- **network**: Support for fetching all Sonarr root folders
|
||||||
|
- **cli**: Support for deleting a Sonarr indexer
|
||||||
|
- **network**: Support for deleting an indexer from Sonarr
|
||||||
|
- **cli**: Support for deleting a download from Sonarr
|
||||||
|
- **network**: Support for deleting a download from Sonarr
|
||||||
|
- **cli**: Support for fetching episode history events from Sonarr
|
||||||
|
- **network**: Support for fetching episode history
|
||||||
|
- **cli**: Added a spinner to the CLI for long running commands like fetching releases
|
||||||
|
- **cli**: Support for fetching history for a given series ID
|
||||||
|
- **network**: Support for fetching Sonarr series history for a given series ID
|
||||||
|
- **cli**: Support for fetching all Sonarr history events
|
||||||
|
- **network**: Support to fetch all Sonarr history events
|
||||||
|
- **models**: Added an additional History tab to the mocked tabs for viewing all Sonarr history at once
|
||||||
|
- **models**: Stubbed out the necessary ActiveSonarrBlocks for the UI mockup
|
||||||
|
- **cli**: Added support for manually searching for episode releases in Sonarr
|
||||||
|
- **network**: Added support for fetching episode releases in Sonarr
|
||||||
|
- **cli**: Added CLI support for fetching series details in Sonarr
|
||||||
|
- **network**: Added support for fetching series details for a given series ID in Sonarr
|
||||||
|
- **cli**: Added support for manually searching for season releases for Sonarr
|
||||||
|
- **network**: Added support for fetching season releases for Sonarr
|
||||||
|
- **cli**: Added support for listing Sonarr queued events
|
||||||
|
- **network**: Added support for fetching Sonarr queued events
|
||||||
|
- **cli**: Added CLI support for fetching all indexer settings for Sonarr
|
||||||
|
- **network**: Added netwwork support for fetching all indexer settings for Sonarr
|
||||||
|
- **cli**: Added Sonarr support for fetching host and security configs
|
||||||
|
- **network**: Added network support for fetching host and security configs from Sonarr
|
||||||
|
- **cli**: Added CLI support for listing Sonarr indexers
|
||||||
|
- **network**: Added the GetIndexers network call for Sonarr
|
||||||
|
- **cli**: Added sonarr support for listing downloads, listing quality profiles, and fetching detailed information about an episode
|
||||||
|
- **network**: Added get quality profiles and get episode details events for Sonarr
|
||||||
|
- **cli**: Sonarr CLI support for fetching all episodes for a given series
|
||||||
|
- **sonarr_network**: Added support for fetching episodes for a specified series to the network events
|
||||||
|
- **models**: Added the Episode model to Sonarr models
|
||||||
|
- **models**: Created the StatefulTree struct for displaying seasons and episodes (and any other structured data) for the UI.
|
||||||
|
- **sonarr**: Added CLI support for listing Sonarr logs
|
||||||
|
- **sonarr**: Added the ability to fetch Sonarr logs
|
||||||
|
- **sonarr**: Added blocklist commands (List, Clear, Delete)
|
||||||
|
- Added initial Sonarr CLI support and the initial network handler setup for the TUI
|
||||||
|
- Added a new command to the main managarr CLI: tail-logs, to enable users to tail the Managarr logs without needing to know where the log file itself is located
|
||||||
|
|
||||||
|
### Fix
|
||||||
|
|
||||||
|
- Reverted to old version to fix release [skip ci]
|
||||||
|
- **minimal-versions**: Addressed concerns with the minimal-versions CI checks
|
||||||
|
- **lint**: Addressed linter complaints
|
||||||
|
- **cli**: Corrected some copy/paste typos
|
||||||
|
- **network**: Force sonarr to save edits to indexers
|
||||||
|
- **network**: Made the overview field nullable in the Sonarr series model
|
||||||
|
- **network**: Added filtering for full seasons specifically in the UI when performing a manual full season search and added a message to the CLI that noes to only try to download a full season if that release includes 'fullSeason: true'
|
||||||
|
- **network**: Not all Sonarr tasks return the lastDuration field and was causing a crash
|
||||||
|
- **network**: Fixed an issue with dynamic typing in responses from Sonarr for history items
|
||||||
|
- **config**: The CLI panics if the servarr you specify has no config defined
|
||||||
|
- Imported a missing macro in the panic hook
|
||||||
|
|
||||||
|
### Refactor
|
||||||
|
|
||||||
|
- **cli**: the trigger-automatic-search commands now all have their own dedicated subcommand to keep things cleaner. Now they look like 'trigger-automatic-search episode/series/season' and their corresponding flags
|
||||||
|
- **cli**: Added an additional delegation test to ensure manual-search commands are delegated to the manual-search command handler
|
||||||
|
- **cli**: Moved the manual-season-search and manual-episode-search commands into their own dedicated handler so the commands can now be manual-search episode or manual-search season
|
||||||
|
|
||||||
## v0.2.2 (2024-11-06)
|
## v0.2.2 (2024-11-06)
|
||||||
|
|
||||||
### Fix
|
### Fix
|
||||||
|
|||||||
Generated
+1
-1
@@ -1353,7 +1353,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "managarr"
|
name = "managarr"
|
||||||
version = "0.2.2"
|
version = "0.3.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"assert_cmd",
|
"assert_cmd",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "managarr"
|
name = "managarr"
|
||||||
version = "0.2.2"
|
version = "0.3.1"
|
||||||
authors = ["Alex Clarke <alex.j.tusa@gmail.com>"]
|
authors = ["Alex Clarke <alex.j.tusa@gmail.com>"]
|
||||||
description = "A TUI and CLI to manage your Servarrs"
|
description = "A TUI and CLI to manage your Servarrs"
|
||||||
keywords = ["managarr", "ratatui", "dashboard", "servarr", "tui"]
|
keywords = ["managarr", "ratatui", "dashboard", "servarr", "tui"]
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ Managarr is a TUI and CLI to help you manage your HTPC (Home Theater PC). Built
|
|||||||
## What Servarrs are supported?
|
## What Servarrs are supported?
|
||||||
|
|
||||||
- [x]  [Radarr](https://wiki.servarr.com/radarr)
|
- [x]  [Radarr](https://wiki.servarr.com/radarr)
|
||||||
- [ ]  [Sonarr](https://wiki.servarr.com/en/sonarr)
|
- [x]  [Sonarr](https://wiki.servarr.com/en/sonarr)
|
||||||
- [ ]  [Readarr](https://wiki.servarr.com/en/readarr)
|
- [ ]  [Readarr](https://wiki.servarr.com/en/readarr)
|
||||||
- [ ]  [Lidarr](https://wiki.servarr.com/en/lidarr)
|
- [ ]  [Lidarr](https://wiki.servarr.com/en/lidarr)
|
||||||
- [ ]  [Prowlarr](https://wiki.servarr.com/en/prowlarr)
|
- [ ]  [Prowlarr](https://wiki.servarr.com/en/prowlarr)
|
||||||
|
|||||||
Reference in New Issue
Block a user