Skip to content

Conversation

@nik-localstack
Copy link
Contributor

Motivation

We want to be able to expose the DNS port when running localstack on k8s for development.
Companion helm-charts PR localstack/helm-charts#146

Changes

  • Modifies the localstack.dev.kubernetes script to create blocks for the DNS port configuration.

Tests

Tested with the changed helm-charts.

Related

related to UNC-69

@nik-localstack nik-localstack self-assigned this Oct 30, 2025
@nik-localstack nik-localstack added area: integration/kubernetes Run LocalStack on Kubernetes semver: patch Non-breaking changes which can be included in patch releases docs: skip Pull request does not require documentation changes notes: skip Pull request does not have to be mentioned in the release notes labels Oct 30, 2025
@nik-localstack nik-localstack added this to the 4.11 milestone Oct 30, 2025
@github-actions
Copy link

github-actions bot commented Oct 30, 2025

Test Results - Preflight, Unit

22 278 tests   - 98   20 526 ✅  - 100   16m 34s ⏱️ +36s
     1 suites ± 0    1 752 💤 +  2 
     1 files   ± 0        0 ❌ ±  0 

Results for commit 9107c52. ± Comparison against base commit f829e69.

This pull request removes 170 and adds 72 tests. Note that renamed tests count towards both.
tests.unit.aws.protocol.test_op_router ‑ test_create_op_router_works_for_every_service[apptest]
tests.unit.aws.protocol.test_op_router ‑ test_create_op_router_works_for_every_service[iotfleethub]
tests.unit.aws.protocol.test_op_router ‑ test_create_op_router_works_for_every_service[lookoutmetrics]
tests.unit.aws.protocol.test_op_router ‑ test_create_op_router_works_for_every_service[lookoutvision]
tests.unit.aws.protocol.test_op_router ‑ test_create_op_router_works_for_every_service[qldb]
tests.unit.aws.protocol.test_op_router ‑ test_create_op_router_works_for_every_service[robomaker]
tests.unit.aws.test_connect.TestClientFactory ‑ test_typed_client_creation[qldb]
tests.unit.aws.test_connect.TestClientFactory ‑ test_typed_client_creation[qldb_session]
tests.unit.aws.test_service_router ‑ test_service_router_works_for_every_service[apptest-rest-json-CreateTestCase]
tests.unit.aws.test_service_router ‑ test_service_router_works_for_every_service[apptest-rest-json-CreateTestConfiguration]
…
tests.unit.aws.api.test_asf_providers ‑ test_provider_signatures[Ec2Provider-Ec2Api-create_ipam_prefix_list_resolver]
tests.unit.aws.api.test_asf_providers ‑ test_provider_signatures[Ec2Provider-Ec2Api-create_ipam_prefix_list_resolver_target]
tests.unit.aws.api.test_asf_providers ‑ test_provider_signatures[Ec2Provider-Ec2Api-delete_ipam_prefix_list_resolver]
tests.unit.aws.api.test_asf_providers ‑ test_provider_signatures[Ec2Provider-Ec2Api-delete_ipam_prefix_list_resolver_target]
tests.unit.aws.api.test_asf_providers ‑ test_provider_signatures[Ec2Provider-Ec2Api-describe_capacity_reservation_topology]
tests.unit.aws.api.test_asf_providers ‑ test_provider_signatures[Ec2Provider-Ec2Api-describe_ipam_prefix_list_resolver_targets]
tests.unit.aws.api.test_asf_providers ‑ test_provider_signatures[Ec2Provider-Ec2Api-describe_ipam_prefix_list_resolvers]
tests.unit.aws.api.test_asf_providers ‑ test_provider_signatures[Ec2Provider-Ec2Api-get_ipam_prefix_list_resolver_rules]
tests.unit.aws.api.test_asf_providers ‑ test_provider_signatures[Ec2Provider-Ec2Api-get_ipam_prefix_list_resolver_version_entries]
tests.unit.aws.api.test_asf_providers ‑ test_provider_signatures[Ec2Provider-Ec2Api-get_ipam_prefix_list_resolver_versions]
…

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented Oct 30, 2025

