1. 19 Oct, 2019 1 commit
  2. 18 Oct, 2019 5 commits
  3. 17 Oct, 2019 16 commits
  4. 16 Oct, 2019 18 commits
    • Athar Hameed's avatar
    • Winnie Hellmann's avatar
      1a18a942
    • Hordur Freyr Yngvason's avatar
      Add individual inherited member lookup API · 5984ed07
      Hordur Freyr Yngvason authored
      Adds the endpoints
      
          /(groups|projects)/:id/members/all/:user_id
      
      for finding individual members, including inherited membership,
      complementing the existing endpoints
      
          /(groups|projects)/:id/members
          /(groups|projects)/:id/members/all
          /(groups|projects)/:id/members/:user_id
      
      which list direct members, list all members (including inherited), and
      find individual direct members, respectively.
      5984ed07
    • Fabio Pitino's avatar
      Introduce new Ansi2json parser · 1bbe1605
      Fabio Pitino authored
      This introduces a new class Ansi2json which
      similarly to Ansi2html converts job logs
      to a format that can be parsed by frontend.
      1bbe1605
    • Patrick Bajao's avatar
      Fix showing diff when it has legacy diff notes · 6a79e237
      Patrick Bajao authored
      Do not try to unfold `LegacyDiffNote`s as they don't support
      `position` even though they're in the same `notes` table as
      `DiffNote`s.
      
      This is done by using `Gitlab::Diff::PositionCollection` which
      will be responsible for filtering the positions.
      6a79e237
    • Mario de la Ossa's avatar
      Add CI job for checking stale GraphQL docs · d7ab6d21
      Mario de la Ossa authored
      Adds a new job, `graphql-docs-verify`, that fails if the autogenerated
      graphql reference docs are not up to date.
      d7ab6d21
    • Aufar Gilbran's avatar
      Make commit status created for any pipelines by default · f65eda80
      Aufar Gilbran authored
      Resolves https://gitlab.com/gitlab-org/gitlab-ee/issues/14064.
      
      On commit status creation, the controller tries to find pipeline that
      matches the specified parameters. If 'ref' not is given as parameters,
      'ref' will be assigned to branch name that contains 'sha' and pipeline
      for 'ref' will be searched. If there is an existing pipeline for 'ref',
      commit status stage is created and appended at the end of the pipeline.
      Otherwise, it will create a new pipeline for 'ref'.
      
      The above behavior is not desirable when the only pipelines available
      are not for branch. One example of other 'ref' is merge request ref.
      For these pipelines, the expected value of 'ref' is supposed to be the
      merge request ref name. For example, merge request with ID 42 will have
      /refs/merge-requests/42/head as its ref name. Thus, if there are only
      pipelines for merge requests, unless we pass 'ref' explicitly, it will
      create a new pipeline for the branch that contains the 'sha' instead of
      adding the created stage to the existing pipeline for merge requests.
      
      This commit change the logic so commit status can be created on any
      pipelines by default. The goal can be achieved by changing the logic
      when existing pipeline is searched using the given parameters. First,
      if 'pipeline_id' is specified, search for pipeline that has the same id
      as 'pipeline_id'. When 'pipeline_id' is not given, but 'ref' is given,
      search for pipeline that has the same 'ref' and 'sha' value. Note that
      'sha' will always be given. Otherwise, search the latest pipeline that
      has the same 'sha', which will only returns nil if there is no pipeline
      created for that particular 'sha'.
      f65eda80
    • Tiger Watson's avatar
      Add AWS cluster provider · 8568e729
      Tiger Watson authored
      Similar to the existing GCP cluster data model, introduce
      models to represent an AWS user role, and an EKS cluster
      that has been created by GitLab.
      8568e729
    • Kamil Trzciński's avatar
      Introduce and use `refresh_state` · bb1b81c8
      Kamil Trzciński authored
      This updates metrics on demand,
      and tracks the current state as gauge.
      
      This also improves tests execution time.
      bb1b81c8
    • Qingyu Zhao's avatar
      Add Sidekiq memory killer prometheus metrics · 62fb215e
      Qingyu Zhao authored
      62fb215e
    • Patrick Bajao's avatar
      Don't execute webhooks/services when above limit · 4c0fb545
      Patrick Bajao authored
      If a single push has a number of changes over the threshold
      (`push_event_hooks_limit` setting, 3 by default), the related
      project webhooks and services won't be executed.
      
      This way, in an event where bulk changes are pushed, the system
      won't be overloaded.
      4c0fb545
    • Yorick Peterse's avatar
      Add API for manually creating deployments · 77831f78
      Yorick Peterse authored
      This API can be used for manually creating deployments, instead of being
      limited to creating deployments using CI pipelines.
      
      As part of these changes, I refactored some parts of the existing
      deployments code. This ensures we reuse the same logic for creating
      deployments in different places. We also move the deployments service
      classes to a Deployments namespace, now that there are two service
      classes.
      
      We also make some changes to which deployments are displayed. Prior to
      these changes, only deployments that were successful were displayed.
      This can get very confusing when using deployments from external
      systems, so we now show deployments regardless of their status. The
      table to display deployments has also had some style/content changes to
      display the deployments data in a more meaningful way.
      77831f78
    • Kamil Trzciński's avatar
      Add `on_before_phased_restart` lifecycle event · 4514945a
      Kamil Trzciński authored
      Unicorn/Puma Cluster: This will be called before a graceful
      shutdown of workers starts hapepning.
      This is called on `master` process.
      4514945a
    • Igor's avatar
      Fix caching of submodule links for shas with dashes · 1281ac55
      Igor authored
      1281ac55
    • Kamil Trzciński's avatar
      Change IS_GITLAB_EE to FOSS_ONLY · c2508bda
      Kamil Trzciński authored
      This removes the usage of IS_GITLAB_EE
      and prefer to use FOSS_ONLY that has
      the following states:
      1. nil/empty string: use CE or EE depending on sources
      1. false: use CE or EE depending on sources
      2. true: use CE always
      c2508bda
    • Kamil Trzciński's avatar
      Improve service level health-checks · 256a3072
      Kamil Trzciński authored
      This improves the behavior of health-checks
      introducing two levels of them:
      
      - service level: checks served by `sidekiq|web_exporter:'
        served on separate port
      
      - application level: checks served by `/-/metrics` endpoint
        of `HealthController`
      
      The changes makes the:
      
      - `/liveness` always indicate that application is ready
        and not deadlocked
      - `/readiness` to indicate:
      
      The changes for `/readiness`:
      
      - on service level: the status of the service if it can accept
        and process connections
      
      - on application level: the status of external components if they
        are accessible
      
      The `on service level` and `on application level` do not share
      any checks, they have different checks exposed.
      256a3072
    • Kamil Trzciński's avatar
      Make Daemon thread-safe · f5b1317a
      Kamil Trzciński authored
      This introduces `#run_thread` method.
      
      The `#start_working` is executed in lock context,
      the same as `#stop_working`. This allows safe
      initialisation of resources before `#run_thread`
      consumes them.
      f5b1317a
    • Kamil Trzciński's avatar
      Add unicorn/puma health checks · 03cba0fe
      Kamil Trzciński authored
      These checks do validate amount of workers
      available to process requests.
      
      It allows the readiness to indicate a time when
      the requests can be safelly send to the web server.
      03cba0fe