Merge lp:~fginther/ubuntu-ci-services-itself/usage-doc-updates into lp:ubuntu-ci-services-itself

Proposed by Francis Ginther
Status: Merged
Approved by: Vincent Ladeuil
Approved revision: 385
Merged at revision: 388
Proposed branch: lp:~fginther/ubuntu-ci-services-itself/usage-doc-updates
Merge into: lp:ubuntu-ci-services-itself
Diff against target: 136 lines (+96/-15)
1 file modified
docs/usage.rst (+96/-15)
To merge this branch: bzr merge lp:~fginther/ubuntu-ci-services-itself/usage-doc-updates
Reviewer Review Type Date Requested Status
Andy Doan (community) Approve
PS Jenkins bot (community) continuous-integration Approve
Francis Ginther Needs Resubmitting
Review via email: mp+210911@code.launchpad.net

Commit message

Add usage documentation to cover creating a launchpad account, creating source packages and other usage updates.

Description of the change

Add usage documentation to cover creating a launchpad account, creating source packages and other usage updates.

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

PASSED: Continuous integration, rev:383
http://s-jenkins.ubuntu-ci:8080/job/uci-engine-ci/412/
Executed test runs:

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/uci-engine-ci/412/rebuild

review: Approve (continuous-integration)
Revision history for this message
Chris Johnston (cjohnston) wrote :

On Thu, Mar 13, 2014 at 5:24 PM, Francis Ginther <
<email address hidden>> wrote:

> +* Download a source package of interest
> +
> +.. code-block:: none
> +
> + apt-get download <package_name>
> +
>

This only works if the user is on saucy I believe. Are we guaranteed that
all users will be on saucy?

+Ubuntu CI Engine requests, known as tickets, are created through a command
> line
> +interface.
> +
> +.. code-block:: none
> +
> + python ubuntu-ci create_ticket -t "Ticket name" -d "Ticket description"
> -b 123 -o <email address hidden> -a "foo,bar" -r "baz" -s
> /full/path/to/_source.changes -s /full/path/to/_source.changes
>
>
If the CLI is actually packaged, I don't believe they would need the
'python' portion of the command. How are we handling the ~/.ubuntu-ci
requirement? Unless it's shipped and ready to go with the package, we need
to document something about it.

Revision history for this message
Francis Ginther (fginther) wrote :

> On Thu, Mar 13, 2014 at 5:24 PM, Francis Ginther <
> <email address hidden>> wrote:
>
> > +* Download a source package of interest
> > +
> > +.. code-block:: none
> > +
> > + apt-get download <package_name>
> > +
> >
>
> This only works if the user is on saucy I believe. Are we guaranteed that
> all users will be on saucy?

Correct. There are some deeper assumptions in setting up an environment for creating source packages. I'm now considering removing this. If I can't concisely describe the setup in a handful of steps, then it really doesn't belong in this document. Better documentation for generating source packages exists elsewhere, I should just link to that.

> +Ubuntu CI Engine requests, known as tickets, are created through a command
> > line
> > +interface.
> > +
> > +.. code-block:: none
> > +
> > + python ubuntu-ci create_ticket -t "Ticket name" -d "Ticket description"
> > -b 123 -o <email address hidden> -a "foo,bar" -r "baz" -s
> > /full/path/to/_source.changes -s /full/path/to/_source.changes
> >
> >
> If the CLI is actually packaged, I don't believe they would need the
> 'python' portion of the command. How are we handling the ~/.ubuntu-ci
> requirement? Unless it's shipped and ready to go with the package, we need
> to document something about it.

Good point. I need to mention the ~/.ubuntu-ci file because it's not part of the package and needs to be configured based on the deployed system the user is interacting with.

Revision history for this message
Andy Doan (doanac) wrote :

93 + python ubuntu-ci

if ubuntu-ci is installed you shouldn't need to prefix with "python"

384. By Francis Ginther

Remove the source package tutorial, add details for .ubuntu-ci.

385. By Francis Ginther

Remove 'python' from ubuntu-ci command.

Revision history for this message
Francis Ginther (fginther) wrote :

This should address the comments:

1) removed python from ubuntu-ci command line.
2) removed mini source package guide
3) added info on the ~/.ubuntu-ci file

review: Needs Resubmitting
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

PASSED: Continuous integration, rev:384
http://s-jenkins.ubuntu-ci:8080/job/uci-engine-ci/416/
Executed test runs:

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/uci-engine-ci/416/rebuild

