8000 Merge branch 'master' into MEP-LambdaDevX-enforce_concurr_values · localstack/localstack@66e5532 · GitHub
[go: up one dir, main page]

Skip to content

Commit 66e5532

Browse files
committed
Merge branch 'master' into MEP-LambdaDevX-enforce_concurr_values
2 parents 8a91c15 + 67f5698 commit 66e5532

File tree

223 files changed

+15882
-3918
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

223 files changed

+15882
-3918
lines changed

.circleci/config.yml

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -581,7 +581,8 @@ jobs:
581581
- store_test_results:
582582
path: target/reports/
583583

584-
itest-lambda-event-source-mapping-v2-feature:
584+
# Regression testing for ESM v1 until scheduled removal for v4.0
585+
itest-lambda-event-source-mapping-v1-feature:
585586
executor: ubuntu-machine-amd64
586587
working_directory: /tmp/workspace/repo
587588
environment:
@@ -594,9 +595,9 @@ jobs:
594595
- prepare-pytest-tinybird
595596
- prepare-account-region-randomization
596597
- run:
597-
name: Test Lambda Event Source Mapping v2 feature
598+
name: Test Lambda Event Source Mapping v1 feature
598599
environment:
599-
LAMBDA_EVENT_SOURCE_MAPPING: "v2"
600+
LAMBDA_EVENT_SOURCE_MAPPING: "v1"
600601
TEST_PATH: "tests/aws/services/lambda_/event_source_mapping"
601602
COVERAGE_ARGS: "-p"
602603
command: |
@@ -988,7 +989,7 @@ workflows:
988989
requires:
989990
- preflight
990991
- test-selection
991-
- itest-lambda-event-source-mapping-v2-feature:
992+
- itest-lambda-event-source-mapping-v1-feature:
992993
requires:
993994
- preflight
994995
- test-selection
@@ -1055,7 +1056,7 @@ workflows:
10551056
- itest-cloudwatch-v1-provider
10561057
- itest-events-v2-provider
10571058
- itest-apigw-ng-provider
1058-
- itest-lambda-event-source-mapping-v2-feature
1059+
- itest-lambda-event-source-mapping-v1-feature
10591060
- acceptance-tests-amd64
10601061
- acceptance-tests-arm64
10611062
- integration-tests-amd64
@@ -1072,7 +1073,7 @@ workflows:
10721073
- itest-cloudwatch-v1-provider
10731074
- itest-events-v2-provider
10741075
- itest-apigw-ng-provider
1075-
- itest-lambda-event-source-mapping-v2-feature
1076+
- itest-lambda-event-source-mapping-v1-feature
10761077
- acceptance-tests-amd64
10771078
- acceptance-tests-arm64
10781079
- integration-tests-amd64

.github/workflows/marker-report-issue.yml

Lines changed: 0 additions & 87 deletions
This file was deleted.

.github/workflows/marker-report.yml

Lines changed: 76 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,27 @@
1-
name: Generate pytest marker report
1+
name: Generate pytest marker report / Open marker report GH issue
22
on:
33
workflow_dispatch:
4+
inputs:
5+
dryRun:
6+
description: 'Execute a Dry-Run? A Dry-Run will not create any issues and only print the issue content in the logs instead'
7+
required: false
8+
type: boolean
9+
default: false
10+
updateExistingIssue:
11+
description: 'Select the empty string "" to open duplicate issues, "true" to update duplicate issues and "false" to skip duplicate issues'
12+
required: false
13+
type: choice
14+
default: ''
15+
options:
16+
- ''
17+
- 'false'
18+
- 'true'
19+
createIssue:
20+
description: 'Open marker report github issue'
21+
required: false
22+
type: boolean
23+
default: false
24+
425
push:
526
paths:
627
- "tests/**"
@@ -18,6 +39,8 @@ jobs:
1839
steps:
1940
- name: Checkout
2041
uses: actions/checkout@v4
42+
with:
43+
fetch-depth: 0
2144

2245
- name: Set up Python
2346
id: setup-python
@@ -35,6 +58,7 @@ jobs:
3558
run: make install-dev
3659

