Self-hosting services for funsies
This repository has been archived on 2024-07-19. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
2023-12-16 00:01:16 -05:00
services build(plex): plex@1.32.8 2023-12-16 00:01:16 -05:00
.gitignore chore(python): remove leftover references to old Python logic 2023-12-15 23:31:50 -05:00
bootstrap.sh chore(deadcode): clean up pyinvoke+pyinfra logic, python venv 2023-12-15 15:52:02 -05:00
README.md feat: update all services to tag images with release or dev+hash 2023-12-15 23:53:56 -05:00
Taskfile.internal.yml feat(taskfiles): expose current version based on latest release or dev tag 2023-12-15 23:51:38 -05:00
Taskfile.yml feat(taskfiles): expose current version based on latest release or dev tag 2023-12-15 23:51:38 -05:00

spadinaistan

Quoi?

Spadinaistan is my personal cloud, which runs on an old laptop in my office. This code isn't intended to be used by anyone else.

Getting started

Use . bootstrap.sh to set up Task.

Once this is done, task -l will outline all available commands.

Configuration

Environment provided to tasks

The task runner requires a env.yml file to exist at the top level. This should define a few global variables that are specific to the environment:

version: '3'

env:
    # Path to the application data storage root.
    APP_DATA_DIR: ...
    # Prefix to all container names.
    CONTAINER_NAME_PREFIX: ...
    # Path to the app-specific dotenv files.
    ENV_FILE_DIR: ...
    # Name of the network associated with the tunnel exposing services.
    SHARED_NETWORK_NAME: ...
    # Path to the storage root.
    STORAGE_DIR: ...

The env.yml file is ignored by version-control.

Image versions

When building and starting images, images are tagged with either the release version (if on a commit that's tagged with a release) or a dev tag that includes the hash (i.e. dev-<commit-hash>).