1. 29 Oct, 2020 2 commits
  2. 08 Nov, 2020 1 commit
    • Georges Racinet's avatar
      Heptapod CI: fixed log extraction for failed builds · 820d92d00c83
      Georges Racinet authored
      Had forgotten that the logs are located in subdirectories.
      It would be tempting do just take the whole /var/log/gitlab
      directory, but then I'd be wary it could be too big. I expect
      the artifacts system to perform compression (IIRC it's artifacts
      are wrapped in a zip file).
      We do have some random failures in the nightly builds that I'd like
      to investigate. We'll see if that is enough.
  3. 18 Oct, 2020 2 commits
    • Georges Racinet's avatar
      Heptapod CI: using heptapod/ci-images/mercurial base Docker image · aca488ac5daf
      Georges Racinet authored
      This spares us refreshing APT sources and installing tox, better for
      latency, bandwidth, given that the chances the base image is already
      available are high, and about the same as the octobus image meant for
      classical Mercurial extensions testing that's been replaced.
    • Georges Racinet's avatar
      Heptapod CI: more complete and homegeneous rules · 6c9d4084910b
      Georges Racinet authored
      This parallels what's been done in omnibus-heptapod, except
      that we still allow manual triggering.
      The simplest case remains to make a MR for tests expected
      to pass on the latest testing Heptapod Docker image.
  4. 15 Oct, 2020 2 commits
  5. 12 Oct, 2020 1 commit
    • Georges Racinet's avatar
      New `--heptapod-hg-native` option · b2a5da28ceb5
      Georges Racinet authored
      This option makes the functional tests create Mercurial native
      projects instead of the default type (currently `hg_git`).
      Hence it will be the main tool to validate HGitaly related
      developments. Later on, we might want to introduce dedicated
      CI jobs. Switching to parametrization can also be considered,
      but it wouldn't change so much in CI, because we now have tests
      The new flag is stored on the `Heptapod` object, for lack of
      better choice in the short term (arguably, that's not a property
      of the Heptapod server).
  6. 06 Oct, 2020 7 commits
    • Georges Racinet's avatar
      Heptapod CI: getting rid of duplicate pipeline warnings · 1e662a511408
      Georges Racinet authored
      We'll actually have the flake8 job that'll keep on being
      duplicated, but that's the price to pay for manual jobs
      on regular pushes.
      Also deduplicating the rules and preparing for future
      cross project triggering.
    • Georges Racinet's avatar
      Fixing flake8 and forcing the job in CI. · 56961c493a41
      Georges Racinet authored
      I *kwew* that this job not running on detached MR pipelines was
      going to be a problem. We can live with duplication of that job.
    • Georges Racinet's avatar
    • Georges Racinet's avatar
      Heptapod CI: using pytest-shard · d8ea0da12ff8
      Georges Racinet authored
      Closes #14
      As explained in issue comment, two shards seem to be a good,
      useful, starting point.
      branch : stable
    • Georges Racinet's avatar
      Omnibus: stop hardcoding server-side path to hg · 55b1ee0b3b1b
      Georges Racinet authored
      For server-side operations, we should use the one provided by
      the server, obviously.
      The immediate need is that it varies amongst installation types
      With The new Omnibus packaging method (omnibus-heptapod!3)
      for Heptapod 0.17, it changes from /usr/local/bin (expected to be on PATH)
      to /opt/gitlab/embedded/bin.
      There are several TODOs:
      - read `hg_executable` from config, with remote instances being
        the only exceptions (but these wouldn't call server-side subprocesses
        from the tests).
      - provide a direct helper method on `Heptapod`
      - do the same for Git
    • Georges Racinet's avatar
      git: new CLI option for client-side executable · ee0c40e91d6a
      Georges Racinet authored
      In 7a354d699944, we had the `heptapod` fixture carry the path
      to the client-side Git executable, but that creates confusion
      between the client and server sides (actually more manifest with
      Mercurial, but both should be handled in the same way).
      Now we make the client-side Git executable path work as for
      Mercurial, with a command line option and centralization in the
      `utils.git` module.
      Finally, we refactor both `utils.git` and `test_ssh` so that the
      latter can use the standard classmethod of `git.LocalRepo`.
    • Georges Racinet's avatar
      hg: new CLI option for client-side executable · 6397162194d8
      Georges Racinet authored
      This seems to be necessary for CI tests inside the Docker
      container, because /opt/gitlab/omnibus/bin is not on the PATH
      of the `git` user.
  7. 05 Oct, 2020 13 commits
  8. 27 Sep, 2020 3 commits
    • Georges Racinet's avatar
      Merge Requests: assertions on displayed SHA in commit list · 03816fce43cc
      Georges Racinet authored
      We're using it in the simpler `rebase_publish` test, and
      that's enough to validate fix of SHA value, but it could be
      reused elsewhere. In a follow-up, we could separate further
      just the commit SHA / clipboard widget, to use it in other
      contexts, such as pipelines etc.
      branch : stable
    • Georges Racinet's avatar
      Merge Request: rebase_publish_push() now returns a SHA · 34c66173f908
      Georges Racinet authored
      Lookup by topic name is convenient, but can't work after
      publishing. Of course, the interesting information is after
      rebase (if interested by value before rebase, the caller would
      be able to ask for it  directly).
      branch : stable
    • Georges Racinet's avatar
      Project.get_merge_request_commit_links now returns the whole row · 911d63829706
      Georges Racinet authored
      We still wait on the link to be displayed, but returning the whole
      `li` element will be useful for finer assertions, e.g., about
      commit SHAs.
      The consequence is that the `text` attribute of the returned
      elements is broader, encompassing the commit title, authorship and
      short id.
      branch : stable
  9. 30 Sep, 2020 1 commit
  10. 25 Sep, 2020 2 commits
  11. 24 Sep, 2020 2 commits
  12. 22 Sep, 2020 1 commit
  13. 08 Sep, 2020 2 commits
  14. 28 Aug, 2020 1 commit
    • Georges Racinet's avatar
      Project: adapted webdriver_destroy() for GitLab 13.3 · 623db7fc5767
      Georges Racinet authored
      The confirmation modal has changed a lot (the principle
      stays the same), including the text to type, that we now
      simply copy for better independence (now has a verb and the
      full path).
      We've observed the `id` for the `modal` element to differ between
      source and Docker contexts. Using the `<div class="modal-dialog>`
      ancestor wouldn't be appropriate as the corresponding CSS selector
      returns another one.