3760
- name: Collect marker report
61+
if: ${{ !inputs.createIssue }}
3862
env:
3963
PYTEST_ADDOPTS: "-p no:localstack.testing.pytest.fixtures -p no:localstack_snapshot.pytest.snapshot -p no:localstack.testing.pytest.filters -p no:localstack.testing.pytest.fixture_conflicts -p no:tests.fixtures -p no:localstack.testing.pytest.stepfunctions.fixtures -s --co --disable-warnings --marker-report --marker-report-tinybird-upload"
4064
MARKER_REPORT_PROJECT_NAME: localstack
@@ -43,3 +67,54 @@ jobs:
4367
run: |
4468
. ./.venv/bin/activate
4569
python -m pytest tests/aws/
70+
71+
# makes use of the marker report plugin localstack.testing.pytest.marker_report
72+
- name: Generate marker report
73+
env:
74+
PYTEST_ADDOPTS: "-p no:localstack.testing.pytest.fixtures -p no:localstack_snapshot.pytest.snapshot -p no:localstack.testing.pytest.filters -p no:localstack.testing.pytest.fixture_conflicts -p no:tests.fixtures -p no:localstack.testing.pytest.stepfunctions.fixtures -s --co --disable-warnings --marker-report --marker-report-path './target'"
75+
MARKER_REPORT_PROJECT_NAME: localstack
76+
MARKER_REPORT_COMMIT_SHA: ${{ github.sha }}
77+
run: |
78+
. ./.venv/bin/activate
79+
pip install codeowners
80+
python -m pytest tests/aws/
81+
mv ./target/marker-report*.json ./target/marker-report.json
82+
83+
- name: Enrich and render marker report
84+
if: ${{ inputs.createIssue }}
85+
env:
86+
MARKER_REPORT_PATH: ./target/marker-report.json
87+
CODEOWNERS_PATH: ./CODEOWNERS
88+
TEMPLATE_PATH: ./.github/bot_templates/MARKER_REPORT_ISSUE.md.j2
89+
OUTPUT_PATH: ./target/MARKER_REPORT_ISSUE.md
90+
GITHUB_REPO: ${{ github.repository }}
91+
COMMIT_SHA: ${{ github.sha }}
92+
run: |
93+
. ./.venv/bin/activate
94+
pip install codeowners
95+
python scripts/render_marker_report.py
96+
97+
- name: Print generated markdown
98+
if: ${{ inputs.createIssue }}
99+
run: |
100+
cat ./target/MARKER_REPORT_ISSUE.md
101+
102+
- name: Upload generated markdown
103+
if: ${{ inputs.createIssue }}
104+
uses: actions/upload-artifact@v4
105+
with:
106+
path: ./target/MARKER_REPORT_ISSUE.md
107+
108+
- name: Create GH issue from template
109+
if: inputs.dryRun != true && inputs.createIssue == true
110+
uses: JasonEtco/create-an-issue@v2
111+
env:
112+
GITHUB_TOKEN: ${{ secrets.PRO_ACCESS_TOKEN }}
113+
with:
114+
# `update_existing` actually has 3 possible values:
115+
# 1. not set => will always open duplicates
116+
# 2. false => will not update and will not open duplicates (NOOP if title conflict detected)
117+
# 3. true => will update an existing one if conflict detected
118+
update_existing: ${{ inputs.updateExistingIssue || '' }}
119+
# search_existing: open
120+
filename: ./target/MARKER_REPORT_ISSUE.md

.github/workflows/pr-cla.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
steps:
1717
- name: "CLA Assistant"
1818
if: "(github.event.comment.body == 'recheck' || github.event.comment.body == 'I have read the CLA Document and I hereby sign the CLA') || github.event_name == 'pull_request_target'"
19-
uses: "cla-assistant/github-action@v2.5.1"
19+
uses: "cla-assistant/github-action@v2.6.1"
2020
env:
2121
GITHUB_TOKEN: "${{ secrets.PRO_ACCESS_TOKEN }}"
2222
PERSONAL_ACCESS_TOKEN: "${{ secrets.PRO_ACCESS_TOKEN }}"

.github/workflows/tests-pro-integration.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -336,7 +336,6 @@ jobs:
336336
GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }}
337337
DEBUG: 1
338338
DISABLE_BOTO_RETRIES: 1
339-
OPENAPI_VALIDATE_RESPONSE: 1
340339
DNS_ADDRESS: 0
341340
LAMBDA_EXECUTOR: "local"
342341
LOCALSTACK_API_KEY: "test"

