1. 23 Feb, 2018 25 commits
    • Pawel Chojnacki's avatar
    • Pawel Chojnacki's avatar
      Squashed commit of the following: · 57de968a
      Pawel Chojnacki authored
      commit 22e1cb8f4b98f71d21026f69aa3e68d79946d6ae
      Merge: 766a42a9639 e966c6ae
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Fri Feb 23 21:30:46 2018 +0100
      
          Merge remote-tracking branch 'upstream/master' into 38783-add-cluster-metrics.yml
      
          # Conflicts:
          #	app/controllers/projects/prometheus/metrics_controller.rb
          #	app/controllers/projects/prometheus_controller.rb
          #	app/models/project_services/prometheus_service.rb
          #	lib/gitlab/prometheus/queries/query_additional_metrics.rb
          #	spec/controllers/projects/prometheus/metrics_controller_spec.rb
          #	spec/models/project_services/prometheus_service_spec.rb
      
      commit 766a42a96393f502d439c1f0beb0b6cfb2c228d4
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Fri Feb 23 17:58:45 2018 +0100
      
          Move prometheus adapter to app/models/concerns
      
      commit ca84eed49811cf3064a2e5ea611af1c947c590d7
      Merge: 66702099586 cb504cedc2a
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Fri Feb 23 15:36:03 2018 +0100
      
          Merge remote-tracking branch 'upstream/backport_custom_metrics_ce_components' into 38783-add-cluster-metrics.yml
      
          + fix failing tests
      
          # Conflicts:
          #	app/controllers/projects/prometheus_controller.rb
          #	app/models/project_services/prometheus_service.rb
          #	lib/gitlab/prometheus/queries/query_additional_metrics.rb
          #	spec/models/project_services/prometheus_service_spec.rb
      
      commit cb504cedc2a6e353ffb56833334681e3da09fc14
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Fri Feb 23 14:46:15 2018 +0100
      
          Fix prometheus_service found by find_or_initialize_service
      
      commit 928b84c72c2c4c46e1785b9a943c1822a137de16
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Thu Feb 22 23:15:11 2018 +0100
      
          additional metrics and backported tests
      
      commit 41291383b4b6976af94eaf9e1a7b2e2a172310e7
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Thu Feb 22 21:57:45 2018 +0100
      
          Introduce Metrics controller and retire prometheus controller
      
      commit 6e7492e4c7ffa9d8621f09198071bc14be875976
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Thu Feb 22 21:46:37 2018 +0100
      
          Backport PrometheusClient::Error and all->common_metrics rename
      
      commit 66702099586c864a7f78970a0ee0dd9f3c2beeef
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Thu Feb 22 20:23:03 2018 +0100
      
          fix failing tests
      
      commit ce921ea723cde61b2441ba98c9aca97606c719c8
      Author: Mike Greiling <mike@pixelcog.com>
      Date:   Wed Feb 21 23:47:30 2018 -0600
      
          add labels to cluster metrics
      
      commit 993830c6892e4fbf53d3f72da00002d642c7e9b2
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Thu Feb 22 01:20:49 2018 +0100
      
          Fix formatting probelms and few small tests
      
      commit 66ee65d8e3f747c90d986bc3056178422156bc8e
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Thu Feb 22 01:08:03 2018 +0100
      
          stop using in deployment tests environment.id
      
      commit 62c91978d15f0369988521363dae24bd7510d68d
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Thu Feb 22 01:06:33 2018 +0100
      
          fix prometheus_controller and adapter tests
      
      commit 977b1d34c1d03c7233582e8328f85caf634895ed
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Thu Feb 22 00:19:39 2018 +0100
      
          finish up active? -> can_query? rename
      
      commit e614f7daee58a9758d83ba3efe1649c8b80bc1e2
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Wed Feb 21 23:51:33 2018 +0100
      
          deployment prometheus adapter tests fix
      
      commit ebd726c114a6026fef0adf3eba6ee1972530148a
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Wed Feb 21 21:40:40 2018 +0100
      
          Move environment dependant tests to environment
      
      commit 6d31311cd3729c29233283dded70e03a4a9a3c97
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Wed Feb 21 20:40:24 2018 +0100
      
          update monitoring service and move adding dpeloyment_time to deployment model
      
      commit 60b6bf391ab36846dce122bc6b0c5196a186267c
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Wed Feb 21 20:15:46 2018 +0100
      
          adjust deployment spec and prometheus specs
      
      commit 6681662cf1c028aff2ff94aa0501732cb7119ba1
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Tue Feb 20 22:30:20 2018 +0100
      
          Revert changes to reactive caching
      
      commit e282f86c45a056889f57d3f7fd23a81c88efff6a
      Merge: 5751c73df59 6844a2df
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Tue Feb 20 22:08:17 2018 +0100
      
          Merge remote-tracking branch 'upstream/master' into 38783-add-cluster-metrics.yml
      
      commit 5751c73df59d0a03840a1b4b71b0637670f971a6
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Tue Feb 20 22:07:43 2018 +0100
      
          rename active? to can_query? and cleanup environment prometheus router
      
      commit 3f3c6e1d33dcd9315979daf26a95f2aab83a7de9
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Tue Feb 20 21:51:43 2018 +0100
      
          Fix tests, and only use prometheus service if its active
      
      commit 6345838bac584c213b665d334252ccab202cb271
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Tue Feb 20 16:24:27 2018 +0100
      
          Fix typo
      
      commit 7a585d32afe8da050b5615b1d036a550e06479f5
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Tue Feb 20 15:29:40 2018 +0100
      
          Cluster id is not required
      
      commit e6af62afb11fa380f6aff1c31a81bcc9bab3b1eb
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Tue Feb 20 15:15:46 2018 +0100
      
          Result transformation support
      
      commit f3b1bd7c67894f44efe33591ddb70093bd620c03
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Tue Feb 20 15:07:07 2018 +0100
      
          Fix rubocop warning and exten cluster query timeframe
      
      commit be77947cea64261a4d3dead33c3c57f413a9880c
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Tue Feb 20 14:42:47 2018 +0100
      
          Fix additional metrics test
      
      commit eb3922e16221abe16f59fae1c38122f227643343
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Tue Feb 20 14:34:44 2018 +0100
      
          rename prometheus adapter methods
      
      commit 045476cd08b21593818b274ae8a44d19b705523f
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Tue Feb 20 13:19:36 2018 +0100
      
          Make prometheus adapter a module
      
      commit f2daf050d8c689f72c4c61207930bc53c331f12e
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Tue Feb 20 12:00:44 2018 +0100
      
          refactoring wip
      
      commit 52e4ef5587794e811dc10a0f2dca522342a865da
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Sun Feb 18 20:25:55 2018 +0100
      
          cleanup prometheus adapter concept
      
      commit 3887365faab9dfcd9c00bcfc501d09ac62431a03
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Sun Feb 18 19:22:11 2018 +0100
      
          Refactor out deployment id, Rename PrometheusQuerier to PrometheusAdapter
      
      commit aa2fc2df57bd72c9a5e94f66d1f1e23990be6c3f
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Fri Feb 16 23:59:54 2018 +0100
      
          Refactor prometheus client
      
      commit e43c1ca9d9874d6cf1569f40fa1aca158d9d5d91
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Thu Feb 15 20:24:45 2018 +0100
      
          Use initial version of cluster_metrics.yml
      
      commit 867821ce0b2609ebf8994220aa8e3a94d66a01e0
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Thu Feb 15 05:24:14 2018 +0100
      
          Fix querying cluster metrics
      
      commit 1601e002a064cbb10ffe110a19433c5662858f1d
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Thu Feb 15 04:49:03 2018 +0100
      
          Queues for unicersal querier
      
      commit 5db198fdc925c0223be24939b76da1d544dd569c
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Thu Feb 15 03:35:17 2018 +0100
      
          refactor reactive caching and prometheus querying
      
      commit b0fc00e8c9d21e961ef44b0129103e2a62928b52
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Thu Feb 15 00:12:03 2018 +0100
      
          Add generic query additional metrics
      
      commit ffe76e6a9ba196bccff22c4880e0384959ad5e48
      Author: Pawel Chojnacki <pawel@chojnacki.ws>
      Date:   Tue Feb 13 15:40:15 2018 +0100
      
          Cluster Metric yml initial
      
      + Remove cluster query
      
      + remove cluster_metrics.yml
      
      + Prometheus adapter tests
      57de968a
    • Paweł Chojnacki's avatar
      Backport custom metrics ce components · 0e97eca1
      Paweł Chojnacki authored
      0e97eca1
    • Robert Speicher's avatar
      Merge branch '29497-pages-custom-domain-dns-verification' into 'master' · 53d7491a
      Robert Speicher authored
      Resolve "Domain validation for Pages custom domains" (master branch)
      
      Closes #29497, #42971, and #42083
      
      See merge request gitlab-org/gitlab-ce!17311
      53d7491a
    • Filipa Lacerda's avatar
      Merge branch '42044-osw-add-button-to-deploy-runner-to-kubernetes' into 'master' · dda2394f
      Filipa Lacerda authored
      Add a button to deploy a runner to a Kubernetes cluster in the settings page
      
      Closes #42044
      
      See merge request gitlab-org/gitlab-ce!17278
      dda2394f
    • Jacob Schatz's avatar
      Merge branch 'docs-fix-empty-line' into 'master' · c0c8250f
      Jacob Schatz authored
      Add missing empty line at the end of file
      
      See merge request gitlab-org/gitlab-ce!17303
      c0c8250f
    • Mike Greiling's avatar
      Merge branch 'dispatcher-if' into 'master' · 9c498d39
      Mike Greiling authored
      Convert switch into if statement
      
      See merge request gitlab-org/gitlab-ce!17304
      9c498d39
    • Robert Speicher's avatar
      Merge branch 'master' into '29497-pages-custom-domain-dns-verification' · 3540841b
      Robert Speicher authored
      # Conflicts:
      #   db/schema.rb
      3540841b
    • Sean McGivern's avatar
      Merge branch 'dm-stuck-import-jobs-verify' into 'master' · 52c56400
      Sean McGivern authored
      Verify project import status again before marking as failed
      
      Closes #43539
      
      See merge request gitlab-org/gitlab-ce!17319
      52c56400
    • Oswaldo Ferreira's avatar
    • Kamil Trzciński's avatar
      Merge branch '43496-error-message-for-gke-clusters-persists-in-the-next-page' into 'master' · 92ac835a
      Kamil Trzciński authored
      Resolve "Error message for GKE clusters persists in the next page"
      
      Closes #43496
      
      See merge request gitlab-org/gitlab-ce!17299
      92ac835a
    • Douwe Maan's avatar
      7c161e8b
    • Douwe Maan's avatar
      43a359ab
    • Tiago Botelho's avatar
    • Douwe Maan's avatar
      Merge branch '42545-milestion-quick-actions-for-groups' into 'master' · 8c310424
      Douwe Maan authored
      Resolve "Milestone Quick Action not displayed with no project milestones but with group milestones"
      
      Closes #42545
      
      See merge request gitlab-org/gitlab-ce!17239
      8c310424
    • 🙈  jacopo beschi 🙉's avatar
    • Douwe Maan's avatar
      Merge branch 'users-autocomplete' into 'master' · bb0fe96f
      Douwe Maan authored
      Improve performance of searching for and auto completing of users
      
      See merge request gitlab-org/gitlab-ce!17158
      bb0fe96f
    • Nick Thomas's avatar
      d600a6ef
    • Nick Thomas's avatar
      Add DNS verification to Pages custom domains · ee68bd97
      Nick Thomas authored
      ee68bd97
    • Nick Thomas's avatar
      Merge branch 'dm-go-get-api-token' into 'master' · 58a312f5
      Nick Thomas authored
      Allow token authentication on go-get request
      
      Closes #42817
      
      See merge request gitlab-org/gitlab-ce!17148
      58a312f5
    • Douwe Maan's avatar
      Allow token authentication on go-get request · 7a6c7bd6
      Douwe Maan authored
      7a6c7bd6
    • Phil Hughes's avatar
      Merge branch '43261-fix-import-from-url-name-collision-active-tab' into 'master' · 981b5905
      Phil Hughes authored
      Keep "Import project" tab/form active when validation fails trying to import  "Repo by URL"
      
      Closes #43261
      
      See merge request gitlab-org/gitlab-ce!17136
      981b5905
    • Douwe Maan's avatar
      Merge branch 'bvl-external-auth-port' into 'master' · f4bc6ec9
      Douwe Maan authored
      Port `read_cross_project` ability from EE
      
      See merge request gitlab-org/gitlab-ce!17208
      f4bc6ec9
    • Phil Hughes's avatar
      Merge branch '42938-add-tip-push-to-create' into 'master' · 0a8aebcb
      Phil Hughes authored
      Add Tip about Push to Create project on New Project page
      
      Closes #42938
      
      See merge request gitlab-org/gitlab-ce!17154
      0a8aebcb
    • André Luís's avatar
      da531c39
  2. 22 Feb, 2018 15 commits
    • Kamil Trzciński's avatar
      Merge branch '41619-turn-on-legacy-authorization-for-new-clusters-on-gke' into 'master' · 7834f63c
      Kamil Trzciński authored
      Enable "Legacy Authorization" by default when creating a Cluster on GCP
      
      Closes #41619
      
      See merge request gitlab-org/gitlab-ce!17302
      7834f63c
    • Matija Čupić's avatar
      Add CHANGELOG entry · 99cd4acf
      Matija Čupić authored
      99cd4acf
    • Matija Čupić's avatar
    • Rémy Coutable's avatar
      Merge branch '42431-add-auto-devops-and-clusters-button-to-projects' into 'master' · e037854a
      Rémy Coutable authored
      Add a button on the project page to set up a Kubernetes cluster and enable  Auto DevOps
      
      Closes #42431
      
      See merge request gitlab-org/gitlab-ce!16900
      e037854a
    • Clement Ho's avatar
      Convert switch into if statement · ac3b6f14
      Clement Ho authored
      ac3b6f14
    • Clement Ho's avatar
      Merge branch 'ui-bundle-tag-remove' into 'master' · 20aaed90
      Clement Ho authored
      Remove bundle tag for ui help
      
      Closes #41341
      
      See merge request gitlab-org/gitlab-ce!17301
      20aaed90
    • Clement Ho's avatar
      Add missing empty line at the end of file · 9cf505eb
      Clement Ho authored
      9cf505eb
    • Mayra Cabrera's avatar
      Modify cluster creation API method to enable legacy_apac as default · 14978ddc
      Mayra Cabrera authored
      GKE 1.8 has RBAC on by default, since GKE has bumped the default version
      to 1.8.7 RBAC is now on, and we don't support that out of the box.
      
      This was also avoiding cluster applications (tiller, prometheus, etc), to
      be installed.
      
      Closes #41619
      14978ddc
    • Jacob Schatz's avatar
      Remove bundle tag for ui help · 280e2c1e
      Jacob Schatz authored
      280e2c1e
    • Kamil Trzciński's avatar
      Merge branch '43373-fix-cache-index-appending' into 'master' · 6ce56d45
      Kamil Trzciński authored
      Resolve "cache key for CI stopped working"
      
      Closes #43373
      
      See merge request gitlab-org/gitlab-ce!17260
      6ce56d45
    • Ian Baum's avatar
      Update CHANGELOG.md for 10.5.1 · 8a072a30
      Ian Baum authored
      [ci skip]
      8a072a30
    • Yorick Peterse's avatar
      090eeb58
    • Yorick Peterse's avatar
      Optimise searching for users using short queries · 41bfe82b
      Yorick Peterse authored
      This optimises searching for users when using queries consisting out of
      one or two characters such as "ab". We optimise such cases by searching
      for `LOWER(name)` and `LOWER(username)` instead of using `ILIKE`. Using
      `LOWER` produces a _much_ better performing query.
      
      For example, when searching for all users matching the term "a" we'd
      produce the following plan:
      
           Limit  (cost=637.69..637.74 rows=20 width=805) (actual time=41.983..41.995 rows=20 loops=1)
             Buffers: shared hit=8330
             ->  Sort  (cost=637.69..638.61 rows=368 width=805) (actual time=41.982..41.990 rows=20 loops=1)
                   Sort Key: (CASE WHEN ((name)::text = 'a'::text) THEN 0 WHEN ((username)::text = 'a'::text) THEN 1 WHEN ((email)::text = 'a'::text) THEN 2 ELSE 3 END), name
                   Sort Method: top-N heapsort  Memory: 35kB
                   Buffers: shared hit=8330
                   ->  Bitmap Heap Scan on users  (cost=75.47..627.89 rows=368 width=805) (actual time=9.452..41.305 rows=277 loops=1)
                         Recheck Cond: (((name)::text ~~* 'a'::text) OR ((username)::text ~~* 'a'::text) OR ((email)::text = 'a'::text))
                         Rows Removed by Index Recheck: 7601
                         Heap Blocks: exact=7636
                         Buffers: shared hit=8327
                         ->  BitmapOr  (cost=75.47..75.47 rows=368 width=0) (actual time=8.290..8.290 rows=0 loops=1)
                               Buffers: shared hit=691
                               ->  Bitmap Index Scan on index_users_on_name_trigram  (cost=0.00..38.85 rows=180 width=0) (actual time=4.369..4.369 rows=4071 loops=1)
                                     Index Cond: ((name)::text ~~* 'a'::text)
                                     Buffers: shared hit=360
                               ->  Bitmap Index Scan on index_users_on_username_trigram  (cost=0.00..34.41 rows=188 width=0) (actual time=3.896..3.896 rows=4140 loops=1)
                                     Index Cond: ((username)::text ~~* 'a'::text)
                                     Buffers: shared hit=328
                               ->  Bitmap Index Scan on users_email_key  (cost=0.00..1.94 rows=1 width=0) (actual time=0.022..0.022 rows=0 loops=1)
                                     Index Cond: ((email)::text = 'a'::text)
                                     Buffers: shared hit=3
           Planning time: 3.912 ms
           Execution time: 42.171 ms
      
      With the changes in this commit we now produce the following plan
      instead:
      
           Limit  (cost=13257.48..13257.53 rows=20 width=805) (actual time=1.567..1.579 rows=20 loops=1)
             Buffers: shared hit=287
             ->  Sort  (cost=13257.48..13280.93 rows=9379 width=805) (actual time=1.567..1.572 rows=20 loops=1)
                   Sort Key: (CASE WHEN ((name)::text = 'a'::text) THEN 0 WHEN ((username)::text = 'a'::text) THEN 1 WHEN ((email)::text = 'a'::text) THEN 2 ELSE 3 END), name
                   Sort Method: top-N heapsort  Memory: 35kB
                   Buffers: shared hit=287
                   ->  Bitmap Heap Scan on users  (cost=135.66..13007.91 rows=9379 width=805) (actual time=0.194..1.107 rows=277 loops=1)
                         Recheck Cond: ((lower((name)::text) = 'a'::text) OR (lower((username)::text) = 'a'::text) OR ((email)::text = 'a'::text))
                         Heap Blocks: exact=277
                         Buffers: shared hit=287
                         ->  BitmapOr  (cost=135.66..135.66 rows=9379 width=0) (actual time=0.152..0.152 rows=0 loops=1)
                               Buffers: shared hit=10
                               ->  Bitmap Index Scan on yorick_test_users  (cost=0.00..124.75 rows=9377 width=0) (actual time=0.101..0.101 rows=277 loops=1)
                                     Index Cond: (lower((name)::text) = 'a'::text)
                                     Buffers: shared hit=4
                               ->  Bitmap Index Scan on index_on_users_lower_username  (cost=0.00..1.94 rows=1 width=0) (actual time=0.035..0.035 rows=1 loops=1)
                                     Index Cond: (lower((username)::text) = 'a'::text)
                                     Buffers: shared hit=3
                               ->  Bitmap Index Scan on users_email_key  (cost=0.00..1.94 rows=1 width=0) (actual time=0.014..0.014 rows=0 loops=1)
                                     Index Cond: ((email)::text = 'a'::text)
                                     Buffers: shared hit=3
           Planning time: 0.303 ms
           Execution time: 1.687 ms
      
      Here we can see the new query is 25 times faster compared to the old
      query.
      41bfe82b
    • Yorick Peterse's avatar
      Removed pagination from AutocompleteUsersFinder · d2e43fbd
      Yorick Peterse authored
      The frontend code doesn't use this so there's no practical point in
      supporting this. We also hardcode the limit to 20 so users can no longer
      request their own limit, which could overload the database (depending on
      any upper bounds perhaps enforced by Kaminari).
      d2e43fbd
    • Yorick Peterse's avatar
      Don't pluck IDs in AutocompleteUsersFinder · dd52915d
      Yorick Peterse authored
      We can instead just use a UNION. This removes the need for plucking
      hundreds if not thousands of IDs into memory when a project has many
      members.
      dd52915d