1. 04 Mar, 2021 1 commit
  2. 01 Mar, 2021 4 commits
  3. 27 Feb, 2021 3 commits
  4. 26 Feb, 2021 1 commit
  5. 25 Feb, 2021 7 commits
    • Georges Racinet's avatar
      hg-configexpress: pinning version · a06614accc5d
      Georges Racinet authored
      as often, we're still allowing bugfix releases.
      
      --HG--
      branch : heptapod
      a06614accc5d
    • Georges Racinet's avatar
      Container Registry stats: hooking in root stats refresher service · c2f439f9becf
      Georges Racinet authored
      This service is itself called by a worker that is enqueued
      only if the root (top-level) namespace is marked for refresh.
      Probably to avoid running on millions of dormant personal namespaces,
      to be further investigated.
      
      A nice side effect is that the RSpec tests for
      `StatisticsRefresherService` actually call our
      `ContainerRegistryStatsService`. Of course, without real or fake data,
      this is trivial, but they could actually detect a naming inconsistency
      that we fixed.
      
      --HG--
      branch : heptapod
      c2f439f9becf
    • Georges Racinet's avatar
      Container Registry stats: aggregation in RootStorageStatistics · 06a21328d2d5
      Georges Racinet authored
      Strictly speaking, the total, `storage_size`, was already
      taking containers into account, since ProjectStatistics do.
      
      What we're adding is the separate field, with its GraphQL
      exposition.
      
      --HG--
      branch : heptapod
      06a21328d2d5
    • Georges Racinet's avatar
      Container Registry stats: main service for computation · 5c1173525496
      Georges Racinet authored
      This runs for top-level namespaces, providing a reasonable
      assessment per project, which summed up for top-level
      namespaces represents actual usage, except that there layer
      sharing between top-level groups is ignored.
      
      This is a compromise between practicality, scalability and
      we hope for billing cases that it will be clearer to users
      that the registry billing is the same as if they were alone
      on the instance: no bill smaller than expected, but also no
      bill climbing up for unexpected reasons.
      
      --HG--
      branch : heptapod
      5c1173525496
    • Georges Racinet's avatar
      Container Registry stats: group-level aggregations with API · 7fe0c054dc24
      Georges Racinet authored
      The new field is not yet displayed in the admin page, where
      the others are. One must stay aware that these aggregations
      are from direct projects only: projects from subgroups are
      not taken into account.
      
      --HG--
      branch : heptapod
      7fe0c054dc24
    • Georges Racinet's avatar
      ProjectStatistics: added registry size_share to total storage_size · 9447db3ce555
      Georges Racinet authored
      --HG--
      branch : heptapod
      9447db3ce555
    • Georges Racinet's avatar
      Container Registry stats: column on namespace_root_storage_statistics · e6bf3caea424
      Georges Racinet authored
      Group-level aggregation, as in the ReST API is done by simple
      SQL sums on the fly (not taking subgroup into accounts), so there
      was no column to add.
      
      On the other hand, the `Namespace::RootStorageStatistics` model
      is meant to store periodic execution of stats aggregation
      done by `Namespaces::RootStatisticsWorker`.
      
      These can be queried with the GraphQL API.
      
      --HG--
      branch : heptapod
      e6bf3caea424
  6. 24 Feb, 2021 1 commit
  7. 22 Feb, 2021 3 commits
    • Georges Racinet's avatar
      Heptapod CI: create Omnibus tags from the tag pipeline · 9d7de5cdc2ae
      Georges Racinet authored
      This should in turn trigger the Omnibus tag pipeline, hence the
      release up to the 'testing' Docker image in registry.h.n.
      
      This uses a project token
      
      We made several choices for safety:
      
      - do not attempt to reuse a clone
      - just fail if the heptapod-x.y.z-1 tag is already present in
        Omnibus. We can later on try something smarter to increment them,
        but it's actually a fairly infrequent case, probably not worth the
        effort (and its testing).
      
      --HG--
      branch : heptapod
      9d7de5cdc2ae
    • Georges Racinet's avatar
      Heptapod CI: skip all lints and tests for tag pipelines · 402c82806e69
      Georges Racinet authored
      These are redundant with other pipelines, and were already
      de facto skipped for RSpec tests (also skipping knapsack aggregation
      for now).
      
      In short we're only making it consistent.
      
      --HG--
      branch : heptapod
      402c82806e69
    • Georges Racinet's avatar
      Bumping hg-evolve to 10.2 · 15a6f48bff0e
      Georges Racinet authored
      This brings in notably the topic RAM cache, that should significantly
      boost some computations for new commits, and compatibility with
      Mercurial 5.7 (not in use yet).
      
      --HG--
      branch : heptapod
      15a6f48bff0e
  8. 21 Feb, 2021 1 commit
    • Georges Racinet's avatar
      Workhorse: update build instructions, removed version file · 60426d3955bc
      Georges Racinet authored
      TL;DR: upstream rake tasks is now ready (uses the workhorse/
      subdirectory). If people just apply upstream doc, it should
      work (with only a minor catch). The wording in `INSTALL_HEPTAPOD`
      is meant mostly for people upgrading from earlier versions.
      
      The HEPTAPOD_WORKHORSE_VERSION has now become irrelevant,
      bringing only confusion.
      
      --HG--
      branch : heptapod
      60426d3955bc
  9. 20 Feb, 2021 3 commits
    • Georges Racinet's avatar
      Bumped Heptapod Shell version for GitLab 13.9 · e8e86554697e
      Georges Racinet authored
      --HG--
      branch : heptapod
      e8e86554697e
    • Georges Racinet's avatar
      Merge with v13.9.0-rc42 and adaptation · 1278b404cf27
      Georges Racinet authored
      Conflicts and other points of interest:
      
      - the revert and cherry-pick modals in
        app/views/projects/commit/_change.html.haml have been migrated upstream
        to VueJS.
        Heptapod changes were just adding messages telling the user that these
        features are not implemented for Mercurial.
        With the current structure, it was much simpler to hide the possibility
        for Mercurial projects completely, which we did.
      - `GitAccess`: check_otp! removed upstream, because it was supposed to be
        an Enterprise Edition feature (https://gitlab.com/gitlab-org/gitlab!53166).
      - `HgAccess`: resynced RSpec tests with those for `GitAccess` to accomodate
        the new `admin_mode` (control of instance Administrators authorizations on
        Projects they aren't explicitely member of.
      - Unhid the Web IDE on tree displays: the Web IDE was almost
        everywhere else anyway, and it's working when committing to the current
        branch. Starting a new branch and creating a MR will have to be corrected
        (not really new with this merge)
      - Corrected new Rubocop offenses, except
        + db migration introducing the new `default_vcs_type` field  namespaces:
          not a new field for us
        + Code metrics (complexity): not a proper time for refactorings.
      - Mergeability service: merge_ref_auto_sync_enabled? simply does not exist
        anymore upstream, because the corresponding feature is always enabled in 13.9
      
      --HG--
      branch : heptapod
      1278b404cf27
    • Georges Racinet's avatar
      Heptapod CI: updated cache key for GitLab 13.9 · 8b06644e4612
      Georges Racinet authored
      We don't want to poison 0.19 builds with unappropriate prepared
      dependencies.
      
      --HG--
      branch : heptapod
      8b06644e4612
  10. 18 Feb, 2021 5 commits
  11. 14 Feb, 2021 2 commits
    • Georges Racinet's avatar
      Workhorse: use VERSION if not from a Mercurial repo · 4870292f9ae2
      Georges Racinet authored
      With this, the `compute_version` script will behave as upstream's
      Makefile: default to the version file if not from VCS.
      
      A difference is that we go straight to the main Heptapod version,
      to be consistent with the VCS case and avoid maintaining a separate
      HEPTAPOD_VERSION file. We'll have to watch what upstream does and
      what their scenarios for separate compilation are. For the time
      being, our compilations will be from the whole source. If we decide
      to produce separate source tarballs for Heptapod Workhorse at some
      point, we can revise this (and copy the main HEPTAPOD_VERSION as
      part of metadata there).
      
      --HG--
      branch : heptapod
      4870292f9ae2
    • Georges Racinet's avatar
      Workhorse: applied Heptapod Workhorse changes · 32ffb45fea62
      Georges Racinet authored
      So far we are on upstream v8.58.0 (current heptapod branch is
      for 0.19), and a simple patch apply from Heptapod 8.58.0 works
      right away.
      
      The odd thing is the version logic: upstream is still using the
      `git describe`, even in v0.19.0-rc41. That means that for upstream,
      the Workhorse version is directly derived from the Rails version if
      Git is present, only defaulting to the VERSION string if not, hence
      something way different, such as 8.58.0. Probably they will resync
      soon or just read from `../gitlab/VERSION`.
      
      If we are in a Mercurial repo, the Heptapod specific `compute_version`
      script mimics `git-describe` in a Mercurial way,
      also adding the `heptapod-` prefix. It also has logic for tarballs
      of Workhorse produced by `hg archive`, which we'll replace by using
      a `VERSION` file in a later move.
      
      Our end result for The repo case is a bit weird right now on the
      heptapod branch: the latest tag is heptapod-0.16.0.pre. After we merge
      13.8 or 13.9, we will add a heptapod-0.20.0.pre tag so that it's neat,
      and we'll have to make this a common practice.
      
      --HG--
      branch : heptapod
      32ffb45fea62
  12. 13 Feb, 2021 2 commits
  13. 11 Feb, 2021 4 commits
  14. 10 Feb, 2021 3 commits