.pre-commit-config.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@
33
repos:
44
- repo: https://github.com/astral-sh/ruff-pre-commit
55
# Ruff version.
6-
rev: v0.6.4
6+
rev: v0.6.9
77
hooks:
88
- id: ruff
99
args: [--fix, --exit-non-zero-on-fix]
1010
# Run the formatter.
1111
- id: ruff-format
1212

1313
- repo: https://github.com/pre-commit/pre-commit-hooks
14-
rev: v4.6.0
14+
rev: v5.0.0
1515
hooks:
1616
- id: end-of-file-fixer
1717
- id: trailing-whitespace

CODEOWNERS

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -118,10 +118,10 @@
118118
/tests/unit/services/cloudformation/ @dominikschubert @pinzon @simonrw @Morijarti
119119

120120
# cloudwatch
121-
/localstack-core/localstack/aws/api/cloudwatch/ @steffyP @pinzon
122-
/localstack-core/localstack/services/cloudwatch/ @steffyP @pinzon
123-
/tests/aws/services/cloudwatch/ @steffyP @pinzon
124-
/tests/unit/test_cloudwatch.py @steffyP @pinzon
121+
/localstack-core/localstack/aws/api/cloudwatch/ @pinzon @steffyP
122+
/localstack-core/localstack/services/cloudwatch/ @pinzon @steffyP
123+
/tests/aws/services/cloudwatch/ @pinzon @steffyP
124+
/tests/unit/test_cloudwatch.py @pinzon @steffyP
125125

126126
# dynamodb
127127
/localstack-core/localstack/aws/api/dynamodb/ @viren-nadkarni @giograno
@@ -164,16 +164,16 @@
164164
/tests/unit/test_kms.py @sannya-singal
165165

166166
# lambda
167-
/localstack-core/localstack/aws/api/lambda_/ @joe4dev @dominikschubert @dfangl
168-
/localstack-core/localstack/services/lambda_/ @joe4dev @dominikschubert @dfangl
169-
/tests/aws/services/lambda_/ @joe4dev @dominikschubert @dfangl
170-
/tests/unit/services/lambda_/ @joe4dev @dominikschubert @dfangl
167+
/localstack-core/localstack/aws/api/lambda_/ @joe4dev @dominikschubert @dfangl @gregfurman
168+
/localstack-core/localstack/services/lambda_/ @joe4dev @dominikschubert @dfangl @gregfurman
169+
/tests/aws/services/lambda_/ @joe4dev @dominikschubert @dfangl @gregfurman
170+
/tests/unit/services/lambda_/ @joe4dev @dominikschubert @dfangl @gregfurman
171171

172172
# logs
173-
/localstack-core/localstack/aws/api/logs/ @steffyP
174-
/localstack-core/localstack/services/logs/ @steffyP
175-
/tests/aws/services/logs/ @steffyP
176-
/tests/unit/test_logs.py @steffyP
173+
/localstack-core/localstack/aws/api/logs/ @pinzon @steffyP
174+
/localstack-core/localstack/services/logs/ @pinzon @steffyP
175+
/tests/aws/services/logs/ @pinzon @steffyP
176+
/tests/unit/test_logs.py @pinzon @steffyP
177177

178178
# opensearch
179179
/localstack-core/localstack/aws/api/opensearch/ @alexrashed @silv-io
@@ -182,7 +182,7 @@
182182
/tests/unit/services/opensearch/ @alexrashed @silv-io
183183

184184
# pipes
185-
/localstack-core/localstack/aws/api/pipes/ @joe4dev
185+
/localstack-core/localstack/aws/api/pipes/ @joe4dev @gregfurman
186186

187187
# route53
188188
/localstack-core/localstack/aws/api/route53/ @giograno
@@ -223,20 +223,20 @@
223223
/tests/unit/test_sns.py @bentsku @baermat
224224

225225
# sqs
226-
/localstack-core/localstack/aws/api/sqs/ @thrau @baermat
227-
/localstack-core/localstack/services/sqs/ @thrau @baermat
228-
/tests/aws/services/sqs/ @thrau @baermat
229-
/tests/unit/test_sqs.py @thrau @baermat
226+
/localstack-core/localstack/aws/api/sqs/ @thrau @baermat @gregfurman
227+
/localstack-core/localstack/services/sqs/ @thrau @baermat @gregfurman
228+
/tests/aws/services/sqs/ @thrau @baermat @gregfurman
229+
/tests/unit/test_sqs.py @thrau @baermat @gregfurman
230230

