#seed #home #lab #manage #physical #server #authentication

yanked crustpass

Manage seed data for my home lab

1 unstable release

new 0.0.1 Feb 19, 2025

#26 in #lab

Download history 182/week @ 2025-02-11

182 downloads per month

Custom license

68KB
897 lines

crustpass

Manage seed data for my home lab.

Configuration

CRUSTPASS_CONFIGURATION_FILE - Path to the settings file. Default: /etc/crustpass/configuration.json

CRUSTPASS_CONFIGURATION_JSON - JSON string of settings. Default: null

Priorities: CRUSTPASS_CONFIGURATION_FILE > CRUSTPASS_CONFIGURATION_JSON

{
    "server" : "See Server",
    "physical": "See Physical",
    "authentication": "See Authentication"
}

RUST_LOG=crustpass=debug - Enable debug logging.

Configuration: Server

Server Settings. tls is optional.

{
    "socket_addr": "Listen address for the server, Example: `127.0.0.1:8080`",
    "tls": {
        "cert": "PEM encoded certificate",
        "key": "PEM encoded private key"
    }
}

Configuration: Physical

Persistence layer for the seed data.

{
    "physical_type": "Type of physical storage",
    "physical_details": "Details for the physical storage"
}
  • libsql

    {
        "db_url": "Database connection string",
        "auth_token": "Authentication token for the database",
        "table_name": "Table name for the seed data"
    }
    

Configuration: Authentication

Authentication layer for the API.

{
    "authentication_type": "Type of authentication",
    "authentication_details": "Details for the authentication"
}
  • admin_api_key

    {
        "api_key": "Admin API key"
    }
    

Dependencies

~20–31MB
~555K SLoC