Skip to content
Snippets Groups Projects
  1. Feb 21, 2020
  2. Feb 15, 2020
  3. Feb 05, 2020
  4. Dec 05, 2019
  5. Dec 03, 2019
  6. Nov 07, 2019
  7. Oct 22, 2019
  8. Oct 17, 2019
  9. Sep 18, 2019
  10. Sep 11, 2019
  11. Aug 17, 2019
  12. Aug 13, 2019
    • Stan Hu's avatar
      Reduce Gitaly calls in PostReceive · 4e2bb4e5
      Stan Hu authored
      This commit reduces I/O load and memory utilization during PostReceive
      for the common case when no project hooks or services are set up.
      
      We saw a Gitaly N+1 issue in `CommitDelta` when many tags or branches
      are pushed. We can reduce this overhead in the common case because we
      observe that most new projects do not have any Web hooks or services,
      especially when they are first created. Previously, `BaseHooksService`
      unconditionally iterated through the last 20 commits of each ref to
      build the `push_data` structure. The `push_data` structured was used in
      numerous places:
      
      1. Building the push payload in `EventCreateService`
      2. Creating a CI pipeline
      3. Executing project Web or system hooks
      4. Executing project services
      5. As the return value of `BaseHooksService#execute`
      6. `BranchHooksService#invalidated_file_types`
      
      We only need to generate the full `push_data` for items 3, 4, and 6.
      
      Item 1: `EventCreateService` only needs the last commit and doesn't
      actually need the commit deltas.
      
      Item 2: In addition, `Ci::CreatePipelineService` only needed a subset of
      the parameters.
      
      Item 5: The return value of `BaseHooksService#execute` also wasn't being
      used anywhere.
      
      Item 6: This is only used when pushing to the default branch, so if
      many tags are pushed we can save significant I/O here.
      
      Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/65878
      
      Fic
      4e2bb4e5
  13. Jun 24, 2019
  14. Jun 20, 2019
  15. Jun 10, 2019
  16. May 28, 2019
    • Shinya Maeda's avatar
      Use source ref for pipeline webhook · 7e05f3b7
      Shinya Maeda authored
      When user uses Pipelines for merge requests, the pipeline is a run on
      a merge request ref instead of branch ref. However, we should send
      source ref as a webhook in order to respect the original behavior.
      7e05f3b7
  17. May 02, 2019
  18. Apr 26, 2019
  19. Apr 25, 2019
  20. Apr 08, 2019
    • Luke Duncalfe's avatar
      Use Gitlab::PushOptions for `ci.skip` push option · 1883e320
      Luke Duncalfe authored
      Previously the raw push option Array was sent to Pipeline::Chain::Skip.
      
      This commit updates this class (and the chain of classes that pass the
      push option parameters from the API internal `post_receive` endpoint to
      that class) to treat push options as a Hash of options parsed by
      GitLab::PushOptions.
      
      The GitLab::PushOptions class takes options like this:
      
          -o ci.skip -o merge_request.create -o merge_request.target=branch
      
      and turns them into a Hash like this:
      
          {
            ci: {
              skip: true
            },
            merge_request: {
              create: true,
              target: 'branch'
            }
          }
      
      This now how Pipeline::Chain::Skip is determining if the `ci.skip` push
      option was used.
      1883e320
  21. Apr 04, 2019
    • Shinya Maeda's avatar
      Drop legacy artifacts usage · 8e51439e
      Shinya Maeda authored
      Legacy artifacts have been correctly migrated to new place -
      ci_job_artifacts. Now it's time to remove the related code, but before
      that we should ensure it doesn't break anything by using feature flag.
      8e51439e
  22. Jan 31, 2019
  23. Jan 18, 2019
  24. Dec 31, 2018
    • Jonathon Reinhart's avatar
      Add support for Git push options, specifically ci.skip · ba781484
      Jonathon Reinhart authored
      gitlab-org/gitlab-shell!166 added support for collecting push options
      from the environment, and passing them along to the
      /internal/post_receive API endpoint.
      
      This change handles the new push_options JSON element in the payload,
      and passes them on through to the GitPushService and GitTagPushService
      services.
      
      Futhermore, it adds support for the first push option, ci.skip.  With
      this change, one can use 'git push -o ci.skip' to skip CI pipe
      execution. Note that the pipeline is still created, but in the "skipped"
      state, just like with the 'ci skip' commit message text.
      
      Implements #18667
      ba781484
  25. Nov 07, 2018
    • gfyoung's avatar
      Enable even more frozen string in lib/gitlab · 7e6f6e16
      gfyoung authored
      Enables frozens string for the following:
      
      * lib/gitlab/conflict/**/*.rb
      * lib/gitlab/cross_project_access/**/*.rb
      * lib/gitlab/cycle_analytics/**/*.rb
      * lib/gitlab/data_builder/**/*.rb
      * lib/gitlab/database/**/*.rb
      * lib/gitlab/dependency_linker/**/*.rb
      * lib/gitlab/diff/**/*.rb
      * lib/gitlab/downtime_check/**/*.rb
      * lib/gitlab/email/**/*.rb
      * lib/gitlab/etag_caching/**/*.rb
      
      Partially addresses gitlab-org/gitlab-ce#47424.
      7e6f6e16
  26. Oct 01, 2018
  27. Aug 31, 2018
  28. Aug 10, 2018
  29. Jun 26, 2018
  30. Apr 05, 2018
  31. Mar 07, 2018
  32. Oct 05, 2017
  33. Sep 22, 2017
  34. Aug 27, 2017
    • Stan Hu's avatar
      Simplify system hook testing and guarantee test will fire · 1e53f40c
      Stan Hu authored
      The change in !11728 would cause an arbitrary project to be chosen to test
      system hooks, and it's likely that the project would not have any commits or
      relevant commits to test the hook. This would prevent admins from verifying
      that the hook fired. Instead of trying to create a representative hook
      dynamically, just send static data to guarantee the hook will actually be
      tested.
      
      Closes #37067
      1e53f40c
  35. Jul 28, 2017
  36. Jul 20, 2017
  37. Jun 01, 2017
  38. May 12, 2017
  39. May 10, 2017
Loading