Skip to main content

Urbit hosting and automation platform

Project description

Shipyard

Urbit hosting and automation platform.

Note: this is a Pre-Release package. All changes will be breaking. Wait for release 1.0.0 or later.

Install

pip install shipyard-urbit

Usage

shipyard

To use the application locally, run shipyard api and visit localhost:8000.

For multi-user production deploymenrs, or any other custom configuration, use shipyard gunicorn passing Gunicorn server options (Reference). Omit the wsgi_app argument and worker_class option as these are preconfigured by shipyard.

Configuration

Specify the following environment vars to configure your application. You may use a .env file in the location where shipyard is run.

  • SHIPYARD_DATA_DIR - directory where SQLite database and other data will live, default: ~/.shipyard/
    • Override at runtime using the --data-dir option. Global command line options must come before the application command, example: shipyard --data-dir=mydir api
  • SHIPYARD_SQLITE_FILENAME - name of the db file within the data directory, default: shipyard.db
  • SHIPYARD_POSTGRES_URL - PostgreSQL connection string to override use of SQLite, default: None

PostgreSQL is only recommended for large multi-user deployments. You must create your database before connecting with shipyard like so:

CREATE DATABASE shipyard;

Then SHIPYARD_POSTGRES_URL should look something like this:

postgresql://user:password@127.0.0.1:5432/shipyard

API Overview

Visit [redacted] for full API Documentation.

Development

Modules

shipyard

  • db.py - database engine for SQLite/PostreSQL application state
  • models.py - types used throughout the project
  • settings.py - system-wide settings and env vars
  • tasks.py - for running background jobs or long running processes

shipyard.api

HTTP API built with FastAPI.

shipyard.cli

Command-line interface built with Typer.

shipyard.colony

Host setup and configuration using Ansible.

shipyard.deploy

Creating and migrating Urbit ships within our host infrastructure.

shipyard.envoy

Communication and direction of Urbit ships.

shipyard.vigil

Monitoring and alerting. WIP.

License

This project is licensed under Apache-2.0. Code licensed from other projects will be clearly marked with the appropriate notice.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

shipyard_urbit-0.1.4.tar.gz (24.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

shipyard_urbit-0.1.4-py3-none-any.whl (29.6 kB view details)

Uploaded Python 3

File details

Details for the file shipyard_urbit-0.1.4.tar.gz.

File metadata

  • Download URL: shipyard_urbit-0.1.4.tar.gz
  • Upload date:
  • Size: 24.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.8.16 Linux/5.15.0-86-generic

File hashes

Hashes for shipyard_urbit-0.1.4.tar.gz
Algorithm Hash digest
SHA256 4c7a9f1392bb15a747202dd65b335b43ea0ad93001332c55722582278ded340c
MD5 58c0c64ac02f67616d27dfc18c87cdb3
BLAKE2b-256 9bd8bda474abb4c962c1e7a85a200a8464367394dfb95e9def13274a36d33652

See more details on using hashes here.

File details

Details for the file shipyard_urbit-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: shipyard_urbit-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 29.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.8.16 Linux/5.15.0-86-generic

File hashes

Hashes for shipyard_urbit-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 78e2e2712165f2bae368b12082da96e615c2c609d81f6bbeeca9da0b7927491c
MD5 51b036e26ded4a2c05222590dbc5d18e
BLAKE2b-256 e9bc2059dc7a6fb97d71238d6a9be8149c7623c70e2c64167b5a62d02bf027d0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page