{"id":31955832,"url":"https://github.com/cisagov/skeleton-aws-lambda-python","last_synced_at":"2026-03-04T06:33:52.145Z","repository":{"id":37941615,"uuid":"494589300","full_name":"cisagov/skeleton-aws-lambda-python","owner":"cisagov","description":"A skeleton project for quickly getting a new Python-based AWS Lambda project started.","archived":false,"fork":false,"pushed_at":"2026-02-23T16:20:33.000Z","size":776,"stargazers_count":6,"open_issues_count":7,"forks_count":2,"subscribers_count":3,"default_branch":"develop","last_synced_at":"2026-02-23T22:45:56.233Z","etag":null,"topics":["aws-lambda","python","serverless","skeleton"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cisagov.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-05-20T19:48:26.000Z","updated_at":"2026-01-20T18:50:26.000Z","dependencies_parsed_at":"2025-12-09T03:10:48.292Z","dependency_job_id":null,"html_url":"https://github.com/cisagov/skeleton-aws-lambda-python","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/cisagov/skeleton-aws-lambda-python","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cisagov%2Fskeleton-aws-lambda-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cisagov%2Fskeleton-aws-lambda-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cisagov%2Fskeleton-aws-lambda-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cisagov%2Fskeleton-aws-lambda-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cisagov","download_url":"https://codeload.github.com/cisagov/skeleton-aws-lambda-python/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cisagov%2Fskeleton-aws-lambda-python/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30074227,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T05:31:57.858Z","status":"ssl_error","status_checked_at":"2026-03-04T05:31:38.462Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws-lambda","python","serverless","skeleton"],"created_at":"2025-10-14T14:29:55.217Z","updated_at":"2026-03-04T06:33:52.072Z","avatar_url":"https://github.com/cisagov.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# skeleton-aws-lambda-python #\n\n[![GitHub Build Status](https://github.com/cisagov/skeleton-aws-lambda-python/workflows/build/badge.svg)](https://github.com/cisagov/skeleton-aws-lambda-python/actions)\n\nThis is a generic skeleton project that can be used to quickly get a\nnew [cisagov](https://github.com/cisagov) GitHub\n[AWS Lambda](https://aws.amazon.com/lambda/) project using the Python runtimes\nstarted. This skeleton project contains [licensing information](LICENSE), as\nwell as [pre-commit hooks](https://pre-commit.com) and\n[GitHub Actions](https://github.com/features/actions) configurations\nappropriate for the major languages that we use.\n\n## Building the base Lambda image ##\n\nThe base Lambda image can be built with the following command:\n\n```console\ndocker compose build\n```\n\nThis base image is used both to build a deployment package and to run the\nLambda locally.\n\n## Building a deployment package ##\n\nYou can build a deployment zip file to use when creating a new AWS Lambda\nfunction with the following command:\n\n```console\ndocker compose up build_deployment_package\n```\n\nThis will output the deployment zip file in the root directory.\n\n## Running the Lambda locally ##\n\nThe configuration in this repository allows you run the Lambda locally for\ntesting as long as you do not need explicit permissions for other AWS\nservices. This can be done with the following command:\n\n```console\ndocker compose up --detach run_lambda_locally\n```\n\nYou can then invoke the Lambda using the following:\n\n```console\n curl -XPOST \"http://localhost:9000/2015-03-31/functions/function/invocations\" -d '{}'\n```\n\nThe `{}` in the command is the invocation event payload to send to the Lambda\nand would be the value given as the `event` argument to the handler.\n\nOnce you are finished you can stop the detached container with the following command:\n\n```console\ndocker compose down\n```\n\n## How to update Python dependencies ##\n\nThe Lambda's Python dependencies are maintained using a [Pipenv](https://github.com/pypa/pipenv)\nconfiguration. Changes to requirements should be made to the `Pipfile` located at\n`build/Pipfile`. More information about the `Pipfile` format can be found in the\n[`pipenv` documentation](https://pipenv.pypa.io/en/latest/pipfile.html#example-pipfile).\nThe accompanying `Pipfile.lock` file contains the specific dependency versions\nthat will be installed. This file is updated automatically like so:\n\n```console\ncd build\npipenv lock\n```\n\n## New Repositories from a Skeleton ##\n\nPlease see our [Project Setup guide](https://github.com/cisagov/development-guide/tree/develop/project_setup)\nfor step-by-step instructions on how to start a new repository from\na skeleton. This will save you time and effort when configuring a\nnew repository!\n\n## Contributing ##\n\nWe welcome contributions!  Please see [`CONTRIBUTING.md`](CONTRIBUTING.md) for\ndetails.\n\n## License ##\n\nThis project is in the worldwide [public domain](LICENSE).\n\nThis project is in the public domain within the United States, and\ncopyright and related rights in the work worldwide are waived through\nthe [CC0 1.0 Universal public domain\ndedication](https://creativecommons.org/publicdomain/zero/1.0/).\n\nAll contributions to this project will be released under the CC0\ndedication. By submitting a pull request, you are agreeing to comply\nwith this waiver of copyright interest.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcisagov%2Fskeleton-aws-lambda-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcisagov%2Fskeleton-aws-lambda-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcisagov%2Fskeleton-aws-lambda-python/lists"}