Skip to main content

This project contains bootstrap code to speed up the development of AWS based microservices

Project description

AWS Microservice Bootstrap Code

This project contains bootstrap code to speed up the development of AWS based microservices

This includes:

  • Redis Cache
  • EventBridge
  • DynamoDB Models, Tables, and Objects
  • SQS Queues
  • Secrets Manager
  • S3 Storage

This project also includes base code for:

  • Logger Definitions
  • Service Connections
  • Flask App Definitions
  • Additional Utilities

Working On Microgue

Repo: https://bitbucket.org/michaelhudelson/microgue/src/master

Clone: git clone https://bitbucket.org/michaelhudelson/microgue/src/master

Requirements

  • Python 3.7+

Pre-Setup

  • Make sure you have an IAM user created with correct permissions in your AWS account

    • Create an Access Key on that user

    • Install awscli pip install awscli

    • Add that Access Key with aws configure

    • Verify you are using the correct Access Key with aws configure list

    • You can also verify by looking at the file ~/.aws/credentials

Install Microgue

pip install microgue

Flask Setup (Optional)

  • Put the following code in the app.py file in the root of the project
import logging
from microgue.abstract_app import AbstractApp

logging.basicConfig()


class App(AbstractApp):
    pass


app = App().app
  • In the terminal run the following commands
export PYTHONUNBUFFERED=1
export FLASK_DEBUG=1
flask run

Distribution

# update version in setup.py

# commit and push changes
git add .
git commit -m "v1.0.X"
git push origin master

# tag the commit and push
git tag -a v1.0.X -m "Release v1.0.X"
git push --tags

# package with:
python setup.py sdist bdist_wheel

# https://pypi.org/project/microgue/
# upload to pypi with:
python -m twine upload dist/*

# OPTIONAL
# https://test.pypi.org/project/microgue/
# upload to test pypi with:
twine upload --repository-url https://test.pypi.org/legacy/ dist/*

Backlog

  • get_all accept sk_operation ["eq", "begins_with", "between", "lt", "lte", "gt", "gte"]
    • Operation.begins_with = lambda sk, sk_value: Key(sk).begins_with(sk_value)

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

microgue-4.0.2.tar.gz (18.4 kB view details)

Uploaded Source

Built Distribution

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

microgue-4.0.2-py3-none-any.whl (31.2 kB view details)

Uploaded Python 3

File details

Details for the file microgue-4.0.2.tar.gz.

File metadata

  • Download URL: microgue-4.0.2.tar.gz
  • Upload date:
  • Size: 18.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for microgue-4.0.2.tar.gz
Algorithm Hash digest
SHA256 a102abff3fa949702705431021cfdf461dd3fcb4d52aa0a92f9fc4c53760b3ab
MD5 d2dba51959ab181f7f9e9fb34d42bfec
BLAKE2b-256 4332fc3294e72c189df2ec0dbf5dd684179ea13a05b97fc1cc72159904036320

See more details on using hashes here.

File details

Details for the file microgue-4.0.2-py3-none-any.whl.

File metadata

  • Download URL: microgue-4.0.2-py3-none-any.whl
  • Upload date:
  • Size: 31.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for microgue-4.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 94e4340061d7df01ae7c63f7ccc247fadec7e2ae7ccc13a095b373bc020752a6
MD5 77ca5c522da4dd45bd4cc4505731abc2
BLAKE2b-256 68bbfaf19a17126d6b55e8d58c2f2ac3b762007dbe559dbda6e7d4cc86594594

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