1. 18 Jul, 2019 1 commit
  2. 13 Jul, 2019 1 commit
  3. 11 Jul, 2019 3 commits
    • Luke Bennett's avatar
      Port EE analytics route · 04af424b
      Luke Bennett authored
    • Patrick Derichs's avatar
      Add endpoint to move multiple issues · 69e02904
      Patrick Derichs authored
      Add specs for new endpoint to move multiple issues.
      Add changelog entry
      Just check the first issue for the ability to move / update
      Add specs for exceeding limits and malformed requests
      Changed name of shared examples
      Change title of changelog entry
      Use %i instead of %w
      Check permission to update issue on project instead of board
      Use admin_issue permission to check for issue move ability
      Changed variable name to avoid shadow issue_params method
      Rename route to bulk_move
      Change route definition
      Check permissions for each issue
      Combine methods for parameters permit check
      Remove extra context
      Change description of context
      Check param for type Array
      Add unit tests to MoveService
      Use before_action for permission check
      Use set instead of let!
      Use let's instead of set
    • Kamil Trzciński's avatar
  4. 26 Jun, 2019 2 commits
  5. 06 Jun, 2019 1 commit
    • Vladimir Shushlin's avatar
      Add pages domains acme orders · c3338c92
      Vladimir Shushlin authored
      Extract acme double to helper
      Create ACME challanges for pages domains
      * Create order & challange through API
      * save them to database
      * request challenge validation
      We're saving order and challenge as one entity,
      that wouldn't be correct if we would order certificates for
      several domains simultaneously, but we always order certificate
      per domain
      Add controller for processing acme challenges redirected from pages
      Don't save acme challenge url - we don't use it
      Validate acme challenge attributes
      Encrypt private_key in acme orders
  6. 30 Apr, 2019 1 commit
  7. 09 Mar, 2019 1 commit
  8. 05 Mar, 2019 1 commit
    • João Cunha's avatar
      Creates Clusterss::ApplciationsController update endpoint · f8234d9a
      João Cunha authored
      - Creates new route
      - Creates new controller action
      - Creates call stack:
        Clusterss::ApplciationsController calls -->
        Clusters::Applications::UpdateService calls -->
        Clusters::Applications::ScheduleUpdateService calls -->
        ClusterUpdateAppWorker calls -->
        Clusters::Applications::PatchService -->
      DRY req params
      Adds gcp_cluster:cluster_update_app queue
      Schedule_update_service is uneeded
      Extract common logic to a parent class (UpdateService will need it)
      Introduce new UpdateService
      Fix rescue class namespace
      Fix RuboCop offenses
      Adds BaseService for create and update services
      Remove request_handler code duplication
      Fixes update command
      Move update_command to ApplicationCore so all apps can use it
      Adds tests for Knative update_command
      Adds specs for PatchService
      Raise error if update receives an unistalled app
      Adds update_service spec
      Fix RuboCop offense
      Use subject in favor of go
      Adds update endpoint specs for project namespace
      Adds update endpoint specs for group namespace
  9. 01 Nov, 2018 6 commits
    • Andrew Newdigate's avatar
      Add documentation, secure routes, etc · 847c81b7
      Andrew Newdigate authored
    • Andrew Newdigate's avatar
    • Andrew Newdigate's avatar
    • Thong Kuah's avatar
      Resolve controller sharing concern · 1a1fdf8e
      Thong Kuah authored
      Use ClustersController as base while having Projects::ClustersController
      to inform what `clusterable` is. Thanks @ayufan for the great suggestion
      - View changes to work with new approach
      - Fix javascript for new approach
      - Fix feature specs for new approach
      - Fix QA
    • Thong Kuah's avatar
      Abstract out project out of ClustersController · 88800abc
      Thong Kuah authored
      To the extent possible swap out `project` with `clusterable`
      - Abstract paths for showing cluster or clusters. This will allow us to
      swap in alternative paths for group level cluster
      - Push :project_id and :namespace_id params from the URL to the POST
      - Create a nice helper for to generate links for the destroy
      For some reason, spec :project_id and :namespace_id param are not going
      through `to_param` for a JSON format. Manually call `to_param` to fix
      - Move :layout to BaseController
    • Thong Kuah's avatar
      Convert clusters to use a top-level controller · 5b3c096c
      Thong Kuah authored
      In preparation so that we can create both cluster attached to project
      and cluster attached to group.
      - Move ClustersController to top level
      - Move Clusters::ApplicationsController to top-level too
      - Creates a Clusters::BaseController to share common functions
      - Do not rely on @Project ivar. Anything could set the ivar.
      - Fix Vue page components due to new data-page value
      Because of the controller change we have gone from
      `projects:clusters:new` to `clusters:new`, so we need to update the file
      location of the page components. There is somewhere a function that will
      convert data-page to a file location.
      On that note, projects/clusters/gcp/new/, translate to
      Projects::Clusters::Gcp#new doesn't exist so replace that with
      clusters/create_gcp/ and clusters/create_user/
  10. 27 Oct, 2018 1 commit
  11. 26 Oct, 2018 1 commit
  12. 13 Oct, 2018 1 commit
  13. 10 Oct, 2018 1 commit
    • Zeger-Jan van de Weg's avatar
      Remove Git circuit breaker · 30b4ce94
      Zeger-Jan van de Weg authored
      Was introduced in the time that GitLab still used NFS, which is not
      required anymore in most cases. By removing this, the API it calls will
      return empty responses. This interface has to be removed in the next
      major release, expected to be 12.0.
  14. 12 Sep, 2018 1 commit
  15. 21 Aug, 2018 1 commit
  16. 28 Jul, 2018 2 commits
  17. 27 Jul, 2018 3 commits
  18. 26 Jul, 2018 2 commits
  19. 18 Jun, 2018 1 commit
  20. 20 Mar, 2018 1 commit
  21. 19 Mar, 2018 1 commit
    • Sean McGivern's avatar
      Show Ajax requests in performance bar · a200619d
      Sean McGivern authored
      But first, rewrite the performance bar in Vue:
      1. Remove the peek-host gem and replace it with existing code. This also allows
         us to include the host in the JSON response, rather than in the page HTML.
      2. Leave the line profiler parts as here-be-dragons: nicer would be a separate
         endpoint for these, so we could use them on Ajax requests too.
      3. The performance bar is too fiddly to rewrite right now, so apply the same
         logic to that.
      Then, add features! All requests made through Axios are able to be tracked. To
      keep a lid on memory usage, only the first two requests for a given URL are
      tracked, though. Each request that's tracked has the same data as the initial
      page load, with the exception of the performance bar and the line profiler, as
      explained above.
  22. 02 Mar, 2018 1 commit
  23. 02 Feb, 2018 2 commits
  24. 27 Jan, 2018 1 commit
  25. 26 Jan, 2018 1 commit
  26. 21 Dec, 2017 1 commit
  27. 08 Dec, 2017 1 commit
    • Bob Van Landuyt's avatar
      Move the circuitbreaker check out in a separate process · f1ae1e39
      Bob Van Landuyt authored
      Moving the check out of the general requests, makes sure we don't have
      any slowdown in the regular requests.
      To keep the process performing this checks small, the check is still
      performed inside a unicorn. But that is called from a process running
      on the same server.
      Because the checks are now done outside normal request, we can have a
      simpler failure strategy:
      The check is now performed in the background every
      `circuitbreaker_check_interval`. Failures are logged in redis. The
      failures are reset when the check succeeds. Per check we will try
      `circuitbreaker_access_retries` times within
      `circuitbreaker_storage_timeout` seconds.
      When the number of failures exceeds
      `circuitbreaker_failure_count_threshold`, we will block access to the
      After `failure_reset_time` of no checks, we will clear the stored
      failures. This could happen when the process that performs the checks
      is not running.