Scrapes Lambda Runtime Info from Amazon's Docs
Project description
Lambda Runtimes
Python library for getting a list of all Lambda runtimes from AWS's documentation page, and interacting with it.
Usage
You can install the lambda-runtimes
package from PyPI with pip:
pip3 install lambda-runtimes
or clone this repository and install the requirements with pip3 install -r requirements.txt
Basic Usage
The LambdaRuntimes library implements a list of LambdaRuntimes fetched from the AWS documentation website. Internally, it is just a list of results parsed from the tables on the Lambda runtimes page with some helper functions to make working with them easier.
Import the library at the top of your python file and create an instance of the LambdaRuntimes
class. This fetches a list of the runtimes from the AWS docs page.
from lambdaruntimes import LambdaRuntimes
runtimes = LambdaRuntimes()
You can optionally specify another location for the source docs page if you have a cache or proxy.
from lambdaruntimes import LambdaRuntimes
runtimes = LambdaRuntimes(lambda_runtime_docs_url="http://localhost:8000/lambda-runtimes.html")
Iterating Over Runtimes
The LambdaRuntimes
class is a valid iterator, so you can loop over all runtimes using normal Python flow control tools.
from lambdaruntimes import LambdaRuntimes
runtimes = LambdaRuntimes()
for runtime in runtimes:
print(runtime)
You can also directly access the runtimes
property of the instance, and iterate over it instead.
Getting a Single Runtime
You can query for a runtime by its identifier using the get_runtime()
function.
runtimes.get_runtime("nodejs")
>>> LambdaRuntime(name='Node.js 0.10', identifier='nodejs', sdk=None, os='Amazon Linux', arch=None, deprecation_phase_1=datetime.datetime(2016, 10, 31, 0, 0), deprecation_phase_2=datetime.datetime(2016, 10, 31, 0, 0), runtime_is_expiring=True, runtime_is_expired=True)
Checking if a Runtime is Expiring
You can query if a runtime has a set expiry date by its identifier using the runtime_is_expiring()
function.
runtimes.runtime_is_expiring("nodejs")
>>> True
Checking if a Runtime has Expired
You can query if a runtime has expired by its identifier using the runtime_is_expired()
function.
runtimes.runtime_is_expired("nodejs")
>>> True
The LambdaRuntime Data Class
The iterables and functions in the library mostly return instances of the LambdaRuntime
class. This data class has fields that reflect the data on the AWS documentation website.
This data class is made with Pydantic and so type hints should work in your IDE of choice.
Each instance will have at least the following properties:
name: str
identifier: str
sdk: Optional[str]
os: str
arch: Optional[str]
deprecation_phase_1: Optional[datetime] = None
deprecation_phase_2: Optional[datetime] = None
runtime_is_expiring: bool
runtime_is_expired: bool
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 lambda_runtimes-0.0.2.tar.gz
.
File metadata
- Download URL: lambda_runtimes-0.0.2.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 09686c094e2fb18165824b590d1d2d7b283a10470499a72b8d3ca24e261bf1b2 |
|
MD5 | d07c320370b1bcf9532adf742c9942b0 |
|
BLAKE2b-256 | e1b5663ddff20c5b3ca5a00204965a42f3281469e80ea7bc4b60b9f21392c845 |
File details
Details for the file lambda_runtimes-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: lambda_runtimes-0.0.2-py3-none-any.whl
- Upload date:
- Size: 4.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 34ade06ca9b926376cea3fd875cda276fce9c29952eabfd4b598da2f3b44c207 |
|
MD5 | 71d3644da973f0ee461d0affdb0df03b |
|
BLAKE2b-256 | ac894919f1dd70667b30f7b7bb03163aee55177d16a7d7a3c32c548dfa9cd5ee |