Skip to content
Snippets Groups Projects
  1. Sep 04, 2019
    • Eugenia Grieff's avatar
      Add service to transfer group milestones · 7a3234c6
      Eugenia Grieff authored
      - Add new service that transfers milestones
      from a group to a project
      - Include new service in Projects transfer service
      - Include FromUnion module in Milestone model
      to use in transfer service
      - Add specs for new milestones service
      - Add specs for transferring milestones in
      project transfer service
      7a3234c6
  2. Aug 27, 2019
  3. Aug 20, 2019
    • Luke Duncalfe's avatar
      Add service classes for mutating AwardEmoji · 37b17fa6
      Luke Duncalfe authored
      Adding, destroying and toggling emoji previously lacked services and
      instead were performed through methods called on Awardable models.
      
      This led to inconsistencies where relevant todos would be marked as done
      only when emoji were awarded through our controllers, but not through
      the API. Todos could also be marked as done when an emoji was being
      removed.
      
      Behaviour changes
      
      - Awarding emoji through the API will now mark a relevant Todo as done
      - Toggling an emoji off (destroying it) through our controllers will no
        longer mark a relevant Todo as done
      
      Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/63372
      37b17fa6
  4. Aug 15, 2019
  5. Aug 13, 2019
    • Bob Van Landuyt :neckbeard:'s avatar
      Rework retry strategy for remote mirrors · 452bc36d
      Bob Van Landuyt :neckbeard: authored and Douwe Maan's avatar Douwe Maan committed
      **Prevention of running 2 simultaneous updates**
      
      Instead of using `RemoteMirror#update_status` and raise an error if
      it's already running to prevent the same mirror being updated at the
      same time we now use `Gitlab::ExclusiveLease` for that.
      
      When we fail to obtain a lease in 3 tries, 30 seconds apart, we bail
      and reschedule. We'll reschedule faster for the protected branches.
      
      If the mirror already ran since it was scheduled, the job will be
      skipped.
      
      **Error handling: Remote side**
      
      When an update fails because of a `Gitlab::Git::CommandError`, we
      won't track this error in sentry, this could be on the remote side:
      for example when branches have diverged.
      
      In this case, we'll try 3 times scheduled 1 or 5 minutes apart.
      
      In between, the mirror is marked as "to_retry", the error would be
      visible to the user when they visit the settings page.
      
      After 3 tries we'll mark the mirror as failed and notify the user.
      
      We won't track this error in sentry, as it's not likely we can help
      it.
      
      The next event that would trigger a new refresh.
      
      **Error handling: our side**
      
      If an unexpected error occurs, we mark the mirror as failed, but we'd
      still retry the job based on the regular sidekiq retries with
      backoff. Same as we used to
      
      The error would be reported in sentry, since its likely we need to do
      something about it.
      452bc36d
  6. Aug 09, 2019
  7. Aug 07, 2019
    • David Wilkins's avatar
      Convert RestClient to Gitlab::HTTP for Prometheus Monitor · 467a411e
      David Wilkins authored and Ash McKenzie's avatar Ash McKenzie committed
      - Closes #60024
      
      - Change PrometheusClient.new to accept a base url instead of an
        already created RestClient
      
      - Use Gitlab::HTTP in PrometheusClient instead of creating RestClient
        in PrometheusService
      
      - Move http_options from PrometheusService to
        PrometheusClient (follow_redirects: false)
      
      - ensure that base urls don't have the trailing slash
      
      - Created a `PrometheusClient#url` method that might not be strictly
        required
      
      - Change rescued exceptions from RestClient::* to
        HTTParty::ResponseError where possible and StandardError for the
        rest
      467a411e
  8. Aug 06, 2019
  9. Aug 02, 2019
    • George Koltsov's avatar
      Add outbound requests setting for system hooks · e5e1c907
      George Koltsov authored
      This MR adds new application setting to network section
      `allow_local_requests_from_system_hooks`. Prior to this change
      system hooks were allowed to do local network requests by default
      and we are adding an ability for admins to control it.
      e5e1c907
  10. Jul 30, 2019
  11. Jul 29, 2019
    • Thong Kuah's avatar
      Write out sham_rack gem · 46ef4954
      Thong Kuah authored
      This means we have one less Net::HTTP monkeypatch.
      
      sham_rack cannot handle IPv6 addresses which means it breaks Net::HTTP
      connections because it monkey-patches Net::HTTP
      Unverified
      46ef4954
  12. Jul 25, 2019
  13. Jul 17, 2019
  14. Jun 25, 2019
  15. Jun 17, 2019
  16. Jun 14, 2019
    • Stan Hu's avatar
      Fix inability to set visibility_level on project via API · dcba5279
      Stan Hu authored
      Consider the scenario:
      
      1. The default visibility level is set to internal
      2. A user attempts to create a private project within a private group
      
      Previously this would always fail because default_value_for would
      overwrite the private visibility setting, no matter what
      visibility_level were specified. This was happening because
      default_value_for was confused by the default value of 0 specified by
      the database schema.
      
      default_value_for attempts to assign the default value in the block by
      checking whether the attribute has changed. The problem is that since
      the default value by the database was 0, and the user requested 0, this
      appeared as though no changes were made. As a result, default_value_for
      would always overwrite the user's preference.
      
      To fix this, we remove the use of default_value_for and only set the
      visibility level to the default application setting when no preference
      has been given at creation time.
      
      Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/63158
      dcba5279
  17. Jun 12, 2019
    • Fabio Pitino's avatar
      Expose ci_default_git_depth via project API · 3ac527b4
      Fabio Pitino authored
      Enable Get and Update of ci_default_git_depth for
      Project API.
      
      Renaming Project#default_git_depth to :ci_default_git_depth
      to give more context through the API usage.
      
      Add API documentation
      3ac527b4
  18. Jun 06, 2019
    • Krasimir Angelov's avatar
      Forks get default_git_depth 0 if the origin is nil · 52673a91
      Krasimir Angelov authored
      If the origin project has no default_git_depth set (i.e. nil) set the
      fork's default_git_depth to 0
      52673a91
    • Krasimir Angelov's avatar
      Add project level git depth setting · ad9ae16d
      Krasimir Angelov authored and Fabio Pitino's avatar Fabio Pitino committed
      Introduce default_git_depth in project's CI/CD settings and set it to
      50. Use it if there is no GIT_DEPTH variable specified. Apply this
      default only to newly created projects and keep it nil for old ones
      in order to not break pipelines that rely on non-shallow clones.
      
      default_git_depth can be updated from CI/CD Settings in the UI, must be
      either nil or integer between 0 and 1000 (incl).
      
      Inherit default_git_depth from the origin project when forking projects.
      
      MR pipelines are run on a MR ref (refs/merge-requests/:iid/merge) and it
      contains unique commit (i.e. merge commit) which doesn't exist in the
      other branch/tags refs. We need to add it cause otherwise it may break
      pipelines for old projects that have already enabled Pipelines for merge
      results and have git depth 0.
      
      Document new default_git_depth project CI/CD setting
      ad9ae16d
  19. Jun 05, 2019
  20. May 31, 2019
    • Shinya Maeda's avatar
      Remove legacy artifact related code · 387a4f4b
      Shinya Maeda authored
      We've already migrated all the legacy artifacts to the new realm,
      which is ci_job_artifacts table.
      It's time to remove the old code base that is no longer used.
      387a4f4b
  21. May 30, 2019
  22. May 29, 2019
  23. May 21, 2019
  24. May 17, 2019
  25. May 10, 2019
  26. May 09, 2019
  27. May 06, 2019
  28. May 02, 2019
    • Jan Provaznik's avatar
      Use git_garbage_collect_worker to run pack_refs · d25239ee
      Jan Provaznik authored
      PackRefs is not an expensive gitaly call - we want to
      call it more often (than as part of full `gc`) because
      it helps to keep number of refs files small - too many
      refs file may be a problem for deployments with
      slow storage.
      d25239ee
  29. Apr 30, 2019
  30. Apr 26, 2019
  31. Apr 23, 2019
  32. Apr 11, 2019
  33. Apr 09, 2019
  34. Apr 05, 2019
Loading