Merge ~smoser/cloud-init:doc/hacking-cleanup into cloud-init:master

Proposed by Scott Moser
Status: Merged
Merged at revision: 0efae9c20b8230accfa96febffe6fc0ffb43a969
Proposed branch: ~smoser/cloud-init:doc/hacking-cleanup
Merge into: cloud-init:master
Diff against target: 130 lines (+56/-29)
1 file modified
HACKING.rst (+56/-29)
Reviewer Review Type Date Requested Status
cloud-init Commiters Pending
Review via email: mp+309611@code.launchpad.net

Commit message

doc: improve HACKING.rst file

Put a bit more information and a few style fixes in HACKING.rst.

To post a comment you must log in.

There was an error fetching revisions from git servers. Please try again in a few minutes. If the problem persists, contact Launchpad support.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/HACKING.rst b/HACKING.rst
2index 63a5bde..4072d0f 100644
3--- a/HACKING.rst
4+++ b/HACKING.rst
5@@ -3,28 +3,35 @@ Hacking on cloud-init
6 =====================
7
8 This document describes how to contribute changes to cloud-init.
9+It assumes you have a `Launchpad`_ account, and refers to your launchpad user
10+as ``LP_USER`` throughout.
11
12 Do these things once
13 --------------------
14
15-* If you have not already, be sure to sign the CCA:
16+* To contribute, you must sign the Canonical `contributor license agreement`_
17
18- - `Canonical Contributor Agreement`_
19+ If you have already signed it as an individual, your Launchpad user will be listed in the `contributor-agreement-canonical`_ group. Unfortunately there is no easy way to check if an organization or company you are doing work for has signed. If you are unsure or have questions, email `Scott Moser <mailto:scott.moser@canonical.com>`_ or ping smoser in ``#cloud-init`` channel via freenode.
20
21-* Clone the `LaunchPad`_ repository:
22+* Clone the upstream `repository`_ on Launchpad::
23
24- git clone YOUR_USERNAME@git.launchpad.net:cloud-init
25+ git clone https://git.launchpad.net/cloud-init
26 cd cloud-init
27
28- If you would prefer a bzr style `git clone lp:cloud-init`, see
29- the `Instructions on LaunchPad`_ for more information.
30+ There is more information on Launchpad as a git hosting site in
31+ `Launchpad git documentation`_.
32
33-* Create a new remote pointing to your personal LaunchPad
34- repository::
35+* Create a new remote pointing to your personal Launchpad repository
36
37- git remote add YOUR_USERNAME YOUR_USERNAME@git.launchpad.net:~YOUR_USERNAME/cloud-init
38+ This is equivalent to 'fork' on github::
39
40-.. _Canonical Contributor Agreement: http://www.canonical.com/contributors
41+ git remote add LP_USER git+ssh://LP_USER@git.launchpad.net/~LP_USER/cloud-init
42+ git push LP_USER master
43+
44+.. _repository: https://git.launchpad.net/cloud-init
45+.. _contributor license agreement: http://www.canonical.com/contributors
46+.. _contributor-agreement-canonical: https://launchpad.net/%7Econtributor-agreement-canonical/+members
47+.. _Launchpad git documentation: https://help.launchpad.net/Code/Git
48
49 Do these things for each feature or bug
50 ---------------------------------------
51@@ -33,40 +40,60 @@ Do these things for each feature or bug
52
53 git checkout -b my-topic-branch
54
55-.. _Instructions on launchpad: https://help.launchpad.net/Code/Git
56-
57 * Make and commit your changes (note, you can make multiple commits,
58 fixes, more commits.)::
59
60 git commit
61
62-* Check pep8 and test, and address any issues::
63+* Run unit tests and lint/formatting checks with `tox`_::
64
65- make test pep8
66+ tox
67
68-* Push your changes to your personal LaunchPad repository::
69+* Push your changes to your personal Launchpad repository::
70
71- git push -u YOUR_USERNAME my-topic-branch
72+ git push -u LP_USER my-topic-branch
73
74 * Use your browser to create a merge request:
75
76- - Open the branch on `LaunchPad`_
77+ - Open the branch on Launchpad.
78+
79+ - You can see a web view of your repository and navigate to the branch at:
80+
81+ ``https://code.launchpad.net/~LP_USER/cloud-init/``
82+
83+ - It will typically be at:
84+
85+ ``https://code.launchpad.net/~LP_USER/cloud-init/+git/cloud-init/+ref/BRANCHNAME``
86+
87+ for example, here is larsks move-to-git branch: https://code.launchpad.net/~larsks/cloud-init/+git/cloud-init/+ref/feature/move-to-git
88+
89+ - Click 'Propose for merging'
90+ - Select 'lp:cloud-init' as the target repository
91+ - Type '``master``' as the Target reference path
92+ - Click 'Propose Merge'
93+ - On the next page, hit 'Set commit message' and type a git combined git style commit message like::
94+
95+ Activate the frobnicator.
96+
97+ The frobnicator was previously inactive and now runs by default.
98+ This may save the world some day. Then, list the bugs you fixed
99+ as footers with syntax as shown here.
100+
101+ The commit message should be one summary line of less than
102+ 74 characters followed by a blank line, and then one or more
103+ paragraphs describing the change and why it was needed.
104
105- - It will typically be at
106- ``https://code.launchpad.net/~YOUR_USERNAME/cloud-init/+git/cloud-init/+ref/BRANCHNAME``
107- for example
108- https://code.launchpad.net/~larsks/cloud-init/+git/cloud-init/+ref/feature/move-to-git
109+ This is the message that will be used on the commit when it
110+ is sqaushed and merged into trunk.
111
112- - Click 'Propose for merging`
113- - Select ``cloud-init`` as the target repository
114- - Select ``master`` as the target reference path
115+ LP: #1
116
117-Then, someone on cloud-init-dev (currently `Scott Moser`_ and `Joshua
118-Harlow`_) will review your changes and follow up in the merge request.
119+Then, someone in the `cloud-init-dev`_ group will review your changes and
120+follow up in the merge request.
121
122-Feel free to ping and/or join ``#cloud-init`` on freenode (irc) if you
123+Feel free to ping and/or join ``#cloud-init`` on freenode irc if you
124 have any questions.
125
126+.. _tox: https://tox.readthedocs.io/en/latest/
127 .. _Launchpad: https://launchpad.net
128-.. _Scott Moser: https://launchpad.net/~smoser
129-.. _Joshua Harlow: https://launchpad.net/~harlowja
130+.. _cloud-init-dev: https://launchpad.net/~cloud-init-dev/+members#active

Subscribers

People subscribed via source and target branches