review: Approve (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

PASSED: Continuous integration, rev:385
http://s-jenkins.ubuntu-ci:8080/job/uci-engine-ci/418/
Executed test runs:

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/uci-engine-ci/418/rebuild

review: Approve (continuous-integration)
Revision history for this message
Andy Doan (doanac) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'docs/usage.rst'
--- docs/usage.rst 2014-03-13 18:35:32 +0000
+++ docs/usage.rst 2014-03-14 04:33:31 +0000
@@ -5,12 +5,64 @@
5As the Ubuntu CI Engine evolves through development, the usage will become5As the Ubuntu CI Engine evolves through development, the usage will become
6more user friendly and more robust.6more user friendly and more robust.
77
8Submitting a Ticket8Prerequisites
9-------------------9-------------
1010
11CI requests, known as tickets, are created through a command line interface. ::11The Ubuntu CI Engine current only processes source packages as input. These
1212source packages will be uploaded unmodified into a Launchpad PPA. As a result,
13 python ubuntu-ci create_ticket -t "Ticket name" -d "Ticket description" -b 123 -o user@example.com -a "foo,bar" -r "baz" -s /full/path/to/_source.changes -s /full/path/to/_source.changes13the source packages used as input must be signed by a user with permission to
14upload to the PPAs used by the Ubuntu CI Engine. These teams will be managed
15through Launchpad team membership granted via a CI team member.
16
17**Launchpad Setup**
18
19Prior to creating a source package to upload and a ticket, a user will need
20setup a Launchpad account and OpenPGP key:
21
22* Create an https://launchpad.net/ account.
23* Create and upload an OpenPGP key to Launchpad. Instructions are available
24 at https://help.launchpad.net/YourAccount/ImportingYourPGPKey.
25
26**Creating a Source Package**
27
28Once the account setup is complete, users can create source packages. A full
29tutorial on creating and modifying source packages are beyond the scope of this
30document. There are many Ubuntu development and packaging guides available
31including:
32
33* http://packaging.ubuntu.com/html/
34* https://wiki.ubuntu.com/UbuntuDevelopment
35
36Configuring the Ubuntu CI Engine Client
37---------------------------------------
38
39The Ubuntu CI Engine is deployed as a cloud service. The client module must be
40configured with a settings file to connect to the service running in the cloud
41and supply the necessary credentials. These settings are saved under the file
42*~/.ubuntu-ci* with the following format:
43
44.. code-block:: none
45
46 auth_url: <nova $OS_AUTH_URL>
47 auth_user: <nova $OS_USERNAME>
48 auth_password: <nova $OS_PASSWORD>
49 auth_tenant_name: <nova $OS_TENANT_NAME>
50 auth_region: <nova $OS_REGION_NAME>
51 ci_url: <URL for the ts-django service>
52
53.. note::
54 All of these settings are obtained by the Ubuntu CI Engine administrator
55 once the services have been deployed to the cloud.
56
57Creating a Ticket
58-----------------
59
60Ubuntu CI Engine requests, known as tickets, are created through a command line
61interface.
62
63.. code-block:: none
64
65 ubuntu-ci create_ticket -t "Ticket name" -d "Ticket description" -b 123 -o user@example.com -a "foo,bar" -r "baz" -s /full/path/to/_source.changes -s /full/path/to/_source.changes
1466
15This returns a ticket ID which can later be used to monitor and check for67This returns a ticket ID which can later be used to monitor and check for
16results. Once the ticket is created, the Ubuntu CI Engine does the rest. The68results. Once the ticket is created, the Ubuntu CI Engine does the rest. The
@@ -18,17 +70,47 @@
18First Out) order. As the system is limited to processing one ticket at a time,70First Out) order. As the system is limited to processing one ticket at a time,
19it may take multiple hours for a single ticket to be completed.71it may take multiple hours for a single ticket to be completed.
2072
21Parts of a ticket specification73Parts of a ticket submission
22~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~74~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2375
24The input for a ticket is one or more source packages and optionally, a list76The general input specification for a ticket is one or more source packages and
25of binary package names to add to or remove from the image that will be77a list of binary package names to add to or remove from the image that will be
26generated.78generated. These are specified with the appropriate create_ticket arguments.
79The full set of required and optional create_ticket arguments are:
80
81.. code-block:: none
82
83 usage: ubuntu-ci create_ticket [-h] -t TITLE -d DESCRIPTION [-b BUG] -o OWNER
84 -a ADD [-r REMOVE] -s SOURCES
85
86 optional arguments:
87 -h, --help show this help message and exit
88 -t TITLE, --title TITLE
89 Ticket title
90 -d DESCRIPTION, --description DESCRIPTION
91 Ticket description
92 -b BUG, --bug BUG Related bug number
93 -o OWNER, --owner OWNER
94 Email address of the ticket owner
95 -a ADD, --add ADD Binaries to be added to the install
96 -r REMOVE, --remove REMOVE
97 Binaries to be removed from the install
98 -s SOURCES, --sources SOURCES
99 Path to source.changes files. Source package files
100 (e.g. source.dsc, source.orig.tar.gz, etc.) are
101 required to be in the same directory as their
102 respective source.changes.
103
104.. note::
105 The -t and -d arguments can be specified with a quoted text string. The -a and
106 -r arguments can be used to specify a single package or a list of comma
107 separated packages.
27108
28Ticket Defaults109Ticket Defaults
29~~~~~~~~~~~~~~~110~~~~~~~~~~~~~~~
30111
31Images are produced from a default source image and series.112Images are produced from a default source image and series, which is currently
113based on Ubuntu 13.10 (saucy).
32114
33Specification of a source package115Specification of a source package
34~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~116~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -127,5 +209,4 @@
127209
128 $ subunit-1to2 <subunit.stream | subunit2junitxml >results.xml210 $ subunit-1to2 <subunit.stream | subunit2junitxml >results.xml
129211
130This produces a 'results.xml' file suitable for jenkins.212This produces a 'results.xml' file in the junitxml format.
131

Subscribers

People subscribed via source and target branches