Add latest changes from gitlab-org/gitlab@master

This commit is contained in:
GitLab Bot 2021-02-24 03:10:59 +00:00
parent 97d9d9ee16
commit a0d18c1c5c
16 changed files with 154 additions and 14 deletions

View File

@ -89,7 +89,7 @@ gem 'grape-entity', '~> 0.7.1'
gem 'rack-cors', '~> 1.0.6', require: 'rack/cors'
# GraphQL API
gem 'graphql', '~> 1.11.4'
gem 'graphql', '~> 1.11.8'
# NOTE: graphiql-rails v1.5+ doesn't work: https://gitlab.com/gitlab-org/gitlab/issues/31771
# TODO: remove app/views/graphiql/rails/editors/show.html.erb when https://github.com/rmosolgo/graphiql-rails/pull/71 is released:
# https://gitlab.com/gitlab-org/gitlab/issues/31747
@ -196,7 +196,7 @@ gem 'acts-as-taggable-on', '~> 7.0'
gem 'sidekiq', '~> 5.2.7'
gem 'sidekiq-cron', '~> 1.0'
gem 'redis-namespace', '~> 1.7.0'
gem 'gitlab-sidekiq-fetcher', '0.5.4', require: 'sidekiq-reliable-fetch'
gem 'gitlab-sidekiq-fetcher', '0.5.5', require: 'sidekiq-reliable-fetch'
# Cron Parser
gem 'fugit', '~> 1.2.1'

View File

@ -451,7 +451,7 @@ GEM
gitlab-pry-byebug (3.9.0)
byebug (~> 11.0)
pry (~> 0.13.0)
gitlab-sidekiq-fetcher (0.5.4)
gitlab-sidekiq-fetcher (0.5.5)
sidekiq (~> 5)
gitlab-styles (6.0.0)
rubocop (~> 0.91.1)
@ -520,7 +520,7 @@ GEM
faraday (>= 1.0)
faraday_middleware
graphql-client
graphql (1.11.4)
graphql (1.11.8)
graphql-client (0.16.0)
activesupport (>= 3.0)
graphql (~> 1.8)
@ -1379,7 +1379,7 @@ DEPENDENCIES
gitlab-markup (~> 1.7.1)
gitlab-net-dns (~> 0.9.1)
gitlab-pry-byebug
gitlab-sidekiq-fetcher (= 0.5.4)
gitlab-sidekiq-fetcher (= 0.5.5)
gitlab-styles (~> 6.0.0)
gitlab_chronic_duration (~> 0.10.6.2)
gitlab_omniauth-ldap (~> 2.1.1)
@ -1393,7 +1393,7 @@ DEPENDENCIES
grape_logging (~> 1.7)
graphiql-rails (~> 1.4.10)
graphlient (~> 0.4.0)
graphql (~> 1.11.4)
graphql (~> 1.11.8)
graphql-docs (~> 1.6.0)
grpc (~> 1.30.2)
gssapi

View File

