diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-03-06 09:08:00 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-03-06 09:08:00 +0300 |
commit | 6367f9bd9cca41c932997c94a338556ded4ced8f (patch) | |
tree | f0caeeaa3d76459589c7fb0de74b3cd2883daf96 | |
parent | 66089ccf1ab842eb5f7608502eaf8d2642e350b5 (diff) |
Add latest changes from gitlab-org/gitlab@master
-rw-r--r-- | .gitlab/CODEOWNERS | 2 | ||||
-rw-r--r-- | app/assets/javascripts/jobs/components/job/job_log_controllers.vue | 2 | ||||
-rw-r--r-- | db/post_migrate/20230302163339_add_index_to_oauth_access_grants_application_id.rb | 15 | ||||
-rw-r--r-- | db/schema_migrations/20230302163339 | 1 | ||||
-rw-r--r-- | db/structure.sql | 2 | ||||
-rw-r--r-- | doc/api/openapi/openapi.yaml | 2 | ||||
-rw-r--r-- | doc/development/code_review.md | 3 | ||||
-rw-r--r-- | spec/frontend/jobs/components/job/job_log_controllers_spec.js | 12 |
8 files changed, 37 insertions, 2 deletions
diff --git a/.gitlab/CODEOWNERS b/.gitlab/CODEOWNERS index 53933fe3ee0..b852df49c24 100644 --- a/.gitlab/CODEOWNERS +++ b/.gitlab/CODEOWNERS @@ -1431,5 +1431,5 @@ ee/lib/ee/api/entities/project.rb @gitlab-org/manage/manage-workspace/backend-ap /ee/app/assets/javascripts/usage_quotas/storage/ @fulfillment-group/utilization-group/fe [Manage::Foundations] -/lib/sidebars/ @gitlab/ @gitlab-org/manage/foundations/engineering +/lib/sidebars/ @gitlab-org/manage/foundations/engineering /ee/lib/sidebars/ @gitlab-org/manage/foundations/engineering diff --git a/app/assets/javascripts/jobs/components/job/job_log_controllers.vue b/app/assets/javascripts/jobs/components/job/job_log_controllers.vue index e9809ac661b..ea7e13418f2 100644 --- a/app/assets/javascripts/jobs/components/job/job_log_controllers.vue +++ b/app/assets/javascripts/jobs/components/job/job_log_controllers.vue @@ -103,6 +103,8 @@ export default { } else { next(); } + }).catch(() => { + this.failureCount = null; }); } }, diff --git a/db/post_migrate/20230302163339_add_index_to_oauth_access_grants_application_id.rb b/db/post_migrate/20230302163339_add_index_to_oauth_access_grants_application_id.rb new file mode 100644 index 00000000000..0db6190e17d --- /dev/null +++ b/db/post_migrate/20230302163339_add_index_to_oauth_access_grants_application_id.rb @@ -0,0 +1,15 @@ +# frozen_string_literal: true + +class AddIndexToOauthAccessGrantsApplicationId < Gitlab::Database::Migration[2.1] + disable_ddl_transaction! + + INDEX_NAME = 'index_oauth_access_grants_on_application_id' + + def up + add_concurrent_index :oauth_access_grants, :application_id, name: INDEX_NAME + end + + def down + remove_concurrent_index_by_name :oauth_access_grants, name: INDEX_NAME + end +end diff --git a/db/schema_migrations/20230302163339 b/db/schema_migrations/20230302163339 new file mode 100644 index 00000000000..25c611e57a6 --- /dev/null +++ b/db/schema_migrations/20230302163339 @@ -0,0 +1 @@ +5cb36884c6422f9cf2db27c7922a8835b1db6d15e629066ca825c93df7437afa
\ No newline at end of file diff --git a/db/structure.sql b/db/structure.sql index 0055e2b3d8e..fdfe26e709b 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -31033,6 +31033,8 @@ CREATE INDEX index_ns_root_stor_stats_on_registry_size_estimated ON namespace_ro CREATE UNIQUE INDEX index_ns_user_callouts_feature ON user_namespace_callouts USING btree (user_id, feature_name, namespace_id); +CREATE INDEX index_oauth_access_grants_on_application_id ON oauth_access_grants USING btree (application_id); + CREATE INDEX index_oauth_access_grants_on_resource_owner_id ON oauth_access_grants USING btree (resource_owner_id, application_id, created_at); CREATE UNIQUE INDEX index_oauth_access_grants_on_token ON oauth_access_grants USING btree (token); diff --git a/doc/api/openapi/openapi.yaml b/doc/api/openapi/openapi.yaml index 9ee2b8119be..e090eab1e5d 100644 --- a/doc/api/openapi/openapi.yaml +++ b/doc/api/openapi/openapi.yaml @@ -20,7 +20,7 @@ info: The feature uses the current [GitLab session cookie](https://docs.gitlab.com/ee/api/index.html#session-cookie), so each request is made using your account. - Instructions for using this tool can be found in [Interactive API Documentation](openapi_interactive.md). + Instructions for using this tool can be found in [Interactive API Documentation](https://docs.gitlab.com/ee/api/openapi/openapi_interactive.html). version: v4 title: GitLab API diff --git a/doc/development/code_review.md b/doc/development/code_review.md index 0f169447ade..2457207823b 100644 --- a/doc/development/code_review.md +++ b/doc/development/code_review.md @@ -68,6 +68,9 @@ When a suitable [domain expert](#domain-experts) isn't available, you can choose To find a domain expert: +- In the Merge Request approvals widget, select [**View eligible approvers**](../user/project/merge_requests/approvals/rules.md#eligible-approvers). + This widget shows recommended and required approvals per area of the codebase. + These rules are defined in [Code Owners](../user/project/merge_requests/approvals/rules.md#code-owners-as-eligible-approvers). - View the list of team members who work in the [stage or group](https://about.gitlab.com/handbook/product/categories/#devops-stages) related to the merge request. - View team members' domain expertise on the [engineering projects](https://about.gitlab.com/handbook/engineering/projects/) page or on the [GitLab team page](https://about.gitlab.com/company/team/). Domains are self-identified, so use your judgment to map the changes on your merge request to a domain. - Look for team members who have contributed to the files in the merge request. View the logs by running `git log <file>`. diff --git a/spec/frontend/jobs/components/job/job_log_controllers_spec.js b/spec/frontend/jobs/components/job/job_log_controllers_spec.js index 5e9a73b4387..9917c63b2d0 100644 --- a/spec/frontend/jobs/components/job/job_log_controllers_spec.js +++ b/spec/frontend/jobs/components/job/job_log_controllers_spec.js @@ -285,6 +285,18 @@ describe('Job log controllers', () => { expect(findScrollFailure().props('disabled')).toBe(false); }); }); + + describe('on error', () => { + beforeEach(() => { + jest.spyOn(commonUtils, 'backOff').mockRejectedValueOnce(); + + createWrapper({}, { jobLogJumpToFailures: true }); + }); + + it('stays disabled', () => { + expect(findScrollFailure().props('disabled')).toBe(true); + }); + }); }); }); |