Making your life easier on doing simple tasks in AWS via boto3
Project description
Note Now cloudgeass has an official documentation page on readthedocs! possui uma documentação oficial no readthedocs! Check it out to get access to the latest features!
Quickstart
To start using the package, just install it using pip (or any other Python dependency management of your choose) as:
pip install cloudgeass
You may want to install cloudgeass in a Python virtual environment to get a good control of your project or application dependencies. If you don't know what this is about, feel free to take a look at this excellent article from Real Python.
Modules
Getting straight to the point, each cloudgeass module represents an AWS service that contains at least one class and a bunch of methods built from both boto's source client and resource for that service.
In other words, some modules that you can find here are:
cloudgeass.aws.s3
for working with S3 servicecloudgeass.aws.ec2
for working with EC2 servicecloudgeass.aws.secrets
for working with Secrets Manager service- and some others
Classes
Each one of the aforementioned modules have at least one class that can be imported on user's application in order to provide access to all features for that given AWS service. So, we have:
cloudgeass.aws.s3.S3Client
class with methods to operate with S3 servicecloudgeass.aws.ec2.EC2Client
class with methods to operate with EC2 servicecloudgeass.aws.secrets.SecretsManagerClient
class with methods to operate with Secrets Manager service- and some others
Attributes
All cloudgeass' service classes are initialized with a set of predefined attributes to make the work easier. Those basic attributes are:
Service class attribute | Description |
---|---|
self.logger |
A preconfigured logger object to build and stream informative log messages |
self.client |
A boto3 client for the given service |
self.resource |
A boto3 resource for the given service |
The attributes can be externally accessed for all class instances created on an application. This means users can build an application using both cloudgeass and source boto3 code.
Methods
Finally, each service class has its own set of methods that, in fact, enables the power of using cloudgeass to do simple tasks in an AWS environment. To mention some of them, we have:
- S3Client.get_last_date_partition() to get the last date partition from a table stored in S3
- EC2Client.get_default_vpc_id() to get the default VPC ID of an AWS account
- SecretsManagerClient.get_secret_string() to get a secret string given a secret ID
Contact me
- GitHub: @ThiagoPanini
- LinkedIn: Thiago Panini
- Hashnode: panini-tech-lab
- DevTo: thiagopanini
References
Python
Docs
- NumPy docstrings
- Eduardo Mendes - Live de Python 189 - MkDocs
- MkDocs
- pmdown-extensions
- GitHub - MkDocs Themes
- GitHub - Material Theme for MkDocs
- Material for MkDocs - Setup
Github
- GitHub Actions - pypa/gh-action-pypi-publish
- Medium - Major, Minor and Patch
- Medium - Automate PyPI Releases with GitHub Actions
Tests
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
Built Distribution
File details
Details for the file cloudgeass-2.0.1.tar.gz
.
File metadata
- Download URL: cloudgeass-2.0.1.tar.gz
- Upload date:
- Size: 24.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e2693fc0109b9cf50c97f7a5bba98ce3257123f3d5104ff4b1f2ab5987ebcee0 |
|
MD5 | 62be6e68f6616a10e90f9c169c1f1540 |
|
BLAKE2b-256 | 4f28fbb5cef549bb7bbc7f8a510ad99d397045092e7c440de6fc10c95c118c54 |
File details
Details for the file cloudgeass-2.0.1-py3-none-any.whl
.
File metadata
- Download URL: cloudgeass-2.0.1-py3-none-any.whl
- Upload date:
- Size: 27.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7d30716a8ea452da9eacfe67d5eeb4ed623121cd9c9b1c07dc48050d9953dfa9 |
|
MD5 | b8735b450fecf6081aa8b519570d93aa |
|
BLAKE2b-256 | e1848df50dac902b4184edac8f3c8143b3e552c99cccb94bc7be7e1fcb0752f0 |