@ -150,7 +150,7 @@ export default {
<gl-button
v-else
category="primary"
variant="success"
variant="confirm"
type="submit"
:loading="isSaving"
:disabled="isDisabled"

View File

@ -166,6 +166,7 @@ export default {
:title="$options.i18n.REMOVE_TAG_BUTTON_TITLE"
:tooltip-title="$options.i18n.REMOVE_TAG_BUTTON_DISABLE_TOOLTIP"
:tooltip-disabled="tag.canDelete"
data-qa-selector="tag_delete_button"
data-testid="single-delete-button"
@delete="$emit('delete')"
/>

View File

@ -92,6 +92,7 @@ export default {
<router-link
class="gl-text-body gl-font-weight-bold"
data-testid="details-link"
data-qa-selector="registry_image_content"
:to="{ name: 'details', params: { id } }"
>
{{ item.path }}

View File

@ -5,6 +5,7 @@ module AlertManagement
include Gitlab::Utils::StrongMemoize
DEFAULT_ALERT_TITLE = ::Gitlab::AlertManagement::Payload::Generic::DEFAULT_TITLE
DEFAULT_INCIDENT_TITLE = 'New: Incident'
# @param alert [AlertManagement::Alert]
# @param user [User]
@ -57,7 +58,7 @@ module AlertManagement
def update_title_for(issue)
return unless issue.title == DEFAULT_ALERT_TITLE
issue.update!(title: _('New: Incident %{iid}' % { iid: issue.iid }))
issue.update!(title: "#{DEFAULT_INCIDENT_TITLE} #{issue.iid}")
end
def error(message, issue = nil)

View File

@ -0,0 +1,5 @@
---
title: Update button variant to confirm on integration settings page
merge_request: 55017
author:
type: changed

View File

@ -0,0 +1,5 @@
---
title: Update gitlab-sidekiq-fetcher to 0.5.5 to handle namespaced queues
merge_request: 55013
author:
type: fixed

View File

@ -4,7 +4,7 @@ module Gitlab
module Extensions
class ExternallyPaginatedArrayExtension < GraphQL::Schema::Field::ConnectionExtension
def resolve(object:, arguments:, context:)
yield(object, arguments)
yield(object, arguments, arguments)
end
end
end

View File

@ -20178,9 +20178,6 @@ msgstr ""
msgid "New..."
msgstr ""
msgid "New: Incident %{iid}"
msgstr ""
msgid "Newest first"
msgstr ""

View File

@ -293,6 +293,10 @@ module QA
autoload :Show, 'qa/page/project/packages/show'
end
module Registry
autoload :Show, 'qa/page/project/registry/show'
end
module Settings
autoload :Advanced, 'qa/page/project/settings/advanced'
autoload :Main, 'qa/page/project/settings/main'

View File

@ -0,0 +1,40 @@
# frozen_string_literal: true
module QA
module Page
module Project
module Registry
class Show < QA::Page::Base
view 'app/assets/javascripts/registry/explorer/components/list_page/image_list_row.vue' do
element :registry_image_content
end
view 'app/assets/javascripts/registry/explorer/components/details_page/tags_list_row.vue' do
element :tag_delete_button
end
def has_image_repository?(name)
find('a[data-testid="details-link"]', text: name)
end
def click_on_image(name)
find('a[data-testid="details-link"]', text: name).click
end
def has_tag?(tag_name)
has_button?(tag_name)
end
def has_no_tag?(tag_name)
has_no_button?(tag_name)
end
def click_delete
find('[data-testid="single-delete-button"]').click
find_button('Confirm').click
end
end
end
end
end
end

View File

@ -22,6 +22,25 @@ module QA
click_element :packages_link
end
end
def go_to_container_registry
hover_registry do
within_submenu do
click_link('Container Registry')
end
end
end
private
def hover_registry
within_sidebar do
scroll_to_element(:packages_link)
find_element(:packages_link).hover
yield
end
end
end
end
end

View File

@ -0,0 +1,66 @@
# frozen_string_literal: true
module QA
RSpec.describe 'Package', :orchestrated do
describe 'Container Registry', only: { subdomain: :staging } do
let(:project) do
Resource::Project.fabricate_via_api! do |project|
project.name = 'project-with-registry'
project.template_name = 'express'
end
end
let!(:gitlab_ci_yaml) do
<<~YAML
build:
image: docker:19.03.12
stage: build
services:
- docker:19.03.12-dind
variables:
IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
script:
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
- docker build -t $IMAGE_TAG .
- docker push $IMAGE_TAG
YAML
end
it 'pushes project image to the container registry and deletes tag', testcase: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/1699' do
Flow::Login.sign_in
project.visit!
Resource::Repository::Commit.fabricate_via_api! do |commit|
commit.project = project
commit.commit_message = 'Add .gitlab-ci.yml'
commit.add_files([{
file_path: '.gitlab-ci.yml',
content: gitlab_ci_yaml
}])
end
Flow::Pipeline.visit_latest_pipeline
Page::Project::Pipeline::Show.perform do |pipeline|
pipeline.click_job('build')
end
Page::Project::Job::Show.perform do |job|
expect(job).to be_successful(timeout: 800)
end
Page::Project::Menu.perform(&:go_to_container_registry)
Page::Project::Registry::Show.perform do |registry|
expect(registry).to have_image_repository(project.path_with_namespace)
registry.click_on_image(project.path_with_namespace)
expect(registry).to have_tag('master')
registry.click_delete
expect(registry).not_to have_tag('master')
end
end
end
end
end

View File

@ -15,6 +15,7 @@ module Matchers
pipeline
related_issue_item
snippet_description
tag
].each do |predicate|
RSpec::Matchers.define "have_#{predicate}" do |*args, **kwargs|
match do |page_object|

View File

@ -89,7 +89,7 @@ RSpec.describe 'Projects > Settings > For a forked project', :js do
)
end
it 'successfully fills and submits the form' do
it 'successfully fills and submits the form', quarantine: 'https://gitlab.com/gitlab-org/gitlab/-/issues/322666' do
visit project_settings_operations_path(project)
wait_for_requests
@ -152,7 +152,7 @@ RSpec.describe 'Projects > Settings > For a forked project', :js do
end
context 'grafana integration settings form' do
it 'successfully fills and completes the form' do
it 'successfully fills and completes the form', quarantine: 'https://gitlab.com/gitlab-org/gitlab/-/issues/322666' do
visit project_settings_operations_path(project)
wait_for_requests