From a8513128de647ff229a3de80d2a8e7a5e759a744 Mon Sep 17 00:00:00 2001 From: Benjamin Morris Date: Tue, 26 Sep 2023 17:58:42 -0700 Subject: [PATCH] add method for auto updating rdklib versions --- pyproject.toml | 2 +- rdk/rdklib_versions.yaml | 38 ++++++++++++++++++++------------------ update_rdklib_versions.py | 27 +++++++++++++++++++++++++++ 3 files changed, 48 insertions(+), 19 deletions(-) create mode 100644 update_rdklib_versions.py diff --git a/pyproject.toml b/pyproject.toml index 6f54dc4..77d9192 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -113,7 +113,7 @@ boto3 = "^1.26.139" pyyaml = "^6.0" [tool.poetry.group.dev.dependencies] -rdklib = "^0.3.0" +rdklib = "^0.3" black = "^22.12.0" pydocstyle = "^6.3.0" isort = {extras = ["toml"], version = "^5.11.4"} diff --git a/rdk/rdklib_versions.yaml b/rdk/rdklib_versions.yaml index c1eb322..c2f2148 100644 --- a/rdk/rdklib_versions.yaml +++ b/rdk/rdklib_versions.yaml @@ -1,19 +1,21 @@ -# This file should be updated to contain the latest stable Lambda layer from the rdklib SAM application -# Layers are published to each region, which is why some have more versions than others + +# This file should be updated to contain the latest stable Lambda layer from the rdklib SAM application. +# Layers are published to each region, which is why some have more versions than others. +# This file was automatically generated by update_rdklib_versions.py; check for accuracy before deploying. rdklib_layer_versions: - ap-southeast-1: "65" - ap-south-1: "5" - us-east-2: "5" - us-east-1: "5" - us-west-1: "4" - us-west-2: "4" - ap-northeast-2: "5" - ap-southeast-2: "5" - ap-northeast-1: "5" - ca-central-1: "5" - eu-central-1: "5" - eu-west-1: "5" - eu-west-2: "4" - eu-west-3: "5" - eu-north-1: "5" - sa-east-1: "5" + ap-northeast-1: 17 + ap-northeast-2: 17 + ap-south-1: 17 + ap-southeast-1: 76 + ap-southeast-2: 15 + ca-central-1: 17 + eu-central-1: 16 + eu-north-1: 16 + eu-west-1: 17 + eu-west-2: 13 + eu-west-3: 17 + sa-east-1: 17 + us-east-1: 18 + us-east-2: 77 + us-west-1: 15 + us-west-2: 16 diff --git a/update_rdklib_versions.py b/update_rdklib_versions.py new file mode 100644 index 0000000..94eb792 --- /dev/null +++ b/update_rdklib_versions.py @@ -0,0 +1,27 @@ +import yaml +import boto3 + +with open("rdk/rdklib_versions.yaml", "r") as f: + # read the file + regions = yaml.safe_load(f) + +version_dict = {"rdklib_layer_versions": {}} +for region in regions["rdklib_layer_versions"]: + lambda_client = boto3.client( + "lambda", + config=boto3.session.Config(region_name=region), + ) + latest_version = lambda_client.list_layer_versions(LayerName="rdklib-layer", MaxItems=1)["LayerVersions"][0][ + "Version" + ] + version_dict["rdklib_layer_versions"][region] = latest_version + +with open("rdk/rdklib_versions.yaml", "w") as f: + f.write( + """ +# This file should be updated to contain the latest stable Lambda layer from the rdklib SAM application. +# Layers are published to each region, which is why some have more versions than others. +# This file was automatically generated by update_rdklib_versions.py; check for accuracy before deploying. +""" + ) + f.write(yaml.dump(version_dict))