Test Results (amd64) - Acceptance

7 tests  ±0   5 ✅ ±0   3m 20s ⏱️ +6s
1 suites ±0   2 💤 ±0 
1 files   ±0   0 ❌ ±0 

Results for commit 9107c52. ± Comparison against base commit f829e69.

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented Oct 30, 2025

Test Results (amd64) - Integration, Bootstrap

    5 files  ±0      5 suites  ±0   2h 38m 44s ⏱️ - 1m 27s
5 268 tests ±0  4 739 ✅ ±0  529 💤 ±0  0 ❌ ±0 
5 274 runs  ±0  4 739 ✅ ±0  535 💤 ±0  0 ❌ ±0 

Results for commit 9107c52. ± Comparison against base commit f829e69.

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented Oct 30, 2025

LocalStack Community integration with Pro

    2 files  ±0      2 suites  ±0   2h 2m 35s ⏱️ -45s
4 894 tests ±0  4 525 ✅ ±0  369 💤 ±0  0 ❌ ±0 
4 896 runs  ±0  4 525 ✅ ±0  371 💤 ±0  0 ❌ ±0 

Results for commit 9107c52. ± Comparison against base commit f829e69.

♻️ This comment has been updated with latest results.

@nik-localstack nik-localstack force-pushed the k8s/update-kubernetes-dev-script branch from fe95363 to 451e898 Compare October 30, 2025 09:57
@nik-localstack nik-localstack marked this pull request as ready for review October 30, 2025 12:39
@nik-localstack nik-localstack requested a review from a team October 30, 2025 12:40
@cloutierMat
Copy link
Contributor

Same comment as in localstack/helm-charts#146. I would love to see if we can validate the PR to go 🍏 before merging

Copy link
Contributor

@simonrw simonrw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In general exposing the DNS server to the host is full of problems. Can we add a CLI flag that opts out of this behaviour? Otherwise the nodes will fail to start

@nik-localstack nik-localstack force-pushed the k8s/update-kubernetes-dev-script branch from 451e898 to 4c57900 Compare October 31, 2025 15:23
@nik-localstack
Copy link
Contributor Author

In general exposing the DNS server to the host is full of problems. Can we add a CLI flag that opts out of this behaviour? Otherwise the nodes will fail to start

Good point, adding two cli options

--expose-dns boolean to control the exposing of the DNS port
--dns-port integer to optionally change the DNS port

@simonrw
Copy link
Contributor

simonrw commented Nov 3, 2025

  • --expose-dns boolean to control the exposing of the DNS port

My suggestion was a flag to opt out, but you have added flags to opt in. Why do you think it's better to opt in to this?

@nik-localstack
Copy link
Contributor Author

  • --expose-dns boolean to control the exposing of the DNS port

My suggestion was a flag to opt out, but you have added flags to opt in. Why do you think it's better to opt in to this?

Sorry, I completely missed the out part of your suggestions.
But my thinking was to be consistent with the other flags of the script that are opt in.
That way, the change wont break existing setup of anyone using this script if the port 53 cannot be used.

Copy link
Contributor

simonrw commented Nov 3, 2025

I'm not settled on either way, I think exposing DNS to the host is only useful for people developing Route53 generally, and probably people are going to be annoyed by this constantly not working that an opt-in is fine. I just wanted to check the logic.

Copy link
Contributor

@simonrw simonrw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ironically I cannot test this change since port 53 is bound by my docker daemon!

I have verified the config files manually and things seem to line up so let's merge this and if we have problems in the future we can tackle them them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: integration/kubernetes Run LocalStack on Kubernetes docs: skip Pull request does not require documentation changes notes: skip Pull request does not have to be mentioned in the release notes semver: patch Non-breaking changes which can be included in patch releases

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants