From 3fe9588b1c1c4fb58f8ba8e9c27244fc2fc1c103 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Wed, 30 Oct 2019 15:14:17 +0000 Subject: Add latest changes from gitlab-org/gitlab@master --- .gitlab/CODEOWNERS | 4 +- .gitlab/ci/review.gitlab-ci.yml | 1 + CHANGELOG-EE.md | 12 + CHANGELOG.md | 4 +- .../monitoring/components/charts/anomaly.vue | 227 +++++++++++++++ .../monitoring/components/charts/time_series.vue | 75 +++-- .../monitoring/components/panel_type.vue | 15 +- app/assets/javascripts/monitoring/constants.js | 15 + app/assets/javascripts/monitoring/utils.js | 16 ++ .../permissions/components/settings_panel.vue | 81 ++++-- .../repository/components/table/row.vue | 8 +- app/controllers/groups/group_links_controller.rb | 34 +++ app/models/concerns/worker_attributes.rb | 46 ++++ app/models/group.rb | 35 ++- app/models/group_group_link.rb | 23 ++ app/services/groups/group_links/create_service.rb | 29 ++ app/views/ci/variables/_header.html.haml | 2 +- app/workers/authorized_projects_worker.rb | 1 + app/workers/build_finished_worker.rb | 2 + app/workers/build_hooks_worker.rb | 1 + app/workers/build_queue_worker.rb | 2 + app/workers/build_success_worker.rb | 1 + app/workers/chat_notification_worker.rb | 5 + app/workers/ci/build_schedule_worker.rb | 1 + app/workers/cluster_install_app_worker.rb | 2 + app/workers/cluster_patch_app_worker.rb | 2 + app/workers/cluster_project_configure_worker.rb | 2 + app/workers/cluster_provision_worker.rb | 2 + app/workers/cluster_upgrade_app_worker.rb | 2 + .../cluster_wait_for_app_installation_worker.rb | 3 + .../cluster_wait_for_ingress_ip_address_worker.rb | 2 + .../clusters/applications/uninstall_worker.rb | 2 + .../applications/wait_for_uninstall_app_worker.rb | 3 + .../gitlab/github_import/object_importer.rb | 1 + app/workers/create_pipeline_worker.rb | 2 + app/workers/deployments/finished_worker.rb | 1 + app/workers/deployments/success_worker.rb | 1 + app/workers/email_receiver_worker.rb | 1 + app/workers/emails_on_push_worker.rb | 2 + app/workers/expire_job_cache_worker.rb | 1 + app/workers/expire_pipeline_cache_worker.rb | 2 + app/workers/gitlab_shell_worker.rb | 1 + app/workers/import_issues_csv_worker.rb | 1 + .../mail_scheduler/notification_service_worker.rb | 1 + app/workers/merge_worker.rb | 1 + .../prune_aggregation_schedules_worker.rb | 1 + app/workers/new_issue_worker.rb | 2 + app/workers/new_merge_request_worker.rb | 2 + app/workers/new_note_worker.rb | 2 + app/workers/object_pool/join_worker.rb | 2 + app/workers/pages_domain_removal_cron_worker.rb | 1 + app/workers/pipeline_hooks_worker.rb | 2 + app/workers/pipeline_metrics_worker.rb | 2 + app/workers/pipeline_notification_worker.rb | 3 + app/workers/pipeline_process_worker.rb | 1 + app/workers/pipeline_schedule_worker.rb | 1 + app/workers/pipeline_success_worker.rb | 1 + app/workers/pipeline_update_worker.rb | 1 + app/workers/post_receive.rb | 2 + app/workers/process_commit_worker.rb | 1 + app/workers/project_cache_worker.rb | 3 + app/workers/project_export_worker.rb | 1 + app/workers/project_service_worker.rb | 1 + app/workers/reactive_caching_worker.rb | 8 + app/workers/remove_expired_members_worker.rb | 1 + app/workers/repository_import_worker.rb | 1 + .../repository_update_remote_mirror_worker.rb | 2 + app/workers/stage_update_worker.rb | 1 + app/workers/stuck_ci_jobs_worker.rb | 1 + app/workers/stuck_import_jobs_worker.rb | 1 + ...pdate_head_pipeline_for_merge_request_worker.rb | 2 + app/workers/update_merge_requests_worker.rb | 2 + app/workers/wait_for_cluster_creation_worker.rb | 2 + app/workers/web_hook_worker.rb | 2 + ...ting-accidental-project-deletion-db-changes.yml | 5 + .../unreleased/33054-share_groups_with_groups.yml | 5 + ...nomaly-deviation-boundaries-on-dashboard-ce.yml | 5 + .../add-missing-bottom-padding-in-settings.yml | 5 + .../an-mark-jobs-as-latency-sensitive.yml | 5 + .../security-open-redirect-internalredirect.yml | 5 - ...ccess-levels-on-project-group-link-deletion.yml | 5 + config/routes/group.rb | 2 + .../20180902070406_create_group_group_links.rb | 32 +++ ...1003161031_add_mark_for_deletion_to_projects.rb | 11 + ...32_add_mark_for_deletion_indexes_to_projects.rb | 19 ++ ...ion_adjourned_period_to_application_settings.rb | 11 + ...180443_schedule_epic_issues_after_epics_move.rb | 35 +++ db/schema.rb | 18 ++ doc/development/code_review.md | 2 +- doc/development/sidekiq_style_guide.md | 228 +++++++++++++++- doc/topics/autodevops/index.md | 1 - .../dependency_scanning/index.md | 20 +- lib/gitlab/import_export/import_export.yml | 2 + lib/gitlab/project_authorizations.rb | 30 +- locale/gitlab.pot | 99 ++++++- scripts/review_apps/review-apps.sh | 21 +- .../groups/group_links_controller_spec.rb | 114 ++++++++ spec/factories/group_group_links.rb | 9 + .../monitoring/components/charts/anomaly_spec.js | 303 +++++++++++++++++++++ spec/frontend/monitoring/mock_data.js | 161 +++++++++++ .../repository/components/table/row_spec.js | 2 +- .../monitoring/charts/time_series_spec.js | 42 ++- spec/javascripts/monitoring/mock_data.js | 6 +- spec/javascripts/monitoring/panel_type_spec.js | 31 ++- spec/javascripts/monitoring/utils_spec.js | 38 ++- spec/lib/gitlab/import_export/all_models.yml | 1 + spec/lib/gitlab/project_authorizations_spec.rb | 167 ++++++++++-- spec/models/group_group_link_spec.rb | 36 +++ spec/models/group_spec.rb | 122 +++++++++ spec/requests/api/members_spec.rb | 12 +- .../groups/group_links/create_service_spec.rb | 119 ++++++++ spec/workers/every_sidekiq_worker_spec.rb | 37 ++- 112 files changed, 2337 insertions(+), 156 deletions(-) create mode 100644 app/assets/javascripts/monitoring/components/charts/anomaly.vue create mode 100644 app/controllers/groups/group_links_controller.rb create mode 100644 app/models/group_group_link.rb create mode 100644 app/services/groups/group_links/create_service.rb create mode 100644 changelogs/unreleased/32935-preventing-accidental-project-deletion-db-changes.yml create mode 100644 changelogs/unreleased/33054-share_groups_with_groups.yml create mode 100644 changelogs/unreleased/5366-display-anomaly-deviation-boundaries-on-dashboard-ce.yml create mode 100644 changelogs/unreleased/add-missing-bottom-padding-in-settings.yml create mode 100644 changelogs/unreleased/an-mark-jobs-as-latency-sensitive.yml delete mode 100644 changelogs/unreleased/security-open-redirect-internalredirect.yml create mode 100644 changelogs/unreleased/security-remove-deploy-access-levels-on-project-group-link-deletion.yml create mode 100644 db/migrate/20180902070406_create_group_group_links.rb create mode 100644 db/migrate/20191003161031_add_mark_for_deletion_to_projects.rb create mode 100644 db/migrate/20191003161032_add_mark_for_deletion_indexes_to_projects.rb create mode 100644 db/migrate/20191011084019_add_project_deletion_adjourned_period_to_application_settings.rb create mode 100644 db/post_migrate/20190926180443_schedule_epic_issues_after_epics_move.rb create mode 100644 spec/controllers/groups/group_links_controller_spec.rb create mode 100644 spec/factories/group_group_links.rb create mode 100644 spec/frontend/monitoring/components/charts/anomaly_spec.js create mode 100644 spec/frontend/monitoring/mock_data.js create mode 100644 spec/models/group_group_link_spec.rb create mode 100644 spec/services/groups/group_links/create_service_spec.rb diff --git a/.gitlab/CODEOWNERS b/.gitlab/CODEOWNERS index ddfdf72cf99..61653d798a9 100644 --- a/.gitlab/CODEOWNERS +++ b/.gitlab/CODEOWNERS @@ -6,8 +6,8 @@ /doc/ @axil @marcia @eread @mikelewis # Frontend maintainers should see everything in `app/assets/` -app/assets/ @ClemMakesApps @fatihacet @filipa @mikegreiling @timzallmann @kushalpandya @pslaughter @wortschi @ntepluhina -*.scss @annabeldunstone @ClemMakesApps @fatihacet @filipa @mikegreiling @timzallmann @kushalpandya @pslaughter @wortschi @ntepluhina +app/assets/ @ClemMakesApps @fatihacet @filipa @mikegreiling @timzallmann @kushalpandya @pslaughter @wortschi @ntepluhina @iamphill +*.scss @annabeldunstone @ClemMakesApps @fatihacet @filipa @mikegreiling @timzallmann @kushalpandya @pslaughter @wortschi @ntepluhina @iamphill # Database maintainers should review changes in `db/` db/ @gitlab-org/maintainers/database diff --git a/.gitlab/ci/review.gitlab-ci.yml b/.gitlab/ci/review.gitlab-ci.yml index 2ab492c16b2..a71c4ea2f1d 100644 --- a/.gitlab/ci/review.gitlab-ci.yml +++ b/.gitlab/ci/review.gitlab-ci.yml @@ -122,6 +122,7 @@ schedule:review-build-cng: - source scripts/utils.sh - install_api_client_dependencies_with_apk - source scripts/review_apps/review-apps.sh + - export REVIEW_APP_CONFIG_CHANGED=$(base_config_changed) script: - date - check_kube_domain diff --git a/CHANGELOG-EE.md b/CHANGELOG-EE.md index b939be178be..cd501f8583a 100644 --- a/CHANGELOG-EE.md +++ b/CHANGELOG-EE.md @@ -1,5 +1,17 @@ Please view this file on the master branch, on stable branches it's out of date. +## 12.4.1 + +### Security (6 changes) + +- Do not display project labels that are not visible for user accessing group labels. +- Do not index system notes for issue update. +- Redact search results based on Ability.allowed?. +- Do not show private cross references in epic notes. +- Filter out packages the user does'nt have permission to see at group level. +- Fixes a Open Redirect issue in `InternalRedirect`. + + ## 12.4.0 ### Security (2 changes) diff --git a/CHANGELOG.md b/CHANGELOG.md index 16a36724b4f..64f7957860c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,11 +4,12 @@ entry. ## 12.4.1 -### Security (12 changes) +### Security (14 changes) - Standardize error response when route is missing. - Do not display project labels that are not visible for user accessing group labels. - Show cross-referenced label and milestones in issues' activities only to authorized users. +- Show cross-referenced label and milestones in issues' activities only to authorized users. - Analyze incoming GraphQL queries and check for recursion. - Disallow unprivileged users from commenting on private repository commits. - Don't allow maintainers of a target project to delete the source branch of a merge request from a fork. @@ -17,6 +18,7 @@ entry. - Return 404 on LFS request if project doesn't exist. - Mask sentry auth token in Error Tracking dashboard. - Fixes a Open Redirect issue in `InternalRedirect`. +- Remove deploy access level when project/group link is deleted. - Sanitize all wiki markup formats with GitLab sanitization pipelines. diff --git a/app/assets/javascripts/monitoring/components/charts/anomaly.vue b/app/assets/javascripts/monitoring/components/charts/anomaly.vue new file mode 100644 index 00000000000..8eeac737a11 --- /dev/null +++ b/app/assets/javascripts/monitoring/components/charts/anomaly.vue @@ -0,0 +1,227 @@ + + + diff --git a/app/assets/javascripts/monitoring/components/charts/time_series.vue b/app/assets/javascripts/monitoring/components/charts/time_series.vue index 434debb67f5..6a88c8a5ee3 100644 --- a/app/assets/javascripts/monitoring/components/charts/time_series.vue +++ b/app/assets/javascripts/monitoring/components/charts/time_series.vue @@ -1,12 +1,20 @@