diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-05-25 12:09:38 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-05-25 12:09:38 +0300 |
commit | 91a7f1897e7cb14d60c2aaf3afa76ebdc879d939 (patch) | |
tree | 111f4cd313d84a58852a454c605f7bf9e5524e4c /qa | |
parent | 3146b64c517a37529e440f7724e147dbfdfbeb9c (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'qa')
-rw-r--r-- | qa/qa/specs/features/api/5_package/container_registry/saas/container_registry_spec.rb (renamed from qa/qa/specs/features/api/5_package/container_registry_spec.rb) | 11 | ||||
-rw-r--r-- | qa/qa/specs/features/browser_ui/5_package/container_registry/online_garbage_collection_spec.rb | 112 | ||||
-rw-r--r-- | qa/qa/specs/features/browser_ui/5_package/container_registry/saas/container_registry_spec.rb (renamed from qa/qa/specs/features/browser_ui/5_package/container_registry/container_registry_spec.rb) | 18 | ||||
-rw-r--r-- | qa/qa/specs/features/browser_ui/5_package/container_registry/self_managed/container_registry_spec.rb (renamed from qa/qa/specs/features/browser_ui/5_package/container_registry/container_registry_omnibus_spec.rb) | 66 | ||||
-rw-r--r-- | qa/qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb | 56 |
5 files changed, 62 insertions, 201 deletions
diff --git a/qa/qa/specs/features/api/5_package/container_registry_spec.rb b/qa/qa/specs/features/api/5_package/container_registry/saas/container_registry_spec.rb index a0d69ab5654..ffbe31ed025 100644 --- a/qa/qa/specs/features/api/5_package/container_registry_spec.rb +++ b/qa/qa/specs/features/api/5_package/container_registry/saas/container_registry_spec.rb @@ -3,13 +3,12 @@ require 'airborne' module QA - RSpec.describe 'Package', :reliable, product_group: :container_registry, only: { - subdomain: %i[staging staging-canary pre] - } do + RSpec.describe 'Package', :reliable, only: { subdomain: %i[staging staging-canary pre] }, + product_group: :container_registry do include Support::API include Support::Helpers::MaskToken - describe 'Container Registry' do + describe 'SaaS Container Registry API' do let(:api_client) { Runtime::API::Client.new(:gitlab) } let(:project) do @@ -45,10 +44,10 @@ module QA - test build: - image: docker:19.03.12 + image: docker:24.0.1 stage: build services: - - docker:19.03.12-dind + - docker:24.0.1-dind variables: IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG DOCKER_HOST: tcp://docker:2376 diff --git a/qa/qa/specs/features/browser_ui/5_package/container_registry/online_garbage_collection_spec.rb b/qa/qa/specs/features/browser_ui/5_package/container_registry/online_garbage_collection_spec.rb deleted file mode 100644 index 1e076117e4e..00000000000 --- a/qa/qa/specs/features/browser_ui/5_package/container_registry/online_garbage_collection_spec.rb +++ /dev/null @@ -1,112 +0,0 @@ -# frozen_string_literal: true - -module QA - RSpec.describe 'Package', :requires_admin, product_group: :container_registry do - describe 'Container Registry Online Garbage Collection', :registry_gc, only: { subdomain: %i[pre] } do - let(:group) { Resource::Group.fabricate_via_api! } - - let(:imported_project) do - Resource::ProjectImportedFromURL.fabricate_via_browser_ui! do |project| - project.name = 'container-registry' - project.group = group - project.gitlab_repository_path = 'https://gitlab.com/gitlab-org/container-registry.git' - end - end - - let!(:gitlab_ci_yaml) do - <<~YAML - variables: - GOPATH: $CI_PROJECT_DIR/.go - BUILD_CACHE: $CI_PROJECT_DIR/.online-gc-tester - STAGE_ONE_VALIDATION_DELAY: "6m" - STAGE_TWO_VALIDATION_DELAY: "12m" - STAGE_THREE_VALIDATION_DELAY: "6m" - STAGE_FOUR_VALIDATION_DELAY: "12m" - STAGE_FIVE_VALIDATION_DELAY: "12m" - - stages: - - generate - - build - - test - - .base: &base - image: docker:19 - services: - - docker:19-dind - variables: - DOCKER_HOST: tcp://docker:2376 - DOCKER_TLS_CERTDIR: "/certs" - DOCKER_TLS_VERIFY: 1 - DOCKER_CERT_PATH: "$DOCKER_TLS_CERTDIR/client" - before_script: - - until docker info; do sleep 1; done - - mkdir -p $GOPATH - - mkdir -p $BUILD_CACHE - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - - test: - stage: generate - extends: .base - script: - - apk add go make git - - make binaries - - ./bin/online-gc-tester generate --base-dir=$BUILD_CACHE - - ./bin/online-gc-tester build --base-dir=$BUILD_CACHE - - ./bin/online-gc-tester push --base-dir=$BUILD_CACHE - - ./bin/online-gc-tester pull --base-dir=$BUILD_CACHE - - ./bin/online-gc-tester test --base-dir=$BUILD_CACHE --stage=1 --delay=$STAGE_ONE_VALIDATION_DELAY - - ./bin/online-gc-tester test --base-dir=$BUILD_CACHE --stage=2 --delay=$STAGE_TWO_VALIDATION_DELAY - - ./bin/online-gc-tester test --base-dir=$BUILD_CACHE --stage=3 --delay=$STAGE_THREE_VALIDATION_DELAY - - ./bin/online-gc-tester test --base-dir=$BUILD_CACHE --stage=4 --delay=$STAGE_FOUR_VALIDATION_DELAY - - ./bin/online-gc-tester test --base-dir=$BUILD_CACHE --stage=5 --delay=$STAGE_FIVE_VALIDATION_DELAY - timeout: 1h 30m - YAML - end - - before do - QA::Support::Helpers::ImportSource.enable('git') - - Flow::Login.sign_in - - imported_project - - Page::Project::Menu.perform(&:go_to_repository_settings) - - Page::Project::Settings::Repository.perform do |setting| - setting.expand_default_branch - end - - Page::Project::Settings::DefaultBranch.perform do |setting| - setting.set_default_branch('online-gc-test-builder-poc') - setting.click_save_changes_button - end - - Support::Retrier.retry_on_exception(max_attempts: 3, sleep_interval: 2) do - Resource::Repository::Commit.fabricate_via_api! do |commit| - commit.project = imported_project - commit.branch = 'online-gc-test-builder-poc' - commit.commit_message = 'Update .gitlab-ci.yml' - commit.update_files([{ - file_path: '.gitlab-ci.yml', - content: gitlab_ci_yaml - }]) - end - end - end - - it 'runs the online garbage collector tool', testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/347663' do - imported_project.visit! - - Flow::Pipeline.visit_latest_pipeline - - Page::Project::Pipeline::Show.perform do |pipeline| - pipeline.click_job('test') - end - - Page::Project::Job::Show.perform do |job| - expect(job).to be_successful(timeout: 3900) - end - end - end - end -end diff --git a/qa/qa/specs/features/browser_ui/5_package/container_registry/container_registry_spec.rb b/qa/qa/specs/features/browser_ui/5_package/container_registry/saas/container_registry_spec.rb index 680b722edb7..4b2d9f96cd2 100644 --- a/qa/qa/specs/features/browser_ui/5_package/container_registry/container_registry_spec.rb +++ b/qa/qa/specs/features/browser_ui/5_package/container_registry/saas/container_registry_spec.rb @@ -2,7 +2,8 @@ module QA RSpec.describe 'Package' do - describe 'Container Registry', only: { subdomain: %i[staging staging-canary pre] }, product_group: :container_registry do + describe 'SaaS Container Registry', only: { subdomain: %i[staging staging-canary pre] }, + product_group: :container_registry do let(:project) do Resource::Project.fabricate_via_api! do |project| project.name = 'project-with-registry' @@ -12,7 +13,7 @@ module QA let(:registry_repository) do Resource::RegistryRepository.fabricate! do |repository| - repository.name = "#{project.path_with_namespace}" + repository.name = project.path_with_namespace.to_s repository.project = project end end @@ -20,10 +21,10 @@ module QA let!(:gitlab_ci_yaml) do <<~YAML build: - image: docker:19.03.12 + image: docker:24.0.1 stage: build services: - - docker:19.03.12-dind + - docker:24.0.1-dind variables: IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG DOCKER_HOST: tcp://docker:2376 @@ -49,7 +50,8 @@ module QA registry_repository&.remove_via_api! end - it 'pushes project image to the container registry and deletes tag', testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/347687' do + it 'pushes project image to the container registry and deletes tag', + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/412806' do Flow::Login.sign_in project.visit! @@ -58,9 +60,9 @@ module QA commit.project = project commit.commit_message = 'Add .gitlab-ci.yml' commit.add_files([{ - file_path: '.gitlab-ci.yml', - content: gitlab_ci_yaml - }]) + file_path: '.gitlab-ci.yml', + content: gitlab_ci_yaml + }]) end end diff --git a/qa/qa/specs/features/browser_ui/5_package/container_registry/container_registry_omnibus_spec.rb b/qa/qa/specs/features/browser_ui/5_package/container_registry/self_managed/container_registry_spec.rb index b39475b481d..9cf448aa8b7 100644 --- a/qa/qa/specs/features/browser_ui/5_package/container_registry/container_registry_omnibus_spec.rb +++ b/qa/qa/specs/features/browser_ui/5_package/container_registry/self_managed/container_registry_spec.rb @@ -27,6 +27,13 @@ module QA end end + let(:registry_repository) do + Resource::RegistryRepository.fabricate! do |repository| + repository.name = project.path_with_namespace.to_s + repository.project = project + end + end + let!(:runner) do Resource::ProjectRunner.fabricate! do |runner| runner.name = "qa-runner-#{Time.now.to_i}" @@ -44,65 +51,66 @@ module QA end after do + registry_repository&.remove_via_api! runner.remove_via_api! end context "when tls is disabled" do where do { - 'using docker:18.09.9 and a personal access token' => { - docker_client_version: 'docker:18.09.9', + 'using docker:20.10.23 and a personal access token' => { + docker_client_version: 'docker:20.10.23', authentication_token_type: :personal_access_token, token_name: 'Personal Access Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/348499' + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/412807' }, - 'using docker:18.09.9 and a project deploy token' => { - docker_client_version: 'docker:18.09.9', + 'using docker:20.10.23 and a project deploy token' => { + docker_client_version: 'docker:20.10.23', authentication_token_type: :project_deploy_token, token_name: 'Deploy Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/348852' + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/412808' }, - 'using docker:18.09.9 and a ci job token' => { - docker_client_version: 'docker:18.09.9', + 'using docker:20.10.23 and a ci job token' => { + docker_client_version: 'docker:20.10.23', authentication_token_type: :ci_job_token, token_name: 'Job Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/348765' + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/412809' }, - 'using docker:19.03.12 and a personal access token' => { - docker_client_version: 'docker:19.03.12', + 'using docker:23.0.6 and a personal access token' => { + docker_client_version: 'docker:23.0.6', authentication_token_type: :personal_access_token, token_name: 'Personal Access Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/348507' + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/412810' }, - 'using docker:19.03.12 and a project deploy token' => { - docker_client_version: 'docker:19.03.12', + 'using docker:23.0.6 and a project deploy token' => { + docker_client_version: 'docker:23.0.6', authentication_token_type: :project_deploy_token, token_name: 'Deploy Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/348859' + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/412813' }, - 'using docker:19.03.12 and a ci job token' => { - docker_client_version: 'docker:19.03.12', + 'using docker:23.0.6 and a ci job token' => { + docker_client_version: 'docker:23.0.6', authentication_token_type: :ci_job_token, token_name: 'Job Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/348654' + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/412814' }, - 'using docker:20.10 and a personal access token' => { - docker_client_version: 'docker:20.10', + 'using docker:24.0.1 and a personal access token' => { + docker_client_version: 'docker:24.0.1', authentication_token_type: :personal_access_token, token_name: 'Personal Access Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/348754' + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/412817' }, - 'using docker:20.10 and a project deploy token' => { - docker_client_version: 'docker:20.10', + 'using docker:24.0.1 and a project deploy token' => { + docker_client_version: 'docker:24.0.1', authentication_token_type: :project_deploy_token, token_name: 'Deploy Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/348856' + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/412818' }, - 'using docker:20.10 and a ci job token' => { - docker_client_version: 'docker:20.10', + 'using docker:24.0.1 and a ci job token' => { + docker_client_version: 'docker:24.0.1', authentication_token_type: :ci_job_token, token_name: 'Job Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/348766' + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/412819' } } end @@ -201,10 +209,10 @@ module QA content: <<~YAML build: - image: docker:19.03.12 + image: docker:23.0.6 stage: build services: - - name: docker:19.03.12-dind + - name: docker:23.0.6-dind command: - /bin/sh - -c diff --git a/qa/qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb b/qa/qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb index 7e99cdba369..026fd3c5d10 100644 --- a/qa/qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb +++ b/qa/qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module QA - RSpec.describe 'Package', :orchestrated, :registry, only: { pipeline: :main }, product_group: :container_registry do + RSpec.describe 'Package', :orchestrated, :registry, :skip_live_env, product_group: :container_registry do describe 'Dependency Proxy' do using RSpec::Parameterized::TableSyntax include Support::Helpers::MaskToken @@ -59,59 +59,23 @@ module QA where do { - 'using docker:18.09.9 and a personal access token' => { - docker_client_version: 'docker:18.09.9', + 'using docker:24.0.1 and a personal access token' => { + docker_client_version: 'docker:24.0.1', authentication_token_type: :personal_access_token, token_name: 'Personal Access Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/370195' + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/412820' }, - 'using docker:18.09.9 and a group deploy token' => { - docker_client_version: 'docker:18.09.9', + 'using docker:24.0.1 and a group deploy token' => { + docker_client_version: 'docker:24.0.1', authentication_token_type: :group_deploy_token, token_name: 'Deploy Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/370196' + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/412821' }, - 'using docker:18.09.9 and a ci job token' => { - docker_client_version: 'docker:18.09.9', + 'using docker:24.0.1 and a ci job token' => { + docker_client_version: 'docker:24.0.1', authentication_token_type: :ci_job_token, token_name: 'Job Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/370198' - }, - 'using docker:19.03.12 and a personal access token' => { - docker_client_version: 'docker:19.03.12', - authentication_token_type: :personal_access_token, - token_name: 'Personal Access Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/370189' - }, - 'using docker:19.03.12 and a group deploy token' => { - docker_client_version: 'docker:19.03.12', - authentication_token_type: :group_deploy_token, - token_name: 'Deploy Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/370190' - }, - 'using docker:19.03.12 and a ci job token' => { - docker_client_version: 'docker:19.03.12', - authentication_token_type: :ci_job_token, - token_name: 'Job Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/370191' - }, - 'using docker:20.10 and a personal access token' => { - docker_client_version: 'docker:20.10', - authentication_token_type: :personal_access_token, - token_name: 'Personal Access Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/370192' - }, - 'using docker:20.10 and a group deploy token' => { - docker_client_version: 'docker:20.10', - authentication_token_type: :group_deploy_token, - token_name: 'Deploy Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/370193' - }, - 'using docker:20.10 and a ci job token' => { - docker_client_version: 'docker:20.10', - authentication_token_type: :ci_job_token, - token_name: 'Job Token', - testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/370194' + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/412822' } } end |