1. 20 Sep, 2019 3 commits
  2. 19 Sep, 2019 7 commits
    • Michael Leopard's avatar
      Exposing name property in imports API · d33db654
      Michael Leopard authored
      Updating import API documentation. Updating import API tests.
      d33db654
    • Johan Henkens's avatar
      Add first_parent to find_commits · 341a4ac8
      Johan Henkens authored
      341a4ac8
    • Zeger-Jan van de Weg's avatar
      Add timeouts for each RPC call · 8f8dea2c
      Zeger-Jan van de Weg authored
      When setting the timeouts the client can give up on the RPC call, which
      allows for a protection for the client and server.
      
      This commit also removes the implicit lack of a timeout when running on
      sidekiq. This is a good thing as if one server is overloaded with work,
      it wouldn't block the whole queue from processing.
      
      Part of: &1737
      8f8dea2c
    • Giorgenes Gelatti's avatar
      Add support for updating manifests · a5618bba
      Giorgenes Gelatti authored
      - Adds Client#upload() to upload docker blobs
      - Adds Client#generate_manifest() to generate random
      blobs for manifests.
      - Adds Client#generate_dummy_image() to generate a dummy image
      - Adds Client#put_tag() to replace tag manifests
      a5618bba
    • Mario de la Ossa's avatar
      [ObjectStorage] Allow migrating back to local storage · dcb057d9
      Mario de la Ossa authored
      We have a bunch of rake task to migrate from local storage to remote
      storage, but nothing to migrate from remote storage to local.
      We add that here.
      
      This commits adds migration from object storage to local storage for:
      
      - uploads
      - artifacts (with metadata)
      - traces
      - LFS objects
      dcb057d9
    • Qingyu Zhao's avatar
      Use monotonic time in Sidekiq daemon memory killer · bc9c1aa8
      Qingyu Zhao authored
      Instead of using `Time.now`, we should rely on monotonic time for
      measuring deltas and operation timeout
      https://blog.dnsimple.com/2018/03/elapsed-time-with-ruby-the-right-way
      bc9c1aa8
    • Stan Hu's avatar
      Fix project exports clobbering concurrent export paths · 8d5f875c
      Stan Hu authored
      When a project export completes, it removes everything in
      `Project#import_export_shared.archive_path`, which can erase files
      needed for another ongoing project export. This is problematic for
      custom templates, which exports an existing project to get the most
      recent changes and imports that archive to another project.
      
      To avoid this from happening, we generate a random unique subpath in the
      shared temporary directory so that multiple exports can work at the same
      time.
      
      Previously the path structure was as follows:
      
      1. Project export files stored in:
         /shared/tmp/project_exports/namespace/project/:random
      2. Project export .tar.gz files stored in:
         /shared/tmp/project_exports/namespace/project
      3. Project export lock file:
         /shared/tmp/project_exports/namespace/project/.after_export_action
      
      Now:
      
      1. Project export files stored in:
         /shared/tmp/project_exports/namespace/project/:randomA/:randomB
      2. Project export .tar.gz files stored in:
         /shared/tmp/project_exports/namespace/project/:randomA
      3. Project export lock files stored in:
         /shared/tmp/project_exports/namespace/project/locks
      
      The .tar.gz files are also now cleaned up in the AfterExportStrategy.
      
      Also, ensure import/export path cleanup always happens.
      
      A failure to update the database or object storage shouldn't
      block us from cleaning up stale directories. This is especially
      important to clear out stale lock file and archive paths.
      
      Closes https://gitlab.com/gitlab-org/gitlab-ee/issues/14716
      8d5f875c
  3. 18 Sep, 2019 5 commits
    • Adam Hegyi's avatar
      Cycle Analytics implement query customization · 78e35514
      Adam Hegyi authored
      - Extend StageEvent with apply_query_customization and
        timestamp_projection methods.
      - Tests to ensure the event classes have unified interface.
      - Include ProductionStageEnd event
      78e35514
    • Yorick Peterse's avatar
      Disable gettext:updated_check for CE setups · 04e96650
      Yorick Peterse authored
      This disables gettext:updated_check in lint:all when running it on a CE
      installation, such as gitlab-org/gitlab-foss. Running this check on a CE
      installation will produce errors as it will find translation strings
      that do not exist in any source files.
      04e96650
    • Yorick Peterse's avatar
      Remove code for EE specific checks · 7159693a
      Yorick Peterse authored
      This code is no longer needed in the single codebase setup.
      7159693a
    • Qingyu Zhao's avatar
      Add Sidekiq daemon memory killer · 0d179ebd
      Qingyu Zhao authored
      When enable daemon memory killer, old memory killer will be disabled
      
      The daemon memory killer(Gitlab::SidekiqDaemon::MemoryKiller)
       - is to replace existing Gitlab::SidekiqMiddleware::MemoryKiller
       - allows Sidekiq memory balloon reasonably, within given time limit
       - reduces monitoring overhead(when there are many small jobs)
       - monitors Sidekiq memory timely(for long running jobs)
       - respects Worker sidekiq_options `memory_killer_memory_growth_kb`
       - respects Worker sidekiq_options `max_memory_killer_memory_growth_kb`
      
       Update document on Sidekiq memory killer ENV variables
      0d179ebd
    • Giorgenes Gelatti's avatar
      Add dependency proxy usage ping · 725b6327
      Giorgenes Gelatti authored
      725b6327
  4. 17 Sep, 2019 10 commits
  5. 16 Sep, 2019 15 commits