Skip to main content

Rest API for the hub.

Project description

codecov

laminhub-rest: Cross-instance management

Note: For more extensive documentation & testing, see docs.

Summary

  1. Installation
  2. CLI
    1. Run server
    2. Run tests
    3. Launch Jupyter lab
    4. Migrate
  3. Deployment
  4. Usage
  5. Release process

1. Installation

  1. Clone this repository

  2. Navigate to the repository and run:

    pip install .
    

2. Dependencies

  1. Supabase CLI

    To use lnhub CLI on local environment you will first have to install and configure Supabase CLI.

  2. Docker

    You must also have Docker installed to allow Supabase CLI to create and run the relevant containers

3. Local Development

The lnhub script serves as the entrypoint for all actions you need to run for local development.

:warning: It is important that you use this entrypoint as it properly configures the settings.

To ensure that the environment is properly configured you can do one of three things:

  1. Set LAMIN_ENV=local prior to running lnhub. This will ensure that a local Supabase instance is started and that the connection strings are properly configured.

  2. If you want to connect to an external Supabase (either in the cloud or managed by another process), you can customize LAMIN_ENV=foobar (or prod or staging) and place a corresponding .env file in the root folder. In this case it would be laminhub-rest--foobar.env.

    • The .env file must contain values for the following variables:

      POSTGRES_DSN
      SUPABASE_API_URL
      SUPABASE_ANON_KEY
      SUPABASE_SERVICE_KEY
      

Run the server

LAMIN_ENV=local lnhub run

Run tests

LAMIN_ENV=local lnhub test -s test_local

Any parameters after the lnhub test command are passed directly to nox

Launch Jupyter lab

LAMIN_ENV=local lnhub jupyter

Open an IPython shell

LAMIN_ENV=local lnhub shell

Migrate

See Migrations

3. Deployment

Push on the staging branch to deploy in staging.

Push on the main branch to deploy in production.

4. Usage

Access API documentation from these endpoints.

Locally:

http://localhost:8000/docs

On staging server :

https://laminhub-rest-cloud-run-staging-xv4y7p4gqa-uc.a.run.app/docs

On production server:

https://laminhub-rest-cloud-run-main-xv4y7p4gqa-uc.a.run.app/docs

5. Release process

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

laminhub_rest-0.14.11.tar.gz (65.0 kB view details)

Uploaded Source

Built Distribution

laminhub_rest-0.14.11-py2.py3-none-any.whl (73.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file laminhub_rest-0.14.11.tar.gz.

File metadata

  • Download URL: laminhub_rest-0.14.11.tar.gz
  • Upload date:
  • Size: 65.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.28.1

File hashes

Hashes for laminhub_rest-0.14.11.tar.gz
Algorithm Hash digest
SHA256 bad43d5214f19fb763daffbc623fec2cdaf5ef50daf206414bf6a26c71337ca5
MD5 90dec83972dc6f269d2bcd1e55b191c8
BLAKE2b-256 8aab1c360008d49e4455b6459c6beb6f2052fb2d6ecf77ccdd2fb14a5e5cc1fb

See more details on using hashes here.

File details

Details for the file laminhub_rest-0.14.11-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for laminhub_rest-0.14.11-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 471c4cc9f901ae644fcc7eba719849575f4eb35b2ac222b6434dc73ad82d0eec
MD5 7906b815fa02f1e8bc18473674c9771f
BLAKE2b-256 09ab61e6350e7df0393bbdd44502825dccb42d63466c23476d28aaf66a71628b

See more details on using hashes here.

Supported by

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