Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/qa
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-05-25 12:09:38 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2023-05-25 12:09:38 +0300
commit91a7f1897e7cb14d60c2aaf3afa76ebdc879d939 (patch)
tree111f4cd313d84a58852a454c605f7bf9e5524e4c /qa
parent3146b64c517a37529e440f7724e147dbfdfbeb9c (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.rb112
-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.rb56
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