Skip to content
This repository was archived by the owner on Aug 14, 2024. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
6607 commits
Select commit Hold shift + click to select a range
2ec85e4
Core: Add py.typed, Remove docs from source dist (#12232)
Apr 9, 2025
69d7a75
Step Functions Mocking: Add Support for Mounting Mocked Service Respo…
Apr 9, 2025
163790c
EC2: generate security group ids using id manager concept (#12494)
Apr 9, 2025
587ffca
KMS: enable `_custom_key_material_` for ECC keys (#12504)
Apr 10, 2025
f1ef65a
unpin pytest-httpserver, fix patches (#12507)
Apr 10, 2025
073eab9
skip flaky tests in transcribe (#12509)
Apr 10, 2025
b619ded
transcribe: add model path to vosk Model (#12479)
Apr 11, 2025
ab2d6a4
Step Functions: Increase Retry Attempts on Service Integrations for R…
Apr 11, 2025
43ad71b
SES: add ARN utility for SES identity (#12513)
Apr 11, 2025
a1eec50
APIGW: migrate TestInvokeMethod to NextGen (#12514)
Apr 11, 2025
2c9dff5
add AVP to list of CFN composite quirks (#12517)
Apr 13, 2025
1724451
Support IAM transitive session tagging (#12508)
Apr 14, 2025
5ad7f8e
feat: propagate x-ray trace id to event bridge targets (#12481)
Apr 14, 2025
22e82dc
Bump python from 3.11.11-slim-bookworm to 3.11.12-slim-bookworm in th…
Apr 15, 2025
a86bbca
Allow --profile to be specified anywhere on the CLI command line (#12…
Apr 15, 2025
fcac2f4
Upgrade dependencies, remove pytest-httpserver patch (#12524)
Apr 15, 2025
1954566
Added GH action to build community image (#12515)
Apr 15, 2025
8b4774f
StepFunctions: ListStateMachineAliases pagination support (#12496)
Apr 15, 2025
2ec3574
CloudFormation Engine v2: Base Mappings and Conditions tests for Upda…
Apr 15, 2025
3936886
CFn executor v2: provide previous payload correctly (#12511)
Apr 16, 2025
ef8845d
[AWS][Transcribe] Adding fix for validating Audio length (#12450)
Apr 16, 2025
2069add
CloudFormation Engine V2: Improve delta computation of properties, co…
Apr 17, 2025
9e84b8d
Bump moto-ext to 5.1.3.post1 (#12499)
Apr 17, 2025
072c810
revert removal of get_resource_type method (#12534)
Apr 17, 2025
3ea87fe
Add error handling if lambda logs are not received from the environme…
Apr 17, 2025
052eedf
Step Functions: Surface Support for Mocked Responses (#12525)
Apr 17, 2025
5e8dc09
apply fix for podman container labels dict (#12526)
Apr 18, 2025
4d7a031
fix links for issue & PR messages (#12541)
Apr 22, 2025
96a0216
Admin: Enable mypy during linting (#12532)
Apr 22, 2025
4ea4102
Upgrade pinned Python dependencies (#12544)
Apr 22, 2025
7e1e899
APIGW: validate REST API custom id tag (#12539)
Apr 22, 2025
77f30dc
Add dry_run support to GenerateDataKeyPair/GenerateDataKeyPairWithout…
Apr 23, 2025
102659b
Manually update ASF APIs and all dependencies (#12548)
Apr 23, 2025
bebff5e
Lambda: fix transient connection errors on first container invoke wit…
Apr 23, 2025
5aefdf2
[ESM] Support discarding events exceeding MaxRecordAgeInSeconds (#12531)
Apr 23, 2025
10bc97a
Cloud Formation Engine v2: Improve Computation of Ref Functions and P…
Apr 23, 2025
2ed4e11
fix IAM.SimulatePrincipalPolicy (#12542)
Apr 23, 2025
560b4cb
APIGW: fix Host regex to allow hyphen and remove restriction (#12549)
Apr 23, 2025
49dcd93
Clarify coverage error messages to distinguish license and emulation …
Apr 23, 2025
9a40181
Step Functions: Decrease LocalStack Sampling Delays to Speed Up Tests…
Apr 24, 2025
98c3e96
Cloud Formation v2 Engine: Support for Default fields in Parameters (…
Apr 24, 2025
e8d2029
CFn v2: support outputs (#12536)
Apr 24, 2025
5deda39
Update lambda runtime init (#12555)
Apr 25, 2025
b55fc1b
Added new codeowners for CircleCI and GithubActions (#12558)
Apr 25, 2025
7a3666f
[ESM] Fix flaky discarding record age test (#12552)
Apr 25, 2025
ef035ab
Improve stream poller exception logging (#12520)
Apr 28, 2025
4e938e5
feat: add current region and account as input to _proxy_capture_input…
Apr 28, 2025
e8b8794
Step Functions: Improve Mocked Response Integration (#12553)
Apr 28, 2025
d80eef7
Upgrade pinned Python dependencies (#12561)
Apr 29, 2025
936c697
Step Functions: Fix Mock Test for Multi-Region (#12562)
Apr 29, 2025
d2ba498
CFn: add v2 tests to CI (#12556)
Apr 29, 2025
e3f68a8
Step Functions: Mock Mode Improvements (#12560)
Apr 30, 2025
b9b868c
refactor Counter usage in APIGW (#12569)
Apr 30, 2025
7a29f27
Bump moto-ext to 5.1.4.post1 (#12563)
May 1, 2025
940aa0a
Migrate full-run integration tests from CircleCI to GH Actions except…
May 2, 2025
e59a93e
Update ASF APIs (#12578)
May 5, 2025
5c66c51
remove usage analytics module (#12573)
May 5, 2025
9b55514
Switch to using `kclpy-ext` (#12567)
May 5, 2025
d95c556
Bump python from `82c07f2` to `75a17dd` in the docker-base-images gro…
May 6, 2025
b0b64ec
Upgrade pinned Python dependencies (#12583)
May 6, 2025
7a2f96f
APIGW: fix selection pattern for AWS Lambda integration (#12580)
May 6, 2025
1b1d7cd
Step Functions: Add Telemetry for SFN_MOCK_CONFIG Usage (#12584)
May 6, 2025
5df40f1
Events: add classmethod to recreate services (#12566)
May 6, 2025
92aa776
APIGW: fix binaryMediaTypes when importing/updating REST APIs (#12586)
May 7, 2025
90b07b1
Migrate MA/MR pipeline from CircleCI to GH Actions (#12579)
May 7, 2025
549fd9b
Added main workflow to trigger full-run workflow and push results to …
May 7, 2025
c09b347
Fix provisioned concurrency set on Lambda alias (#12592)
May 7, 2025
fd727d5
Defer CDK imports in infra provisioning (#12591)
May 7, 2025
1d398de
Added secrets definition for docker pull action in aws-tests and aws-…
May 7, 2025
21f6e5f
release version 4.4.0
May 8, 2025
8a9ddca
prepare next development iteration
May 8, 2025
c38fd15
CloudFormation v2 Engine: Batch of Parity Improvements (#12589)
May 8, 2025
a7b4250
Add CloudFormation Lambda Version Provisioned Concurrency (#12594)
May 8, 2025
8ec9293
CFn v2: Skip media type assertion (#12597)
May 8, 2025
dcea04f
Update README.md with 4.4 release (#12596)
May 9, 2025
e7383de
Update ASF APIs (#12604)
May 12, 2025
b961fee
ASF: Ignore optional-ness when comparing argument types (#12605)
May 12, 2025
0921a73
CFn v2: better handle deploy errors (#12601)
May 12, 2025
6910145
Bump python from `75a17dd` to `9c85d1d` in the docker-base-images gro…
May 13, 2025
3c358b2
Upgrade pinned Python dependencies (#12612)
May 13, 2025
edb9628
Improve EC2 security group fixture (#12607)
May 13, 2025
05f6746
fix put-metric-alarm test failure rate (#12598)
May 13, 2025
9b6ef35
ASF: Mark optional params as such (X | None) (#12614)
May 13, 2025
2f84418
Added pagination and filtering for s3 list buckets operation (#12609)
May 14, 2025
d6e1a1a
Github Actions: added job to publish test results to coveralls and ar…
May 15, 2025
247c12d
DDB Global Tables: add failing test to expose the missing stream on r…
May 15, 2025
f3a4c74
S3: fix IfMatch/IfNoneMatch in pre-signed URLs (#12624)
May 15, 2025
7b25203
Add reporting to Tinybird for new GitHub Actions pipelines (#12610)
May 16, 2025
9eef29f
Restrict tinybird reporting to master branch only (#12627)
May 16, 2025
9990b6f
[Kinesis] Add Scala kinesis-mock build behind feature flag (#12559)
May 16, 2025
5f9ae76
Apigw/add support for response override in request (#12628)
May 16, 2025
9b7b7a8
Update ASF APIs (#12635)
May 19, 2025
ada991e
Disable/fix docker tests failing after migration to GH Actions (#12625)
May 19, 2025
fa0bbcd
CloudFormation V2 Engine: Support for Pseudo Parameter References (#1…
May 19, 2025
167d820
Upgrade pinned Python dependencies (#12645)
May 20, 2025
4de49e9
GithubActions: skip tinybird, docker push and docker login in forks (…
May 20, 2025
73789e1
Feature: implement ListRuleNamesByTarget for EventBridge (#12632)
May 20, 2025
70b8643
Core: Add type hints to aws/core.py (#12617)
May 20, 2025
4925ef7
EC2: Add support for GetSecurityGroupsForVpc API operation (#12615)
May 20, 2025
d3020f4
Add Workflow Summaries (#12619)
May 20, 2025
a674bf9
Fix names of steps for workflow summary publishing (#12646)
May 20, 2025
6376a4b
Fix acceptance test workflow name for Tinybird workflow push (#12647)
May 20, 2025
793d96f
Added retries to the container state check in TestDocker (#12640)
May 20, 2025
417daab
Activate new GHA pipeline on PRs (#12648)
May 20, 2025
4a929ed
ffmpeg: Update build source to use BtbN GitHub Releases (#12634)
May 21, 2025
20c40d1
CloudFormation V2 Engine: Support for DependsOn Blocks (#12644)
May 21, 2025
f6ddc00
Upgrade pinned Python dependencies (#12655)
May 22, 2025
893018f
Include reserved_concurrent_executions in get_function response (#12654)
May 23, 2025
423f583
Bump moto-ext to 5.1.4.post2 (#12652)
May 26, 2025
2808c51
Update ASF APIs (#12658)
May 26, 2025
bae7a0e
APIGW: add SQS X-Amz-JSON test (#12649)
May 26, 2025
83340fb
Bump python from `9c85d1d` to `dbf1de4` in the docker-base-images gro…
May 27, 2025
cbd8ac1
DDB Global table: add logic for streams (#12641)
May 27, 2025
573019d
Upgrade pinned Python dependencies (#12664)
May 27, 2025
433aeff
EC2: fix describe-availability-zones filtering (#12661)
May 27, 2025
a298730
Fix MA/MR pipeline for EC2 tests (#12672)
May 28, 2025
b90f172
fix CloudFormation SNS Subscribe with Region parameter (#12676)
May 28, 2025
e10e769
Record validated tests duration (#12638)
May 29, 2025
79b46be
test(esm/sqs): Skip resource intensive flaky SQS message override tes…
May 29, 2025
cec8fc5
Introduce LOG_LEVEL_OVERRIDES config var (#10808)
May 29, 2025
e1db42e
GH Actions: fix order of path filters for push and pull-request event…
May 29, 2025
18d4a52
GithubActions: update CFn v2 test name (#12683)
May 29, 2025
4d2139c
fix(esm/kinesis): Always store NextShardIterator from GetRecords (#12…
May 29, 2025
b458882
Bump moto-ext to 5.1.5.post1 (#12684)
May 30, 2025
d5ddcab
ESM/Pipes stream pollers: add shards to init params (#12659)
May 30, 2025
6f6b50e
GitHub Actions: correct test durations handling for integration tests…
May 30, 2025
1833df1
Stop handling help parsing with argparse (#12691)
May 30, 2025
1a9469e
Add stack option for CLI start command (#12675)
May 30, 2025
e42e683
CloudFormation V2 Engine: Support for Fn::Sub (#12650)
Jun 2, 2025
7656937
CloudFormation v2 Engine: V1 Test Porting and Annotations and Batch o…
Jun 2, 2025
2c2c7bf
CloudFormation v2 Engine: Base Support for Fn::Transform (#12662)
Jun 2, 2025
3d1a754
Update ASF APIs, S3 provider signature (#12696)
Jun 2, 2025
f732bc5
CloudFormation v2 Engine: Base Support for AWS::NoValue and Migration…
Jun 2, 2025
df48f25
SNS: validate cross-region behavior (#12673)
Jun 2, 2025
a1684d2
CloudFormation v2 Engine: Support for Fn::Select (#12679)
Jun 2, 2025
374183c
APIGW: implement Canary Deployments CRUD logic (#12694)
Jun 2, 2025
bc653dc
Resolve non-subdomain host prefixes to LocalStack (#12653)
Jun 3, 2025
bf99fdb
APIGW: add Canary Deployment logic in invocation layer (#12695)
Jun 3, 2025
0b05553
refactor(counter analytics): enforce (namespace,name) pair uniqueness…
Jun 3, 2025
bbad731
Change cleanup job condition in main pipeline in Github Actions (#12693)
Jun 3, 2025
db447dd
Upgrade pinned Python dependencies (#12703)
Jun 3, 2025
a7a7b5f
refactor: reduce max number of allowed labels in counters [DAT-146] (…
Jun 3, 2025
6d23766
CloudFormation v2 Engine: Base Support for Fn::Split (#12698)
Jun 3, 2025
c4c7d90
CloudFormation v2 Engine: Base Support for Fn::GetAZs (#12699)
Jun 3, 2025
8b3dcdd
CloudFormation v2 Engine: Base Support for Fn::Base64 (#12700)
Jun 3, 2025
24c8538
Add missing switch for forcing ARM tests on workflow dispatch (#12709)
Jun 4, 2025
9692260
re-introduce eager service loading (#12657)
Jun 4, 2025
426eeed
test(esm/sqs): Skip flaky test_report_batch_item_failures test (#12713)
Jun 4, 2025
0942fa7
release version 4.5.0
Jun 5, 2025
8b11e74
prepare next development iteration
Jun 5, 2025
94db52d
Fix Workflow summaries for ARM workflows (#12707)
Jun 5, 2025
c0b1c13
fix: update readme for 4.5 release (#12718)
Jun 5, 2025
4d02bae
Update launch instructions in README.md for 4.5.0 (#12719)
Jun 5, 2025
aeea746
Events: fix PutEvents triggering Scheduled rules (#12716)
Jun 5, 2025
986ed8b
GH Actions: change test selection parameter (#12710)
Jun 5, 2025
6a52793
Remove unneeded positional argument from cleanup lambda (#12702)
Jun 6, 2025
2f1fe48
Move publishing of images and coverage from CircleCI to GHA (#12708)
Jun 6, 2025
c22632d
CloudFormation v2 Engine: Parity Improvements for Fn::Sub (#12705)
Jun 6, 2025
2128c6a
Fix publishing credentials (#12723)
Jun 6, 2025
9de2d58
CloudFormation v2 Engine: Base Support for Fn::And Fn::Or and Conditi…
Jun 6, 2025
36f5b6d
Re-create venv for dev release publish (#12725)
Jun 6, 2025
ed6c94a
fix dependencies installation for dev release publish (#12726)
Jun 6, 2025
6487dbf
Apigw add tests fot vtl bracket assignment (#12727)
Jun 6, 2025
3adead2
CircleCI to GH Actions:updated docs references to GH Actions (#12666)
Jun 9, 2025
05db0f1
CFn v2: implement support for CDK bootstrap (#12731)
Jun 9, 2025
2b1a97a
Bump python from 3.11.12-slim-bookworm to 3.11.13-slim-bookworm in th…
Jun 10, 2025
cb0ad39
Upgrade pinned Python dependencies (#12734)
Jun 10, 2025
3a5f08b
Transcribe: Enable MyPy (#12588)
Jun 10, 2025
688225c
Update ASF APIs (#12730)
Jun 10, 2025
f6075f6
Remove CircleCI config (#12737)
Jun 10, 2025
5b623bf
refactor: metrics instrumentation framework typing and structure (#12…
Jun 11, 2025
75c84f6
CFn v2: Implement stack deletion (#12576)
Jun 11, 2025
3a2f014
APIGW: add IntegrationResponse test and fix UpdateIntegrationResponse…
Jun 11, 2025
99c6825
add small fixes/improvements to Firehose.CreateDeliveryStream (#12656)
Jun 11, 2025
3bbf944
CloudFormation v2 Engine: Base Support for Serverless Global Transfor…
Jun 12, 2025
02ad74e
Do not login to DockerHub if there is no pull secret (#12747)
Jun 13, 2025
715d118
Docker registry customisation (#12590)
Jun 13, 2025
bdc489f
Update ASF APIs (#12759)
Jun 16, 2025
df9ebe9
S3: fix Checksum handling in UploadPartCopy (#12753)
Jun 16, 2025
ca54051
Migrate from depenadbot reviewers to codeowners (#12762)
Jun 16, 2025
1f6e382
Bump python from `7a3ed12` to `9e1912a` in the docker-base-images gro…
Jun 17, 2025
21c4d5d
Update test durations automatically based on latest durations from ma…
Jun 17, 2025
d724a69
SQS: Register query API routes in provider lifecycle hook (#12685)
Jun 17, 2025
1d3ef0c
feat: metrics schema version (#12732)
Jun 17, 2025
87d4176
S3: Implement Put, Get, Delete, List S3 MetricsConfiguration API (#12…
Jun 17, 2025
7f02575
Fix failing Ruby tests due to internal RUBYLIB variable changed by AW…
Jun 17, 2025
ea6c7a2
fix issue with CloudWatch after state reset (#12755)
Jun 17, 2025
ea0a194
Upgrade pinned Python dependencies (#12766)
Jun 17, 2025
99cd6da
S3: implement ObjectParts in GetObjectAttributes (#12764)
Jun 18, 2025
67b3da6
Step Functions: Enable Mock Service Integrations Through StartSyncExe…
Jun 18, 2025
c9e0279
APIGW: fix VTL $input.path and $input.json (#12774)
Jun 19, 2025
3b2f334
CloudFormation v2 Engine: Base Support for Global Macros (#12761)
Jun 19, 2025
18a4b6c
add resource events to CFn v2 (#12721)
Jun 19, 2025
e67072f
chore(utils): Fix typo when forwarding envars to container (#12778)
Jun 20, 2025
6348947
Add KMS ReEncrypt Operation (#12637)
Jun 20, 2025
b36bb1a
Update ASF APIs, update s3 provider signatures (#12785)
Jun 23, 2025
4e1dd98
CFNv2: implement create_stack (#12779)
Jun 23, 2025
0a43548
CFNv2: implement update stack (#12781)
Jun 23, 2025
faccbb5
Upgrade pinned dependencies, fix opensearch-py usage (#12790)
Jun 24, 2025
c8d9c9e
Bump moto-ext to 5.1.6.post2 (#12760)
Jun 24, 2025
0eddecc
CI: correct test selection propagation for service-specific tests and…
Jun 24, 2025
fec3c9a
Fix workflows for forked repositories (#12786)
Jun 24, 2025
62f162f
S3: add error for DeleteObject preconditions for regular buckets (#12…
Jun 24, 2025
3d56935
Update lambda runtime init, fix legacy ENV format in dockerfile (#12795)
Jun 25, 2025
25552f2
feat(handler): Add custom header to all AWS responses from LocalStack…
Jun 25, 2025
5783fa3
S3: add validation around Retention Mode & consider COMPLIANCE when u…
Jun 26, 2025
21b3a06
Fix logging placeholder for apigateway openapi import (#12800)
Jun 26, 2025
019d5ec
Add In_WSL function to check whether the host runs on WSL (#12799)
Jun 26, 2025
1860a54
APIGW: add negative tests for IntegrationResponse and improve error h…
Jun 26, 2025
093ddbe
refactored archive installer (#12771)
Jun 27, 2025
5b0180c
CFNv2: implement get_template_summary (#12784)
Jun 27, 2025
27dd3b2
CloudFormation v2 Engine: Runtime Caching Support (#12807)
Jun 27, 2025
05a922a
SQS: add automatic propagation of AWSTraceHeader attribute when sendi…
Jun 27, 2025
24d0f8f
[Testing] Update test durations (#12815)
Jun 30, 2025
a6ec498
Update ASF APIs (#12817)
Jun 30, 2025
e854dd1
CI: updated owners of .test_durations file (#12820)
Jun 30, 2025
0f5ebcc
Upgrade pinned Python dependencies (#12822)
Jul 1, 2025
6a0e8ee
CFn telemetry: capture actions on resources (#12798)
Jul 1, 2025
7fd523c
Update STS session storage model to be more flexible (#12793)
Jul 1, 2025
518c2fe
APIGW: implement UpdateMethodResponse and tests for MethodResponse (#…
Jul 1, 2025
fdef993
removed create appsync fixtures (#12572)
Jul 2, 2025
583b620
IAM: Fix listing roles with tags (#12825)
Jul 2, 2025
fcdc53c
release version 4.6.0
Jul 3, 2025
71dbd16
prepare next development iteration
Jul 3, 2025
e558996
Update Extension API for finalizers (#12805)
Jul 3, 2025
0e5a978
Update action names for AWS prefix (#12832)
Jul 4, 2025
1fcf3e9
fix delete method of AWS::SNS::TopicPolicy CFn resource (#12831)
Jul 4, 2025
fa3e8c4
Update ASF APIs, update IAM provider signature (#12836)
Jul 7, 2025
021614f
CI: archive raw metrics (#12837)
Jul 7, 2025
bb7cb95
Update version in README (#12838)
Jul 7, 2025
dbad558
Sns topic update functionality (#12777)
Jul 7, 2025
e38daad
CI: put parity metrics to separate artifact (#12839)
Jul 7, 2025
752e01d
CFn: partial implementation of language extensions transform (#12813)
Jul 8, 2025
d49e3a2
Upgrade pinned Python dependencies (#12845)
Jul 8, 2025
655d4b2
Bump python from `9e1912a` to `1390202` in the docker-base-images gro…
Jul 8, 2025
e2a8b9e
S3: fix Checksum behavior for GetObject with PartNumber (#12842)
Jul 8, 2025
10e25f6
S3: fix Access-Control-Allow-Headers handling in S3 CORS (#12841)
Jul 8, 2025
f0a1649
Es/fix Terraform domain deploy (#12843)
Jul 8, 2025
f0f8045
Docker: Add 'log_handler'-argument to pull() (#12848)
Jul 10, 2025
e38a1a1
update social shield (#12856)
Jul 11, 2025
fc4c928
S3: fix CORS handler + GZIP handling (#12855)
Jul 11, 2025
2e48c23
Increase AWS CLI lower bound version to shorten resolution time (#12857)
Jul 11, 2025
c1f997e
Update CODEOWNERS (#12860)
Jul 14, 2025
bf54841
[Testing] Update test durations (#12858)
Jul 14, 2025
d46cf41
Update ASF APIs (#12859)
Jul 14, 2025
1081411
Upgrade pinned Python dependencies (#12863)
Jul 15, 2025
8a45f31
fix: correct recognition of lambda path (#12629)
Jul 15, 2025
56b942c
Add tag push trigger to main workflow (#12829)
Jul 15, 2025
e38e9c6
APIGW: add support for new endpoint configuration (#12826)
Jul 15, 2025
8607af6
APIGW: update CFN related snapshots (#12866)
Jul 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
2 changes: 0 additions & 2 deletions .coveralls.yml

This file was deleted.

14 changes: 11 additions & 3 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
.venv*
localstack/node_modules/
localstack/infra/
localstack/dashboard/web/node_modules/

.filesystem
**/.filesystem

# ignore files generated in CI build
tests/aws/**/node_modules
tests/aws/**/.terraform
**/__pycache__
target/
htmlcov/
.coverage
4 changes: 4 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# format the codebase with black and isort
8c006f122803dd06811343782b34f067f0622baf
# reorganize utility package
a7602821ac8666c9ab3a253457eb99570908ac8e
25 changes: 25 additions & 0 deletions .github/CLA.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Contributor License Agreement (CLA)

This license is for your protection as a Contributor as well as the protection of the maintainers of the LocalStack software; it does not change your rights to use your own Contributions for any other purpose. In the following, the maintainers of LocalStack are referred to as "LocalStack".

You accept and agree to the following terms and conditions for Your present and future Contributions submitted to "LocalStack". Except for the license granted herein to LocalSack and recipients of software distributed by "LocalStack", You reserve all right, title, and interest in and to Your Contributions.

1. Definitions.

"You" (or "Your") shall mean the copyright owner or legal entity authorized by the copyright owner that is making this Agreement with "LocalStack". For legal entities, the entity making a Contribution and all other entities that control, are controlled by, or are under common control with that entity are considered to be a single Contributor.

"Contribution" shall mean any original work of authorship, including any modifications or additions to an existing work, that is intentionally submitted by You to "LocalStack" for inclusion in, or documentation of, any of the products owned or managed by "LocalStack" (the "Work"). For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to "LocalStack" or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, "LocalStack" for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by You as "Not a Contribution."

2. Grant of Copyright License. Subject to the terms and conditions of this Agreement, You grant to "LocalStack" and to recipients of software distributed by "LocalStack" a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Your Contributions and such derivative works.

3. Grant of Patent License. Subject to the terms and conditions of this Agreement, You grant to "LocalStack" and to recipients of software distributed by "LocalStack" a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by You that are necessarily infringed by Your Contribution(s) alone or by combination of Your Contribution(s) with the Work to which such Contribution(s) was submitted.

4. You represent that you are legally entitled to grant the above license. If your employer(s) has rights to intellectual property that you create that includes your Contributions, you represent that you have received permission to make Contributions on behalf of that employer, that your employer has waived such rights for your Contributions to "LocalStack", or that your employer has executed a separate Contributor License Agreement with "LocalStack".

5. You represent that each of Your Contributions is Your original creation (see section 7 for submissions on behalf of others). You represent that Your Contribution submissions include complete details of any third-party license or other restriction (including, but not limited to, related patents and trademarks) of which you are personally aware and which are associated with any part of Your Contributions.

6. You are not expected to provide support for Your Contributions, except to the extent You desire to provide support. Unless required by applicable law or agreed to in writing, You provide Your Contributions on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE.

7. Should You wish to submit work that is not Your original creation, You may submit it to "LocalStack" separately from any Contribution, identifying the complete details of its source and of any license or other restriction (including, but not limited to, related patents, trademarks, and license agreements) of which you are personally aware, and conspicuously marking the work as "Submitted on behalf of a third-party: [named here]".

8. You agree to notify "LocalStack" of any facts or circumstances of which you become aware that would make these representations inaccurate in any respect.
3 changes: 3 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# These are supported funding model platforms

open_collective: localstack
2 changes: 0 additions & 2 deletions .github/ISSUE_TEMPLATE.md

This file was deleted.

86 changes: 86 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
name: 🐞 Bug
description: File a bug/issue
title: "bug: <title>"
labels: ["type: bug", "status: triage needed"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug! If you need real-time help, join us in the [community Slack](https://localstack-community.slack.com).
- type: checkboxes
attributes:
label: Is there an existing issue for this?
description: Please search to see if an issue already exists for the bug you encountered.
options:
- label: I have searched the existing issues
required: true
- type: textarea
attributes:
label: Current Behavior
description: A concise description of what you're experiencing.
validations:
required: true
- type: textarea
attributes:
label: Expected Behavior
description: A concise description of what you expected to happen.
validations:
required: false
- type: dropdown
attributes:
label: How are you starting LocalStack?
options:
- With a docker-compose file
- With a `docker run` command
- With the `localstack` script
- Custom (please describe below)
validations:
required: true
- type: textarea
attributes:
label: Steps To Reproduce
description: Steps to reproduce the behavior.
value: |
#### How are you starting localstack (e.g., `bin/localstack` command, arguments, or `docker-compose.yml`)

docker run localstack/localstack

#### Client commands (e.g., AWS SDK code snippet, or sequence of "awslocal" commands)

awslocal s3 mb s3://mybucket

validations:
required: true
- type: textarea
attributes:
label: Environment
description: |
examples:
- **OS**: Ubuntu 20.04
- **LocalStack**:
You can find this information in the logs when starting localstack

LocalStack version: 3.4.1.dev
LocalStack Docker image sha: sha256:f02ab8ef73f66b0ab26bb3d24a165e1066a714355f79a42bf8aa1a336d5722e7
LocalStack build date: 2024-05-14
LocalStack build git hash: ecd7dc879

value: |
- OS:
- LocalStack:
LocalStack version:
LocalStack Docker image sha:
LocalStack build date:
LocalStack build git hash:
render: markdown
validations:
required: false
- type: textarea
attributes:
label: Anything else?
description: |
Links? References? Anything that will give us more context about the issue you are encountering!

Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: true
contact_links:
- name: 📖 LocalStack Documentation
url: https://localstack.cloud/docs/getting-started/overview/
about: The LocalStack documentation may answer your questions!
- name: 💬 LocalStack Community Support (Slack)
url: https://localstack.cloud/slack
about: Please ask and answer questions here.
36 changes: 36 additions & 0 deletions .github/ISSUE_TEMPLATE/feature-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: ✨ Feature request
description: Request a new feature
title: "feature request: <title>"
labels: ["type: feature", "status: triage needed"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to improve LocalStack!
- type: checkboxes
attributes:
label: Is there an existing issue for this?
description: Please search to see if an issue already exists for the feature you are requesting.
options:
- label: I have searched the existing issues
required: true
- type: textarea
attributes:
label: Feature description
description: Please describe the feature you would like LocalStack to have
validations:
required: true
- type: textarea
attributes:
label: 🧑‍💻 Implementation
description: If you are a developer and have an idea how to implement this feature, please sketch it out here.
validations:
required: false
- type: textarea
attributes:
label: Anything else?
description: |
Links? References? Anything that will give us more context about the issue you are encountering!
Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false
25 changes: 24 additions & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1 +1,24 @@
**Please refer to the contribution guidelines in the README when submitting PRs.**
<!-- Please refer to the contribution guidelines before raising a PR: https://github.com/localstack/localstack/blob/master/docs/CONTRIBUTING.md -->

<!-- Why am I raising this PR? Add context such as related issues, PRs, or documentation. -->
## Motivation


<!-- What changes does this PR make? How does LocalStack behave differently now? -->
## Changes

<!-- Optional section: How to test these changes? -->
<!--
## Testing

-->

<!-- Optional section: What's left to do before it can be merged? -->
<!--
## TODO

What's left to do:

- [ ] ...
- [ ] ...
-->
63 changes: 63 additions & 0 deletions .github/actions/build-image/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: 'Build Image'
description: 'Composite action which combines all steps necessary to build the LocalStack Community image.'
inputs:
dockerhubPullUsername:
description: 'Username to log in to DockerHub to mitigate rate limiting issues with DockerHub.'
required: false
dockerhubPullToken:
description: 'API token to log in to DockerHub to mitigate rate limiting issues with DockerHub.'
required: false
disableCaching:
description: 'Disable Caching'
required: false
outputs:
image-artifact-name:
description: "Name of the artifact containing the built docker image"
value: ${{ steps.image-artifact-name.outputs.image-artifact-name }}
runs:
using: "composite"
# This GH Action requires localstack repo in 'localstack' dir + full git history (fetch-depth: 0)
steps:
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version-file: 'localstack/.python-version'

- name: Install docker helper dependencies
shell: bash
run: pip install --upgrade setuptools setuptools_scm

- name: Login to Docker Hub
# login to DockerHub to avoid rate limiting issues on custom runners
uses: docker/login-action@v3
if: ${{ inputs.dockerHubPullUsername != '' && inputs.dockerHubPullToken != '' }}
with:
username: ${{ inputs.dockerhubPullUsername }}
password: ${{ inputs.dockerhubPullToken }}

- name: Build Docker Image
id: build-image
shell: bash
env:
DOCKER_BUILD_FLAGS: "--load ${{ inputs.disableCaching == 'true' && '--no-cache' || '' }}"
PLATFORM: ${{ (runner.arch == 'X64' && 'amd64') || (runner.arch == 'ARM64' && 'arm64') || '' }}
DOCKERFILE: ../Dockerfile
DOCKER_BUILD_CONTEXT: ..
IMAGE_NAME: "localstack/localstack"
working-directory: localstack/localstack-core
run: |
../bin/docker-helper.sh build
../bin/docker-helper.sh save

- name: Store Docker Image as Artifact
uses: actions/upload-artifact@v4
with:
name: localstack-docker-image-${{ (runner.arch == 'X64' && 'amd64') || (runner.arch == 'ARM64' && 'arm64') || '' }}
# the path is defined by the "save" command of the docker-helper, which sets a GitHub output "IMAGE_FILENAME"
path: localstack/localstack-core/${{ steps.build-image.outputs.IMAGE_FILENAME || steps.build-test-image.outputs.IMAGE_FILENAME}}
retention-days: 1

- name: Set image artifact name as output
id: image-artifact-name
shell: bash
run: echo "image-artifact-name=localstack-docker-image-${{ (runner.arch == 'X64' && 'amd64') || (runner.arch == 'ARM64' && 'arm64') || '' }}" >> $GITHUB_OUTPUT
31 changes: 31 additions & 0 deletions .github/actions/load-localstack-docker-from-artifacts/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: 'Load Localstack Docker image'
description: 'Composite action that loads a LocalStack Docker image from a tar archive stored in GitHub Workflow Artifacts into the local Docker image cache'
inputs:
platform:
required: false
description: Target architecture for running the Docker image
default: "amd64"
runs:
using: "composite"
steps:
- name: Download Docker Image
uses: actions/download-artifact@v4
with:
name: localstack-docker-image-${{ inputs.platform }}

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version-file: '.python-version'
cache: 'pip'
cache-dependency-path: 'requirements-typehint.txt'

- name: Install docker helper dependencies
shell: bash
run: pip install --upgrade setuptools setuptools_scm

- name: Load Docker Image
shell: bash
env:
PLATFORM: ${{ inputs.platform }}
run: bin/docker-helper.sh load
22 changes: 22 additions & 0 deletions .github/actions/setup-tests-env/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: 'Setup Test Environment'
description: 'Composite action which combines all steps necessary to setup the runner for test execution'
runs:
using: "composite"
steps:
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version-file: '.python-version'
cache: 'pip'
cache-dependency-path: 'requirements-typehint.txt'

- name: Install Community Dependencies
shell: bash
run: make install-dev-types

- name: Setup environment
shell: bash
run: |
make install
mkdir -p target/reports
mkdir -p target/coverage
22 changes: 22 additions & 0 deletions .github/bot_templates/ASF_UPGRADE_PR.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# 🚀 ASF Update Report 🚀
This PR has been automatically generated to update the generated API stubs for our ASF services.
It uses the latest code-generator from the _master_ branch ([scaffold.py](https://github.com/localstack/localstack/blob/master/localstack/aws/scaffold.py)) and the latest _published_ version of [botocore](https://github.com/boto/botocore) to re-generate all API stubs which are already present in the `localstack.aws.api` module of the _master_ branch.

## 🔄 Updated Services
This PR updates the following services:
{{ SERVICES }}

## 👷🏽 Handle this PR
The following options describe how to interact with this PR / the auto-update:

✔️ **Accept Changes**
If the changes are satisfying, just squash-merge the PR and delete the source branch.

🚫 **Ignore Changes**
If you want to ignore the changes in this PR, just close the PR and *do not delete* the source branch. The PR will not be opened and a new PR will not be created for as long as the generated code does not change (or the branch is deleted). As soon as there are new changes, a new PR will be created.

✏️ **Adapt Changes**
*Don't do this.* The APIs are auto-generated. If you decide that the APIs should look different, you have to change the code-generation.

⏸️ **Pause Updates**
Remove the cron-schedule trigger of the GitHub Action workflow which creates these PRs. The action can then still be triggered manually, but it will not be executed automatically.
36 changes: 36 additions & 0 deletions .github/bot_templates/MARKER_REPORT_ISSUE.md.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
title: AWS Marker Report
---
# AWS Marker Report

- Repository: {{ data.meta.repo_url }}
- Reference Commit: `{{ data.meta.commit_sha }}`
- Timestamp: `{{ data.meta.timestamp }}`

This is an autogenerated report on our pytest marker usage with a special focus on our AWS compatibility markers, i.e. the ones prefixed with `aws_`.

## Overview

```text
{% for name, count in data.aggregated.items() -%}
{{ name }} : {{ count }}
{% endfor -%}
```

Both `aws_unknown` and `aws_needs_fixing` should be reduced to `0` over time.
If you have some spare capacity please take one of these tests, try it against AWS and see if it works. Replace `aws_unknown` with the correct marker.
To avoid the case where two people are concurrently working on one test case, please tick the box to "claim" a case when you want to work on it.

_Note_: The individual assignments here are based on the entries in the [CODEOWNERS]({{ data.meta.repo_url }}/blob/{{ data.meta.commit_sha }}/CODEOWNERS) file.

## unknown ({{ data.aggregated['aws_unknown'] }})

{% for item in data.owners_aws_unknown -%}
- [ ] `{{ item.pytest_node_id }}` {{ " ".join(item.owners) }}
{% endfor %}

## needs_fixing ({{ data.aggregated['aws_needs_fixing'] }})

{% for item in data.owners_aws_needs_fixing -%}
- [ ] `{{ item.pytest_node_id }}` {{ " ".join(item.owners) }}
{% endfor %}
Loading