- 30 Nov, 2020 2 commits
-
-
Georges Racinet authored
Building on top of the bootstrapped image precendently added, this one has the dependencies for heptapod-test to run inside the image, hence what's needed for the docker-inside jobs (fs_access, services). It is fat, more than 400MB
-
Georges Racinet authored
The idea is that the initialization that occurs so far in all our CI jobs is lengthy and resource intensive: it accounts to about 5 minutes per job. For true installations, it makes sense to perform these steps with an initial configuration that's already as intended. But for our tests, the result is always the same for a given base image. Because the affected directories are volumes, we need to copy the result elsewhere on the filesystem, so that they aren't discarded immediately. In turn, the wrapper script used in the bootstrapped image restores them to the volumes and performs a much simpler startup sequence. The base image to use is entirely passed as an ARG, but it will typically be called by CI, perhaps with a hash-based tag.
-
- 29 Nov, 2020 1 commit
-
-
Georges Racinet authored
In the current state of the main heptapod development branches, (to be released as 0.17.2), all functional tests pass, so let's now ensure it stays that way.
-
- 27 Nov, 2020 2 commits
-
-
Georges Racinet authored
On native projects, we won't have these old parameters to control the pruning of the closed branches, since the Mercurial repo will be the terminal one.
-
Georges Racinet authored
This introduces `@needs.hg_git` and `@needs.hg_native` markers to skip tests if `--heptapod-hg-native` is passed or isn't, respectively.
-
- 26 Nov, 2020 2 commits
-
-
Georges Racinet authored
With the previously forgotten enabling by the tests of the Mercurial native repositories, these have passed for the first time while testing the Heptapod 0.17.1 release. Let's now require them to pass, hoping nothing too flaky will be there. At this point of development of the native mode, the inside tests still fail, and that's not so surprising, probably a real problem to fix, not only test harness.
-
Georges Racinet authored
Now that it inherits from OmnibusHeptapod, it had the hardcoded expected `git@localhost`, which isn't appropriate because DockerHeptapod is meant to be used from outside the container (and OmnibusHeptapod can be used from inside the container)
-
- 24 Nov, 2020 5 commits
-
-
Georges Racinet authored
Now it's really basic again.
-
Georges Racinet authored
it will be reused
-
Georges Racinet authored
It's a bit cleaner: we can have the tear down, without the extra indention that the `with` statement would need.
-
Georges Racinet authored
This reproduces the problems encountered with the Mercurial native mode, see hgitaly#23.
-
Georges Racinet authored
This is just convenient and would also mean a fixture would be very easy to create.
-
- 25 Nov, 2020 1 commit
-
-
Georges Racinet authored
which I've been doing manually on my development workspaces. Of course the hg-native mode hadn't a chance to pass on CI before this.
-
- 24 Nov, 2020 2 commits
-
-
Georges Racinet authored
The stable branch is still for Heptapod 0.16, but there probably won't be any release on it, now.
-
Georges Racinet authored
-
- 19 Nov, 2020 5 commits
-
-
Georges Racinet authored
-
Georges Racinet authored
With the native mode, something pushed is pushed. In that case if we don't want a closing changeset of the GitLab branch, we have to prevent pushing it in the first place. People can always change the default branch setting if needed
-
Georges Racinet authored
For native repos, the shadowing happens at read time, so we can't make a difference between sliding (not a new bookmark) or not. Also, we cannot just let the bookmark at a previous position for the non-shadowed case of the default GitLab branch. This latter case is done identically for non-native repos because it was arguably a logical discrepancy.
-
Georges Racinet authored
The branchmap rules make it so that if it's useful for visualisation of instabilities, in stack topics case, the older one is still visible after publication (because it's base of the one that now has to be rebased). Hoping this can change at some point in the future, though.
-
Georges Racinet authored
For the very few tests that need to make a difference, it's best not to assume we will use a global flag available on the Heptapod project forever. It could very well depend on the given project.
-
- 17 Nov, 2020 1 commit
-
-
Georges Racinet authored
This one wasn't absorbed. Doesn't seem worth it to make it fit inside that series that predates the flake8 version bump.
-
- 14 Nov, 2020 1 commit
-
-
Georges Racinet authored
See heptapod#368 Now with two sets of scenarios with various refusals, and the check that accepting Merge Requests is recognized to go through another set of permissions (very important to avoid locking situations) --HG-- branch : stable
-
- 03 Nov, 2020 12 commits
-
-
Georges Racinet authored
This is again cleaner, and ultimately the reason why we've put a long timeout and `cleanup_teardown()` in `Project.__exit__()`, even though it's much less necessary now than it was before we made Project names unique.
-
Georges Racinet authored
Less pollution, even though try…finally wasn't so bad.
-
Georges Racinet authored
-
Georges Racinet authored
This works, but we still have uncertainties about MR creation prompt on push and the expected pipelines, so we don't test these.
-
Georges Racinet authored
This will allow for nicer cleanups, especially for those created in tests. We're adopting the strong cleanup capability and the larger timeout in `Project.__exit__()` to mimic what the Project fixtures do, in the hope to have them simply use the new Context Managers.
-
Georges Racinet authored
We chose to pass a whole Project instance, because it's seem very unlikely we'd have a use case for passing an id (caller would have created the target Project or would use a fixture), and therefore it makes things simpler on the average for the caller.
-
Georges Racinet authored
We already had a persistent normal user and the `external_user` fixture. This one is not external.
-
Georges Racinet authored
Proper testing of Git operation will need this.
-
Georges Racinet authored
A bit cleaner this way. One day, we may reduce the duplication by introducing a proper MergeRequest object.
-
Georges Racinet authored
Amazingly, the `owner_api_request()` shortcut was all we needed for a long time, but we'll now will need to be able to pass the user explicitely.
-
Georges Racinet authored
-
Georges Racinet authored
This will help reducing the boiler plate and over long statements. Leveraging in test_import for immediate testing.
-
- 17 Nov, 2020 5 commits
-
-
Georges Racinet authored
The good thing is that we finally get back to sanity with boolean operators. This is now legit: if something and othercondition:
-
Georges Racinet authored
Notably, we're using `l` as a variable in short list comprehensions only (ambiguity with 1 is not a problem with any decent terminal font). This is just fine, E741 is a pain.
-
Georges Racinet authored
This way, we won't depend from Docker Hub rate limiting.
-
Georges Racinet authored
It's time to get rolling.
-
Georges Racinet authored
In the case where several jobs happen to run on the same Docker host, it's important to avoid that they use the same services. Otherwise, the first completion breaks the ones still running, because it shuts down the services they rely on. Of course, it's better not to have such voracious jobs in parallel, but that's a different issue.
-
- 31 Oct, 2020 1 commit
-
-
Georges Racinet authored
It's still far from being comprehensive, but it did catch something to be fixed.
-