Add Sportarr support - #84
Conversation
Sportarr (https://github.com/Sportarr/Sportarr) is a sports event manager in the Starr family. Follows the existing per-service pattern: compose entry (sportarr/sportarr image, port 1867), dedicated service user with UID 13015 in the mediacenter group, a sports media folder, CLI prompt, env sample, setup/removal scripts and README mention.
There was a problem hiding this comment.
Pull request overview
Adds Sportarr as a new “arr-family” service across Ezarr’s supported deployment paths (CLI-generated compose, manual setup scripts, and documentation), following the existing per-service pattern.
Changes:
- Adds Sportarr service selection to the CLI and a new generated compose service stanza.
- Adds Sportarr UID to
.env.sampleand user/group wiring in setup scripts. - Documents Sportarr in the README and extends the stated UID range.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
users_groups_setup.py |
Adds per-service user/group + directory setup routine for Sportarr in the CLI flow. |
setup.sh |
Adds Sportarr user creation and group membership for manual install flow. |
remove_old_users.sh |
Includes Sportarr in cleanup of legacy users. |
README.md |
Mentions Sportarr and updates the UID range note. |
main.py |
Adds Sportarr to the CLI service selection prompts. |
docker-compose.yml.sample |
Adds a Sportarr service entry to the sample compose file. |
container_configs.py |
Adds generated compose config block for Sportarr. |
.env.sample |
Adds SPORTARR_UID default value for manual install. |
Suppressed comments (1)
setup.sh:45
setup.shdoesn’t set ownership on thesportarr-configdirectory (it does for the other service config dirs). Without this, Sportarr may not be able to write its config when using the manual install flow.
sudo usermod -a -G mediacenter audiobookshelf
sudo usermod -a -G mediacenter sportarr
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Luctia
left a comment
There was a problem hiding this comment.
Thanks for submitting this PR! This seems like a cool project. I think the PR looks mostly OK but do agree with Copilot that, for the shell script and sample Docker compose file some variables should be used.
Luctia
left a comment
There was a problem hiding this comment.
That should've been a request changes ;)
…ata dirs Addresses review feedback from Copilot and Luctia on PR #84. The sample docker-compose sportarr service hardcoded PUID/PGID/TZ and absolute /opt/ezarr paths instead of using the same ${SPORTARR_UID}/ ${MEDIACENTER_GID}/${TIMEZONE}/${ROOT_DIR} variables every other service in the file uses, breaking custom ROOT_DIR/timezone/UID setups. setup.sh created the sportarr user but never created its config or sports data directories, even though the PR description said it did. Changes: - docker-compose.yml.sample: sportarr block now matches the exact variable pattern radarr/sonarr/etc. use - setup.sh: added sportarr to the config-dir mkdir list, sports to the data-dir mkdir list (matching the CLI-generated path's existing behavior), and a chown line for sportarr-config
Thanks for the review! Both points should be addressed in 70f0cf8, the compose sample now uses the env vars, and setup.sh creates the sportarr user, its config dir, and the sports folders under data/{torrents,usenet,media} that the description mentions. Ready for another look when you get a chance. |
Thank you for your support and patience! |
Sportarr (https://github.com/Sportarr/Sportarr) is a sports event
manager in the arr family. This adds it following the existing
per-service pattern: compose entry (official sportarr/sportarr image,
default port 1867), service user UID 13015 in the mediacenter group
with a data/{media,usenet,torrents}/sports folder, the CLI prompt,
.env.sample/setup.sh/remove_old_users.sh entries and a README mention.
I maintain Sportarr; happy to adjust anything.