From 9672061cb1dc65d5fb754de730b604e7141bc445 Mon Sep 17 00:00:00 2001 From: Chad Woolley Date: Wed, 7 Aug 2024 12:00:33 -0700 Subject: [PATCH 1/2] Increase memory/disk defaults for workspaces - See https://gitlab.com/gitlab-org/gitlab/-/issues/477834 --- .../workspaces/create/project_cloner_component_injector.rb | 2 +- .../workspaces/create/tools_component_injector.rb | 2 +- .../workspaces/create/volume_component_injector.rb | 2 +- .../remote_development/example.processed-devfile-v2.yaml | 6 +++--- .../remote_development/example.processed-devfile.yaml | 6 +++--- .../example.processed-marketplace-disabled-devfile.yaml | 6 +++--- .../example.project-cloner-injected-devfile.yaml | 4 ++-- .../remote_development/example.tools-injected-devfile.yaml | 2 +- ...example.tools-injected-marketplace-disabled-devfile.yaml | 2 +- .../workspaces/create/main_integration_spec.rb | 4 ++-- .../remote_development_shared_contexts.rb | 6 +++--- 11 files changed, 21 insertions(+), 21 deletions(-) diff --git a/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb b/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb index aa87cb23b79cbb..82907ba8f6a4f3 100644 --- a/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb +++ b/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb @@ -56,7 +56,7 @@ def self.inject(context) # command has been overridden here as the default command in the alpine/git # container invokes git directly 'command' => %w[/bin/sh -c], - 'memoryLimit' => '256Mi', + 'memoryLimit' => '2Gi', 'memoryRequest' => '128Mi', 'cpuLimit' => '500m', 'cpuRequest' => '100m' diff --git a/ee/lib/remote_development/workspaces/create/tools_component_injector.rb b/ee/lib/remote_development/workspaces/create/tools_component_injector.rb index d5e6a0696f4eee..962f2c4e1df4b9 100644 --- a/ee/lib/remote_development/workspaces/create/tools_component_injector.rb +++ b/ee/lib/remote_development/workspaces/create/tools_component_injector.rb @@ -154,7 +154,7 @@ def self.tools_components(tools_dir:, image:) 'value' => tools_dir } ], - 'memoryLimit' => '256Mi', + 'memoryLimit' => '2Gi', 'memoryRequest' => '128Mi', 'cpuLimit' => '500m', 'cpuRequest' => '100m' diff --git a/ee/lib/remote_development/workspaces/create/volume_component_injector.rb b/ee/lib/remote_development/workspaces/create/volume_component_injector.rb index 9e11750686569d..c3aca03ea2e64e 100644 --- a/ee/lib/remote_development/workspaces/create/volume_component_injector.rb +++ b/ee/lib/remote_development/workspaces/create/volume_component_injector.rb @@ -19,7 +19,7 @@ def self.inject(context) volume_component = { 'name' => volume_name, 'volume' => { - 'size' => '15Gi' + 'size' => '50Gi' } } diff --git a/ee/spec/fixtures/remote_development/example.processed-devfile-v2.yaml b/ee/spec/fixtures/remote_development/example.processed-devfile-v2.yaml index 0afce736c8d692..b2a23cde3ca824 100644 --- a/ee/spec/fixtures/remote_development/example.processed-devfile-v2.yaml +++ b/ee/spec/fixtures/remote_development/example.processed-devfile-v2.yaml @@ -66,7 +66,7 @@ components: env: - name: GL_TOOLS_DIR value: "/projects/.gl-tools" - memoryLimit: 256Mi + memoryLimit: 2Gi memoryRequest: 128Mi cpuLimit: 500m cpuRequest: 100m @@ -85,13 +85,13 @@ components: command: - "/bin/sh" - "-c" - memoryLimit: 256Mi + memoryLimit: 2Gi memoryRequest: 128Mi cpuLimit: 500m cpuRequest: 100m - name: gl-workspace-data volume: - size: 15Gi + size: 50Gi events: preStart: - gl-tools-injector-command diff --git a/ee/spec/fixtures/remote_development/example.processed-devfile.yaml b/ee/spec/fixtures/remote_development/example.processed-devfile.yaml index 0afce736c8d692..b2a23cde3ca824 100644 --- a/ee/spec/fixtures/remote_development/example.processed-devfile.yaml +++ b/ee/spec/fixtures/remote_development/example.processed-devfile.yaml @@ -66,7 +66,7 @@ components: env: - name: GL_TOOLS_DIR value: "/projects/.gl-tools" - memoryLimit: 256Mi + memoryLimit: 2Gi memoryRequest: 128Mi cpuLimit: 500m cpuRequest: 100m @@ -85,13 +85,13 @@ components: command: - "/bin/sh" - "-c" - memoryLimit: 256Mi + memoryLimit: 2Gi memoryRequest: 128Mi cpuLimit: 500m cpuRequest: 100m - name: gl-workspace-data volume: - size: 15Gi + size: 50Gi events: preStart: - gl-tools-injector-command diff --git a/ee/spec/fixtures/remote_development/example.processed-marketplace-disabled-devfile.yaml b/ee/spec/fixtures/remote_development/example.processed-marketplace-disabled-devfile.yaml index 6379e25fa347e1..f1db6b77a61271 100644 --- a/ee/spec/fixtures/remote_development/example.processed-marketplace-disabled-devfile.yaml +++ b/ee/spec/fixtures/remote_development/example.processed-marketplace-disabled-devfile.yaml @@ -48,7 +48,7 @@ components: mountSources: true - name: gl-workspace-data volume: - size: 15Gi + size: 50Gi - name: gl-tools-injector container: image: registry.gitlab.com/gitlab-org/remote-development/gitlab-workspaces-tools:2.0.0 @@ -58,7 +58,7 @@ components: env: - name: GL_TOOLS_DIR value: "/projects/.gl-tools" - memoryLimit: 256Mi + memoryLimit: 2Gi memoryRequest: 128Mi cpuLimit: 500m cpuRequest: 100m @@ -77,7 +77,7 @@ components: command: - "/bin/sh" - "-c" - memoryLimit: 256Mi + memoryLimit: 2Gi memoryRequest: 128Mi cpuLimit: 500m cpuRequest: 100m diff --git a/ee/spec/fixtures/remote_development/example.project-cloner-injected-devfile.yaml b/ee/spec/fixtures/remote_development/example.project-cloner-injected-devfile.yaml index e5f2079028d888..7355baeb25a0bb 100644 --- a/ee/spec/fixtures/remote_development/example.project-cloner-injected-devfile.yaml +++ b/ee/spec/fixtures/remote_development/example.project-cloner-injected-devfile.yaml @@ -57,7 +57,7 @@ components: env: - name: GL_TOOLS_DIR value: "/projects/.gl-tools" - memoryLimit: 256Mi + memoryLimit: 2Gi memoryRequest: 128Mi cpuLimit: 500m cpuRequest: 100m @@ -73,7 +73,7 @@ components: command: - "/bin/sh" - "-c" - memoryLimit: 256Mi + memoryLimit: 2Gi memoryRequest: 128Mi cpuLimit: 500m cpuRequest: 100m diff --git a/ee/spec/fixtures/remote_development/example.tools-injected-devfile.yaml b/ee/spec/fixtures/remote_development/example.tools-injected-devfile.yaml index f59219400a2938..c81a212e2c1b8e 100644 --- a/ee/spec/fixtures/remote_development/example.tools-injected-devfile.yaml +++ b/ee/spec/fixtures/remote_development/example.tools-injected-devfile.yaml @@ -57,7 +57,7 @@ components: env: - name: GL_TOOLS_DIR value: "/projects/.gl-tools" - memoryLimit: 256Mi + memoryLimit: 2Gi memoryRequest: 128Mi cpuLimit: 500m cpuRequest: 100m diff --git a/ee/spec/fixtures/remote_development/example.tools-injected-marketplace-disabled-devfile.yaml b/ee/spec/fixtures/remote_development/example.tools-injected-marketplace-disabled-devfile.yaml index 06178b6fcfc636..f0deb50bdac3b8 100644 --- a/ee/spec/fixtures/remote_development/example.tools-injected-marketplace-disabled-devfile.yaml +++ b/ee/spec/fixtures/remote_development/example.tools-injected-marketplace-disabled-devfile.yaml @@ -57,7 +57,7 @@ components: env: - name: GL_TOOLS_DIR value: "/projects/.gl-tools" - memoryLimit: 256Mi + memoryLimit: 2Gi memoryRequest: 128Mi cpuLimit: 500m cpuRequest: 100m diff --git a/ee/spec/lib/remote_development/workspaces/create/main_integration_spec.rb b/ee/spec/lib/remote_development/workspaces/create/main_integration_spec.rb index b58d50795d6d36..9045a93130acaf 100644 --- a/ee/spec/lib/remote_development/workspaces/create/main_integration_spec.rb +++ b/ee/spec/lib/remote_development/workspaces/create/main_integration_spec.rb @@ -18,7 +18,7 @@ let(:devfile_path) { '.devfile.yaml' } let(:devfile_fixture_name) { 'example.devfile.yaml' } let(:devfile_yaml) { read_devfile(devfile_fixture_name) } - let(:processed_devfile) { YAML.safe_load(example_processed_devfile).to_h } + let(:expected_processed_devfile) { YAML.safe_load(example_processed_devfile).to_h } let(:editor) { 'webide' } let(:workspace_root) { '/projects' } let(:variables) do @@ -122,7 +122,7 @@ expect(workspace.devfile).to eq(devfile_yaml) actual_processed_devfile = YAML.safe_load(workspace.processed_devfile).to_h - expect(actual_processed_devfile).to eq(processed_devfile) + expect(actual_processed_devfile).to eq(expected_processed_devfile) variables.each do |variable| expect( diff --git a/ee/spec/support/shared_contexts/remote_development/remote_development_shared_contexts.rb b/ee/spec/support/shared_contexts/remote_development/remote_development_shared_contexts.rb index 77b506f1c5dd24..9a7160a917e4d2 100644 --- a/ee/spec/support/shared_contexts/remote_development/remote_development_shared_contexts.rb +++ b/ee/spec/support/shared_contexts/remote_development/remote_development_shared_contexts.rb @@ -768,7 +768,7 @@ def workspace_deployment( resources: { limits: { cpu: "500m", - memory: "256Mi" + memory: "2Gi" }, requests: { cpu: "100m", @@ -820,7 +820,7 @@ def workspace_deployment( resources: { limits: { cpu: "500m", - memory: "256Mi" + memory: "2Gi" }, requests: { cpu: "100m", @@ -945,7 +945,7 @@ def workspace_pvc( ], resources: { requests: { - storage: "15Gi" + storage: "50Gi" } } }, -- GitLab From b89fefbc2318ee108048e9fcbbe7c9a893de158a Mon Sep 17 00:00:00 2001 From: Chad Woolley Date: Mon, 12 Aug 2024 13:07:33 -0700 Subject: [PATCH 2/2] Change request and limit values --- .../create/project_cloner_component_injector.rb | 4 ++-- .../workspaces/create/tools_component_injector.rb | 4 ++-- .../remote_development/example.processed-devfile-v2.yaml | 8 ++++---- .../remote_development/example.processed-devfile.yaml | 8 ++++---- .../example.processed-marketplace-disabled-devfile.yaml | 8 ++++---- .../example.project-cloner-injected-devfile.yaml | 8 ++++---- .../example.tools-injected-devfile.yaml | 4 ++-- ...ample.tools-injected-marketplace-disabled-devfile.yaml | 4 ++-- .../remote_development_shared_contexts.rb | 8 ++++---- scripts/remote_development/run-smoke-test-suite.sh | 2 +- 10 files changed, 29 insertions(+), 29 deletions(-) diff --git a/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb b/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb index 82907ba8f6a4f3..a5e05c2c43372b 100644 --- a/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb +++ b/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb @@ -56,8 +56,8 @@ def self.inject(context) # command has been overridden here as the default command in the alpine/git # container invokes git directly 'command' => %w[/bin/sh -c], - 'memoryLimit' => '2Gi', - 'memoryRequest' => '128Mi', + 'memoryLimit' => '512Mi', + 'memoryRequest' => '256Mi', 'cpuLimit' => '500m', 'cpuRequest' => '100m' } diff --git a/ee/lib/remote_development/workspaces/create/tools_component_injector.rb b/ee/lib/remote_development/workspaces/create/tools_component_injector.rb index 962f2c4e1df4b9..00fd644c27cc3a 100644 --- a/ee/lib/remote_development/workspaces/create/tools_component_injector.rb +++ b/ee/lib/remote_development/workspaces/create/tools_component_injector.rb @@ -154,8 +154,8 @@ def self.tools_components(tools_dir:, image:) 'value' => tools_dir } ], - 'memoryLimit' => '2Gi', - 'memoryRequest' => '128Mi', + 'memoryLimit' => '512Mi', + 'memoryRequest' => '256Mi', 'cpuLimit' => '500m', 'cpuRequest' => '100m' } diff --git a/ee/spec/fixtures/remote_development/example.processed-devfile-v2.yaml b/ee/spec/fixtures/remote_development/example.processed-devfile-v2.yaml index b2a23cde3ca824..a2a0e28ba4640a 100644 --- a/ee/spec/fixtures/remote_development/example.processed-devfile-v2.yaml +++ b/ee/spec/fixtures/remote_development/example.processed-devfile-v2.yaml @@ -66,8 +66,8 @@ components: env: - name: GL_TOOLS_DIR value: "/projects/.gl-tools" - memoryLimit: 2Gi - memoryRequest: 128Mi + memoryLimit: 512Mi + memoryRequest: 256Mi cpuLimit: 500m cpuRequest: 100m - name: gl-cloner-injector @@ -85,8 +85,8 @@ components: command: - "/bin/sh" - "-c" - memoryLimit: 2Gi - memoryRequest: 128Mi + memoryLimit: 512Mi + memoryRequest: 256Mi cpuLimit: 500m cpuRequest: 100m - name: gl-workspace-data diff --git a/ee/spec/fixtures/remote_development/example.processed-devfile.yaml b/ee/spec/fixtures/remote_development/example.processed-devfile.yaml index b2a23cde3ca824..a2a0e28ba4640a 100644 --- a/ee/spec/fixtures/remote_development/example.processed-devfile.yaml +++ b/ee/spec/fixtures/remote_development/example.processed-devfile.yaml @@ -66,8 +66,8 @@ components: env: - name: GL_TOOLS_DIR value: "/projects/.gl-tools" - memoryLimit: 2Gi - memoryRequest: 128Mi + memoryLimit: 512Mi + memoryRequest: 256Mi cpuLimit: 500m cpuRequest: 100m - name: gl-cloner-injector @@ -85,8 +85,8 @@ components: command: - "/bin/sh" - "-c" - memoryLimit: 2Gi - memoryRequest: 128Mi + memoryLimit: 512Mi + memoryRequest: 256Mi cpuLimit: 500m cpuRequest: 100m - name: gl-workspace-data diff --git a/ee/spec/fixtures/remote_development/example.processed-marketplace-disabled-devfile.yaml b/ee/spec/fixtures/remote_development/example.processed-marketplace-disabled-devfile.yaml index f1db6b77a61271..c5f7735dc02fa3 100644 --- a/ee/spec/fixtures/remote_development/example.processed-marketplace-disabled-devfile.yaml +++ b/ee/spec/fixtures/remote_development/example.processed-marketplace-disabled-devfile.yaml @@ -58,8 +58,8 @@ components: env: - name: GL_TOOLS_DIR value: "/projects/.gl-tools" - memoryLimit: 2Gi - memoryRequest: 128Mi + memoryLimit: 512Mi + memoryRequest: 256Mi cpuLimit: 500m cpuRequest: 100m - name: gl-cloner-injector @@ -77,8 +77,8 @@ components: command: - "/bin/sh" - "-c" - memoryLimit: 2Gi - memoryRequest: 128Mi + memoryLimit: 512Mi + memoryRequest: 256Mi cpuLimit: 500m cpuRequest: 100m events: diff --git a/ee/spec/fixtures/remote_development/example.project-cloner-injected-devfile.yaml b/ee/spec/fixtures/remote_development/example.project-cloner-injected-devfile.yaml index 7355baeb25a0bb..950a924c37d40b 100644 --- a/ee/spec/fixtures/remote_development/example.project-cloner-injected-devfile.yaml +++ b/ee/spec/fixtures/remote_development/example.project-cloner-injected-devfile.yaml @@ -57,8 +57,8 @@ components: env: - name: GL_TOOLS_DIR value: "/projects/.gl-tools" - memoryLimit: 2Gi - memoryRequest: 128Mi + memoryLimit: 512Mi + memoryRequest: 256Mi cpuLimit: 500m cpuRequest: 100m - name: gl-cloner-injector @@ -73,8 +73,8 @@ components: command: - "/bin/sh" - "-c" - memoryLimit: 2Gi - memoryRequest: 128Mi + memoryLimit: 512Mi + memoryRequest: 256Mi cpuLimit: 500m cpuRequest: 100m events: diff --git a/ee/spec/fixtures/remote_development/example.tools-injected-devfile.yaml b/ee/spec/fixtures/remote_development/example.tools-injected-devfile.yaml index c81a212e2c1b8e..e7f2664b8e192c 100644 --- a/ee/spec/fixtures/remote_development/example.tools-injected-devfile.yaml +++ b/ee/spec/fixtures/remote_development/example.tools-injected-devfile.yaml @@ -57,8 +57,8 @@ components: env: - name: GL_TOOLS_DIR value: "/projects/.gl-tools" - memoryLimit: 2Gi - memoryRequest: 128Mi + memoryLimit: 512Mi + memoryRequest: 256Mi cpuLimit: 500m cpuRequest: 100m events: diff --git a/ee/spec/fixtures/remote_development/example.tools-injected-marketplace-disabled-devfile.yaml b/ee/spec/fixtures/remote_development/example.tools-injected-marketplace-disabled-devfile.yaml index f0deb50bdac3b8..b5cc3ee036ba70 100644 --- a/ee/spec/fixtures/remote_development/example.tools-injected-marketplace-disabled-devfile.yaml +++ b/ee/spec/fixtures/remote_development/example.tools-injected-marketplace-disabled-devfile.yaml @@ -57,8 +57,8 @@ components: env: - name: GL_TOOLS_DIR value: "/projects/.gl-tools" - memoryLimit: 2Gi - memoryRequest: 128Mi + memoryLimit: 512Mi + memoryRequest: 256Mi cpuLimit: 500m cpuRequest: 100m events: diff --git a/ee/spec/support/shared_contexts/remote_development/remote_development_shared_contexts.rb b/ee/spec/support/shared_contexts/remote_development/remote_development_shared_contexts.rb index 9a7160a917e4d2..9dcf56d2d63806 100644 --- a/ee/spec/support/shared_contexts/remote_development/remote_development_shared_contexts.rb +++ b/ee/spec/support/shared_contexts/remote_development/remote_development_shared_contexts.rb @@ -768,11 +768,11 @@ def workspace_deployment( resources: { limits: { cpu: "500m", - memory: "2Gi" + memory: "512Mi" }, requests: { cpu: "100m", - memory: "128Mi" + memory: "256Mi" } }, volumeMounts: [ @@ -820,11 +820,11 @@ def workspace_deployment( resources: { limits: { cpu: "500m", - memory: "2Gi" + memory: "512Mi" }, requests: { cpu: "100m", - memory: "128Mi" + memory: "256Mi" } }, volumeMounts: [ diff --git a/scripts/remote_development/run-smoke-test-suite.sh b/scripts/remote_development/run-smoke-test-suite.sh index 1b9d119f3ff90a..b4aa0c1fd56895 100755 --- a/scripts/remote_development/run-smoke-test-suite.sh +++ b/scripts/remote_development/run-smoke-test-suite.sh @@ -100,7 +100,7 @@ function run_rspec_rails_non_fast { "spec/support_specs/matchers/result_matchers_spec.rb" ) - bin/rspec "${files_for_rails[@]}" + bin/rspec --format documentation "${files_for_rails[@]}" } function run_rspec_feature { -- GitLab