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.
| environment: | ||
| - PUID=13015 | ||
| - PGID=13000 | ||
| - UMASK=002 | ||
| - TZ=Etc/UTC |
| volumes: | ||
| - /opt/ezarr/config/sportarr-config:/config | ||
| - /opt/ezarr/data:/data |
| sudo usermod -a -G mediacenter bazarr | ||
| sudo usermod -a -G mediacenter audiobookshelf | ||
| sudo usermod -a -G mediacenter sportarr |
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.
| sportarr: | ||
| image: sportarr/sportarr:latest | ||
| container_name: sportarr | ||
| environment: | ||
| - PUID=13015 | ||
| - PGID=13000 | ||
| - UMASK=002 | ||
| - TZ=Etc/UTC | ||
| volumes: | ||
| - /opt/ezarr/config/sportarr-config:/config | ||
| - /opt/ezarr/data:/data | ||
| ports: | ||
| - "1867:1867" | ||
| restart: unless-stopped |
There was a problem hiding this comment.
I agree with Copilot that variables should be used here for environment variables and volumes.
| sudo mkdir -pv ${ROOT_DIR:-.}/config/{sonarr,radarr,lidarr,mylar,prowlarr,qbittorrent,jackett,audiobookshelf,seerr,plex,jellyfin,tautulli,sabnzbd,bazarr}-config | ||
| sudo mkdir -pv ${ROOT_DIR:-.}/data/{torrents,usenet,media}/{tv,movies,music,books,comics,audiobooks,podcasts,audiobookshelf-metadata} |
There was a problem hiding this comment.
In your PR you mention a data/{media,usenet,torrents}/sports folder is added, but that doesn't seem to be the case for this type of setup.
Luctia
left a comment
There was a problem hiding this comment.
That should've been a request changes ;)
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.