- 04 Jan, 2020 1 commit
-
-
Georges Racinet authored
We have two new options: --heptapod-source-install --heptapod-repositories-root In source installs, as provided by the GitLab Development Kit (GDK), we obviously don't have docker commands, but we have direct access to processes and filesystem paths. To support that, we move the Heptapod class to its own module, and split it in a base class with two subclasses. We also introduce higher level file manipulation, using the tar file uploads as before in the Docker case, and direct file manipulation in the source case. We drop the artificial flexibility we had about uid/gid: they aren't usable in the source case, and they are fixed in the Docker case anyway. Also, the SSH url have to be different, because it's the current user in the source case.
-
- 01 Jan, 2020 7 commits
-
-
Georges Racinet authored
Having the same default as the GDK will be convenient in the future.
-
Georges Racinet authored
It was obvioulsy the path to the hg repository. Now it's consistent with the docstring.
-
Georges Racinet authored
-
Georges Racinet authored
-
Georges Racinet authored
The container name is now stored as an attribute on the Heptapod instance, and it's been a good opportunity to centralize docker calls there. Since we're not mentioning docker at all in the API, this is also a step towards running these tests on a source install of Heptapod: it wouldn't be hard to implement them with subprocess and direct filesystem manipulations.
-
Georges Racinet authored
This is done with py.test CLI options. Instead of the cumbersome scheme/host/port, we're simply adding a --heptapod-url option. There's a separate --heptapod-ssh-port
-
Georges Racinet authored
Now the server's SSH key is automatically accepted and previous keys are forgotten.
-
- 23 Dec, 2019 1 commit
-
-
Georges Racinet authored
-
- 14 Dec, 2019 6 commits
-
-
Georges Racinet authored
we test read and write permissions, still miss publish permission
-
Georges Racinet authored
This new method can prepare ssh command and URL for any user. Also an opportunity to rename also the `owner_ssh` property.
-
Georges Racinet authored
we use cloning over HTTP to validate that it works
-
Georges Racinet authored
A new method that returns a detailed command and an URL to perform SSH operations on the repository of the project.
-
Georges Racinet authored
We embed two freshly created SSH keys for these tests, and provide the necessary infrastructure to register them in Heptapod and retrieve them in the tests.
-
Georges Racinet authored
From now on, the forwarded ports of the Heptapod container will have to be on the `heptapod` host, as explained in README. The Heptapod object now has a `ssh_url` property that will serve as the base for performing hg commands over SSH.
-
- 21 Dec, 2019 1 commit
-
-
Georges Racinet authored
Once all tasks related to heptapod#144 are done, inner push over ssh just can't work.
-
- 23 Dec, 2019 3 commits
-
-
Georges Racinet authored
This helper method will make many of our tests more readable. Just demonstrating for one, as there are too many to convert.
-
Georges Racinet authored
This will make tests entailing permission changes more readable
-
Georges Racinet authored
In these tests, we can do it in advance
-
- 03 Dec, 2019 1 commit
-
-
Georges Racinet authored
This works right away, has been written while investigating heptapod#131 and heptapod#99
-
- 02 Dec, 2019 3 commits
-
-
Georges Racinet authored
This reproduces heptapod#134, adding the case of the retargetting (i.e., branch of topic changeset has changed) and a sanity check for the fix.
-
Georges Racinet authored
-
Georges Racinet authored
not essential, but still useful
-
- 19 Nov, 2019 1 commit
-
-
Georges Racinet authored
As explained in the comments, we don't have the nicest API to perform the transfer, but it's good enough.
-
- 25 Nov, 2019 2 commits
-
-
Georges Racinet authored
With hg-git!27 being merged, we have much better guarantees that topics get pushed before named branches. Hence we need to avoid explicitely that topics end up being the Gitlab default branches (see also heptapod#126)
-
Georges Racinet authored
With the changes of hg-git!27, it's become necessary that users still get prompted to file a merge request while pushin on topics (an intermediate version was swallowing those messages) Didn't really dare to include the URL itself in the test, that could be done later.
-
- 15 Nov, 2019 1 commit
-
-
Georges Racinet authored
Related to direct hooks (heptapod#73) we'll be add User and Project ids to the (WSGI) environment variables.
-
- 17 Nov, 2019 2 commits
-
-
Georges Racinet authored
I'm used to retry with `hg_unchecked` and a pdb trace, but it's better to have the information right away.
-
Georges Racinet authored
The advantage is that we can have several levels (currently setting to INFO, but we'll be able to tweak later on).
-
- 07 Nov, 2019 1 commit
-
-
Georges Racinet authored
Heptapod's own WSGI handler does not need prior awaraness of repositories, hence we don't need it to hup it to force repositories scanning anymore.
-
- 17 Nov, 2019 1 commit
-
-
Georges Racinet authored
After we got an initial non-502 response, we can still have some while loading the full page. In truth, that's still not enough to start on empty volumes and blindly launch the tests, but we're getting closer to that goal. The next error is Mercurial pushing to Git too early. To fix that we'll probably have to perform or trigger a full Git push from the tests (we'll see).
-
- 20 Nov, 2019 1 commit
-
-
Georges Racinet authored
We just needed to run in an appropriate image
-
- 19 Nov, 2019 1 commit
-
-
Georges Racinet authored
This will be helpful for heptapod#113. In this version, we don't check redirects, so that we're sure it passes with the latest Docker image. We'll add reproduction test in a topic.
-
- 16 Nov, 2019 1 commit
-
-
Georges Racinet authored
That will be less obvious once we leave `hgwebdir_mod` and even less if our Mercurial HTTP server gets called by Workhorse.
-
- 15 Nov, 2019 3 commits
-
-
Georges Racinet authored
Apparently, in GitLab 10.3, it's become asynchronous, making tests fail randomly.
-
Georges Racinet authored
We'll need it in `create_merge_request()`. It should probably go to a share Selenium helper, but that's good enough for now.
-
Georges Racinet authored
It seems that the default branch becomes protected (FULL) by default in 10.3, which makes all our tests performing actual Git force pushes (not based on -f but on the push really not being fast-forwardable) break. This is a quickfix, we should have tests for various scenarios on protected branches, and they should test user feedback as well (see heptadod#122)
-
- 15 Sep, 2019 1 commit
-
-
Georges Racinet authored
we now have one webdriver per default user
-
- 10 Nov, 2019 2 commits
-
-
Georges Racinet authored
We'll have some testing do to with that
-
Georges Racinet authored
of course this also means adding a new Group helper method to set them
-