[PATCH] RFC: CONTRIBUTING: Embrace gitlab

Daniel Vetter daniel.vetter at ffwll.ch
Thu Sep 13 06:46:40 UTC 2018


On Wed, Sep 12, 2018 at 7:59 PM, Daniel Vetter <daniel.vetter at ffwll.ch> wrote:
> On Wed, Sep 12, 2018 at 7:54 PM, Ville Syrjälä
> <ville.syrjala at linux.intel.com> wrote:
>> On Wed, Sep 12, 2018 at 06:46:57PM +0200, Daniel Vetter wrote:
>>> So Rodrigo just broke the gitlab ci on libdrm, I figured perfect time
>>> to start this discussion.
>>>
>>> There's imo 2 reasons to do this:
>>>
>>> - No more "oops, I broke make check". If we use gitlab merge requests
>>>   gitlab CI will test everything, and we can set 2 checkboxes that
>>>   disallow direct pushes (i.e. require merge requests), and that all
>>>   merge requests must pass CI first.
>>>
>>> - maintainer-tools is a small project with a small team and little
>>>   activity. Much easier to figure out the details here than in one of
>>>   our big projects. And there's lots to figure out, which we need to
>>>   be able to explain (and have documented) for our 50+ team, if we
>>>   ever want to use gitlab: commandline tools, emacs modes, best
>>>   practices for setup, ...
>>>
>>> To avoid this being an entirely hypothetical discussion, I've gone
>>> ahead and created a merge request for this:
>>>
>>> https://gitlab.freedesktop.org/drm/maintainer-tools/merge_requests/3
>>>
>>> For keeping up with activity: Go to the main repo, click the alarm
>>> icon (which probably says "Global" now), and change the setting to
>>> "Watch". That should keep you updated on all issues and merge
>>> requests, like with a mailing list.
>>>
>>> v2: Add link to merge request.
>>>
>>> Cc: Jani Nikula <jani.nikula at intel.com>
>>> Cc: Sean Paul <sean at poorly.run>
>>> Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
>>> Cc: Lucas De Marchi <lucas.demarchi at intel.com>
>>> Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
>>> ---
>>>  CONTRIBUTING.rst | 18 ++++++++++++++----
>>>  1 file changed, 14 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst
>>> index c7846e318b7e..636d94e3c0af 100644
>>> --- a/CONTRIBUTING.rst
>>> +++ b/CONTRIBUTING.rst
>>> @@ -1,11 +1,21 @@
>>>  CONTRIBUTING
>>>  ============
>>>
>>> -Submit patches, bug reports, and questions for any of the maintainer tools and
>>> -documentation to the dim-tools at lists.freedesktop.org mailing list.
>>> +Patches should be sent via `GitLab merge requests
>>> +<https://docs.gitlab.com/ce/gitlab-basics/add-merge-request.html>`_.
>>
>> That seems awfully cumbersome to click through some web doodad for every
>> little thing. Is there a decent command line workflow for this?
>
> gitlab is fully scriptable, and there's entire python libraries
> wrapping it, so I'm tempted to use this as the excuse to cut our
> tooling away from bash. With that it should be fairly simple to have
> some convenience wrapper instead of doing everything by hand:
> - push a branch to your own personal repo (maybe go ahead and set that
> as the upstream)
> - create pull request, firing up the text editor for you if you do
> --cover-letter (by default it picks the top commit, which isn't always
> the reasonable thing)
>
> But that's about it really.
>
> Note that if you respin a patch series, you just git push to the same branch.
>
> Anyway, typing this helper is one of the thing we definitely need to figure out.

I just noticed that there's a less clicky way. Just push a new branch
to your private fork:

$ git push maintainer-tools-danvet maintainer-tools:rfc-gitlab -f
Total 0 (delta 0), reused 0 (delta 0)
remote:
remote: To create a merge request for rfc-gitlab, visit:
remote:   https://gitlab.freedesktop.org/danvet/maintainer-tools/merge_requests/new?merge_request%5Bsource_branch%5D=rfc-gitlab
remote:
To gitlab.freedesktop.org:danvet/maintainer-tools.git
 * [new branch]                maintainer-tools -> rfc-gitlab

Then follow that link to create the pull request. Still better to
script this I guess, but fairly convenient as-is. Aside: This is a
per-repo option, see Settings -> General -> Merge Requests -> "Show
link to create/view merge request when pushing from the command line".
It's enabled by default.

Cheers, Daniel


> -Daniel
>
>>> +maintainer-tools are hosted on `freedesktop.org's GitLab
>>> +<https://gitlab.freedesktop.org/drm/maintainer-tools>`_: in order to submit
>>> +code, you should create an account on this GitLab instance, fork the core Weston
>>> +repository, push your changes to a branch in your new repository, and then
>>> +submit these patches for review through a merge request.
>>>
>>> -Please make sure your patches pass the build and self tests by running::
>>> +Gitlab CI will automatically run all tests. You can test your patches locally by
>>> +running::
>>>
>>>    $ make check
>>>
>>> -Push the patches once you have an ack from maintainers (Jani/Daniel).
>>> +All merge requests need an ack from at least one of the committers before it can
>>> +be pushed. Don't push to master directly.
>>> +
>>> +Bug reports, suggestions for improvements and questions for any of the
>>> +maintainer tools and documentation should be filed as new issues.
>>> --
>>> 2.19.0.rc2
>>>
>>> _______________________________________________
>>> dim-tools mailing list
>>> dim-tools at lists.freedesktop.org
>>> https://lists.freedesktop.org/mailman/listinfo/dim-tools
>>
>> --
>> Ville Syrjälä
>> Intel
>
>
>
> --
> Daniel Vetter
> Software Engineer, Intel Corporation
> +41 (0) 79 365 57 48 - http://blog.ffwll.ch



-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch


More information about the dim-tools mailing list