No description
- Jinja 100%
|
|
||
|---|---|---|
| defaults | ||
| handlers | ||
| tasks | ||
| templates | ||
| README.md | ||
Ansible Role: AIOStreams
Installs and configures AIOStreams from source on Debian/Ubuntu servers using Node.js, pnpm, and systemd.
Hardware requirements
The host needs a minimum of 4GB to compile
Requirements
No special requirements; note that this role requires root access, so either run it in a playbook with a global become: yes, or invoke the role in your playbook like:
- hosts: aiostreams
roles:
- role: ansible-role-aiostreams
become: yes
Role Variables
Role vars (global)
| Variable | Default | Description |
|---|---|---|
aiostreams_port |
3000 |
Application port exposed by AIOStreams. |
aiostreams_repo |
"https://github.com/Viren070/AIOStreams.git" |
Git repository URL for AIOStreams. |
aiostreams_dir |
"/opt/aiostreams" |
Install and working directory for the app. |
aiostreams_user |
"aiostreams" |
System user that owns and runs AIOStreams. |
aiostreams_base_url |
"" |
Public base URL for AIOStreams. |
aiostreams_addon_id |
"aiostreams" |
Unique addon identifier used in the manifest. |
aiostreams_secret_key |
"" |
App secret key for sessions/signing. |
aiostreams_addon_password |
"" |
Password for addon-related functionality. |
aiostreams_users |
[] |
List of AIOStreams users to manage via the API (see Example users.yml below). |
aiostreams_database_uri |
"" |
Full database URI override. If set, this is used directly. |
aiostreams_db_host |
"" |
PostgreSQL hostname used when aiostreams_database_uri is not set. |
aiostreams_db_port |
"5432" |
PostgreSQL port used when building DATABASE_URI. |
aiostreams_db_name |
"" |
PostgreSQL database name used when building DATABASE_URI. |
aiostreams_db_user |
"" |
PostgreSQL user used when building DATABASE_URI. |
aiostreams_db_password |
"" |
PostgreSQL password used when building DATABASE_URI. |
pnpm_bin |
"/usr/bin/pnpm" |
Path to the pnpm binary used for build/start commands. |
Dependencies
None.
Example Playbook
- hosts: aiostreams
become: true
vars_files:
- ../../secrets.yml
roles:
- role: ansible-role-aiostreams
vars:
aiostreams_dir: "/opt/aiostreams"
aiostreams_user: "aiostreams"
aiostreams_base_url: "https://aio.example.com"
Example users.yml
Define users in playbooks/aiostreams/users.yml. The variable is loaded via vars_files in the playbook.
---
aiostreams_users:
- name: Example user 1
id: 1
password: "examplepassword"
quality: "UHD"
- name: Example user 2
id: 2
password: "examplepassword"
quality: "HD"
Supported user fields:
| Variable | Required | Description |
|---|---|---|
name |
yes | Display name stored in the generated UUID fact map. |
id |
yes | Stable unique identifier used as the key in /etc/ansible/facts.d/aio_user_uuids.fact. |
password |
yes | User password sent to the AIOStreams API. |
quality |
yes | Selects the matching config template, for example userData-HD.j2 or userData-UHD.j2. |
removed |
no | When true, the user is deleted and the stored UUID is removed from local facts. |
License
MIT / BSD
Author Information
Role is maintained by J&J