[CIEXE-2016] Migrate GitLab CI generators to pod-level resource variables#4019
Draft
henryvo117 wants to merge 3 commits into
Draft
[CIEXE-2016] Migrate GitLab CI generators to pod-level resource variables#4019henryvo117 wants to merge 3 commits into
henryvo117 wants to merge 3 commits into
Conversation
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
KUBERNETES_SERVICE_* vars no longer apply when pod-level resources are enabled. Add each service container's resource footprint to the KUBERNETES_POD_* values for every job that runs sidecars. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
… constraints With ci.gitlab-runner.enable-pod-level-resources on, Kubernetes validates: pod_request >= sum(container_requests) and pod_limit >= each container_limit Runner global defaults per service (no explicit KUBERNETES_SERVICE_*): request=2Gi, limit=6Gi | dind sidecar: request=50Gi, limit=50Gi Changes: - appsec dind jobs: 24-30Gi → 52Gi (covers 50Gi dind sidecar + helper) - ASAN / test_extension_ci / xDebug (3 services): 5-6Gi → 7-9Gi - PHP Language Tests ≥7.4: 8Gi → 10Gi (OOMKill headroom for helper+test-agent) - PHP Language Tests <7.4: 5Gi → 6Gi (pod_limit ≥ 6Gi service limit) - .cli_integration_test (3-4 services): 6Gi → 9Gi; loop adds 2Gi for web (mysql) - test_auto_instrumentation/composer/integration/distributed_tracing: 7Gi → 9Gi - .verify_job: pod_limit 5Gi → 6Gi (request-replayer has 6Gi limit) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Replace per-container
KUBERNETES_CPU_*/KUBERNETES_MEMORY_*/KUBERNETES_HELPER_*variables with pod-levelKUBERNETES_POD_*equivalents across the four GitLab CI generator files (generate-appsec.php,generate-package.php,generate-profiler.php,generate-tracer.php). Pod memory/CPU budgets are increased to cover service sidecar costs (test-agent, request-replayer, httpbin, elasticsearch, kafka, etc.) since with the pod-level feature flag those resources count against the pod request.Notable decisions
KUBERNETES_SERVICE_*dead-code was removed fromgenerate-common.phpsince the pod-level feature flag supersedes per-container overrides for scheduling.Impact
For internal, CI jobs in dd-trace-php run under the pod-level resource model (
ci.gitlab-runner.enable-pod-level-resources) instead of the deprecated per-container variables that the runner is phasing out.