Skip to main content

No project description provided

Project description

Bootstrapper

Bootstrapper is used to quickly establish generic microservices.

What does it do

Bootstrapper takes care of several tedious and menial microservice tasks including:

  • Handles the loading process of microservices including a hand off back to the business logic
  • Abstracts away common integrations (referred to as drivers) such as MySQL, AWS (boto3), MongoDB, Redis, Sentry, SocketIO, FastAPI
    • Each driver has varying levels of abstraction and completeness
  • Abstracts away environments. The bootstrapper treats the loading process differently depending on whether the service is in prod, qa, test, or dev
  • Exposes an API to the developer for creating integrations between microservices which are part of the same application. These are referred to as integrations.
  • Loads default and developer defined configuration files depending on the environment the service is in.
  • Exposes a singleton state manager to the microservice
  • Contains a small library of useful models, functions, and code for development of microservices.
  • Installs many common PyPi dependencies which are used across most microservices

What is isn't

  • Bootstrapper is not a microservice template, however, it can and should be used within microservice templates.
    • Due to proprietary nature of microservice templates, eHelply has chosen not to offer one publicly at the moment. This decision may change in the future.
  • Perfect. There are many drivers which could be added or improved. Feel free to submit PRs to add new drivers.

Is this stable and production ready?

The quick and dirty answer is probably. eHelply is using Bootstrapper to power all of our microservices. For this reason, this project continues to mature and evolve over time. At this point, we would consider it to be reasonably stable. By no means is it feature complete, and it is possible for breaking changes to be introduced in the near or long term, but we don't expect the Bootstrapper to fail in production scenarios at this time.

In addition to this information, eHelply plans to launch microservices into production in late 2020 or early 2021, so we would expect this project to be officially production ready at that point in time.

Contributing

The goal of Bootstrapper is to be a generic microservice bootstrapper. This means that it should provide value to any company, organization, or individual that wishes to utilize it. For this reason, all contributions must also be generic and refrain from opinionated choices.

Since eHelply is sponsoring the development of this project, it is unlikely that breaking changes would be accepted and merged in from third parties. However, we always welcome new (non-breaking) additions and bug fixes. And, who knows, if your breaking change is necessary, it will be merged in.

Commands

  • Run tests: pytest
  • Run tests with coverage report: pytest --cov=ehelply_bootstrapper

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

ehelply-bootstrapper-0.12.49.tar.gz (40.9 kB view details)

Uploaded Source

Built Distribution

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

ehelply_bootstrapper-0.12.49-py3-none-any.whl (52.2 kB view details)

Uploaded Python 3

File details

Details for the file ehelply-bootstrapper-0.12.49.tar.gz.

File metadata

  • Download URL: ehelply-bootstrapper-0.12.49.tar.gz
  • Upload date:
  • Size: 40.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.5 CPython/3.8.2 Windows/10

File hashes

Hashes for ehelply-bootstrapper-0.12.49.tar.gz
Algorithm Hash digest
SHA256 511c258162697ea3d3eed118903aaa5160b730be496f02e960a5710f481bec2e
MD5 7b77b8e20ac75b23fd360fa1b6ced576
BLAKE2b-256 2c5b79690bec16cdf3f8ed35f49d5863d7d8ef220cb8c31bc3a3301befbf4e6f

See more details on using hashes here.

File details

Details for the file ehelply_bootstrapper-0.12.49-py3-none-any.whl.

File metadata

File hashes

Hashes for ehelply_bootstrapper-0.12.49-py3-none-any.whl
Algorithm Hash digest
SHA256 56b1d2306c58f80e1c71b3ec06f99329a776108cd2cd8f63206333e369c31e94
MD5 09da5fa9561d835a664463c00ad91dbf
BLAKE2b-256 6bb12fd4d4321bb5eb4922b57bcc40946b211fb42496b64c47693421bb7fe5c9

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