https://github.com/aruhier/ansible-role-kubernetes-sickchill
Ansible role to install Sickchill on Kubernetes
https://github.com/aruhier/ansible-role-kubernetes-sickchill
ansible kubernetes sickrage
Last synced: 2 months ago
JSON representation
Ansible role to install Sickchill on Kubernetes
- Host: GitHub
- URL: https://github.com/aruhier/ansible-role-kubernetes-sickchill
- Owner: aruhier
- License: other
- Created: 2018-01-09T10:25:30.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2023-03-20T23:33:48.000Z (about 2 years ago)
- Last Synced: 2025-03-15T05:37:50.380Z (2 months ago)
- Topics: ansible, kubernetes, sickrage
- Language: Jinja
- Homepage:
- Size: 13.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.mkd
Awesome Lists containing this project
README
Ansible Role: sickchill for Kubernetes
=====================================Ansible role to install [sickchill](https://sickchill.github.io/) on Kubernetes.
Role Variables
--------------```yaml
# Image used
kubernetes_sickchill_image: "linuxserver/sickchill:latest"# Namespace
kubernetes_sickchill_namespace: "default"
# App name (used as selector)
kubernetes_sickchill_app: "sickchill"
# Deployment name
kubernetes_sickchill_deployment: "sickchill-deployment"
# Service name
kubernetes_sickchill_service: "sickchill"# Number of replicas
kubernetes_sickchill_replicas: 1
kubernetes_sickchill_revision_history: 1# Node selector
kubernetes_sickchill_node_selector: {}# Add custom labels in the deployment metadata section
kubernetes_sickchill_deployment_labels: {}
# Add custom annotations in the deployment metadata section
kubernetes_sickchill_deployment_annotations: {}kubernetes_sickchill_resources:
limits:
memory: "756Mi"
requests:
memory: "256Mi"# Setup ingress for sickchill
kubernetes_sickchill_setup_ingress: false
kubernetes_sickchill_ingress:
name: "sickchill-ingress"
host: "sickchill.example.com"
annotations:
tls:### Volumes ###
# For each volume, `definition` and `subPath` can be used. Their content is
# exactly what would be in a Kkubernetes pod manifest.# Downloads volumes. Mounted in /downloads/ (see examples for more details)
kubernetes_sickchill_downloads_volumes: {}
# TV/series volumes. Mounted in /tv/ (see examples for more details)
kubernetes_sickchill_tv_volumes: {}
# Watch directories. Useful when blackhole is used. Mounted in /watchdirs/ (see
# examples for more details)
kubernetes_sickchill_watchdirs_volumes: {}# sickchill config volume. Contains the database, arts cache and config.
kubernetes_sickchill_config_volume:
definition:
```Dependencies
------------Kubectl needs to be installed on the host targeted by the role.
Example Playbook
----------------```yaml
- hosts: kube-master
run_once: true
vars:
kubernetes_sickchill_downloads_volumes:
# This volume will be mounted as /downloads/completed
completed:
definition:
glusterfs:
endpoints: gluster-example-cluster
path: volume-torrents
readOnly: false
subPath: "completed"kubernetes_sickchill_tv_volumes:
# This volume will be mounted as /tv/global
global:
definition:
glusterfs:
endpoints: gluster-example-cluster
path: volume-tv
readOnly: false# Directories watched by our torrents client
kubernetes_sickchill_watchdirs_volumes:
# This volume will be mounted as /watchdirs/providers
providers:
definition:
glusterfs:
endpoints: gluster-example-cluster
path: volume-watchdirs
readOnly: false
subPath: "example/providers"kubernetes_sickchill_config_volume:
definition:
glusterfs:
endpoints: gluster-example-cluster
path: volume-sickchill
readOnly: false
subPath: "config"kubernetes_sickchill_setup_ingress: true
kubernetes_sickchill_ingress:
name: "sickchill-ingress"
host: "sickchill.example.com"
annotations:
kubernetes.io/tls-acme: "true"
tls:
- secretName: "sickchill-ingress-tls"
hosts:
- "sickchill.example.com"
roles:
- role: Anthony25.kubernetes_sickchill
```Use `run_once` to run the role on only one available master in the cluster.
If the sickchill web interface is not reachable, please check that it is
listening on `0.0.0.0:5050`, and not only `localhost:5050` as the default is.License
-------Tool under the BSD license. Do not hesitate to report bugs, ask me some
questions or do some pull request if you want to!