231231
# ssm
232232
/localstack-core/localstack/aws/api/ssm/ @dominikschubert
233233
/localstack-core/localstack/services/ssm/ @dominikschubert
234234
/tests/aws/services/ssm/ @dominikschubert
235235

236236
# stepfunctions
237-
/localstack-core/localstack/aws/api/stepfunctions/ @MEPalma @joe4dev @dominikschubert
238-
/localstack-core/localstack/services/stepfunctions/ @MEPalma @joe4dev @dominikschubert
239-
/tests/aws/services/stepfunctions/ @MEPalma @joe4dev @dominikschubert
237+
/localstack-core/localstack/aws/api/stepfunctions/ @MEPalma @joe4dev @dominikschubert @gregfurman
238+
/localstack-core/localstack/services/stepfunctions/ @MEPalma @joe4dev @dominikschubert @gregfurman
239+
/tests/aws/services/stepfunctions/ @MEPalma @joe4dev @dominikschubert @gregfurman
240240

241241
# sts
242242
/localstack-core/localstack/aws/api/sts/ @pinzon @dfangl

Dockerfile

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#
2-
# base: Stage which installs necessary runtime dependencies (OS packages, java,...)
2+
# base: Stage which installs necessary runtime dependencies (OS packages, etc.)
33
#
4-
FROM python:3.11.10-slim-bookworm@sha256:50ec89bdac0a845ec1751f91cb6187a3d8adb2b919d6e82d17acf48d1a9743fc AS base
4+
FROM python:3.11.10-slim-bookworm@sha256:5501a4fe605abe24de87c2f3d6cf9fd760354416a0cad0296cf284fddcdca9e2 AS base
55
ARG TARGETARCH
66

77
# Install runtime OS package dependencies
@@ -10,7 +10,9 @@ RUN --mount=type=cache,target=/var/cache/apt \
1010
# Install dependencies to add additional repos
1111
apt-get install -y --no-install-recommends \
1212
# Runtime packages (groff-base is necessary for AWS CLI help)
13-
ca-certificates curl gnupg git make openssl tar pixz zip unzip groff-base iputils-ping nss-passwords procps iproute2 xz-utils libatomic1 binutils
13+
ca-certificates curl gnupg git make openssl tar pixz zip unzip groff-base iputils-ping nss-passwords procps iproute2 xz-utils libatomic1 binutils && \
14+
# patch for CVE-2024-45490, CVE-2024-45491, CVE-2024-45492
15+
apt-get install --only-upgrade libexpat1
1416

1517
# FIXME Node 18 actually shouldn't be necessary in Community, but we assume its presence in lots of tests
1618
# Install nodejs package from the dist release server. Note: we're installing from dist binaries, and not via
@@ -89,7 +91,6 @@ ADD bin/hosts /etc/hosts
8991
# expose default environment
9092
# Set edge bind host so localstack can be reached by other containers
9193
# set library path and default LocalStack hostname
92-
ENV LD_LIBRARY_PATH=$JAVA_HOME/lib:$JAVA_HOME/lib/server
9394
ENV USER=localstack
9495
ENV PYTHONUNBUFFERED=1
9596

@@ -155,18 +156,12 @@ RUN SETUPTOOLS_SCM_PRETEND_VERSION_FOR_LOCALSTACK_CORE=${LOCALSTACK_BUILD_VERSIO
155156
RUN --mount=type=cache,target=/root/.cache \
156157
--mount=type=cache,target=/var/lib/localstack/cache \
157158
source .venv/bin/activate && \
158-
python -m localstack.cli.lpm install java --version 11 && \
159159
python -m localstack.cli.lpm install \
160160
lambda-runtime \
161161
dynamodb-local && \
162162
chown -R localstack:localstack /usr/lib/localstack && \
163163
chmod -R 777 /usr/lib/localstack
164164

165-
# Set up Java
166-
ENV JAVA_HOME /usr/lib/localstack/java/11
167-
RUN ln -s $JAVA_HOME/bin/java /usr/bin/java
168-
ENV PATH="${PATH}:${JAVA_HOME}/bin"
169-
170165
# link the python package installer virtual environments into the localstack venv
171166
RUN echo /var/lib/localstack/lib/python-packages/lib/python3.11/site-packages > localstack-var-python-packages-venv.pth && \
172167
mv localstack-var-python-packages-venv.pth .venv/lib/python*/site-packages/

0 commit comments

Comments
 (0)
0