Commit Graph

2454 Commits

Author SHA1 Message Date
Loic Dachary
2e5d1703b9 erasure-code: str() to avoid + conversion errors
if the value from the yaml file is an int, it must be converted into a
string bevore being concatenated with '='

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-07-01 12:19:54 +02:00
Zack Cerza
0164f91de0 Merge pull request #271 from dachary/wip-erasure-code-profile
erasure-code: separate profile from pool creation
2014-06-30 17:46:19 -06:00
Zack Cerza
32d094a402 Fix linter errors
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-30 17:43:54 -06:00
Loic Dachary
98e0617651 erasure-code: separate profile from pool creation
Instead of being hard coded, the erasure code profile is read from yaml
as:

    erasure_code_profile:
      name: teuthologyprofile
      k: 2
      m: 1
      ruleset-failure-domain: osd

Which translates into

    ceph osd erasure-code-profile set teuthologyprofile \
        k=2 m=1 ruleset-failure-domain=osd

The semantic of k/m etc. depends on the erasure code plugin, but it is
common to use k as the dividing factor for each object and m as the
number of coding chunks.

Using a different set of parameters or a different plugin can
be done without modifying the teuthology code:

    erasure_code_profile:
      name: LRCprofile
      plugin: LRC
      mapping: __DD__DD
      layers: [[ "_cDD_cDD", "" ], [ "cDDD____", "" ], [ "____cDDD", ""]]

For backward compatibility, the default erasure code profile is set to

      k: 2
      m: 1
      ruleset-failure-domain: osd

which matches the previously hardcoded default of the corresponding
functions.

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-06-30 22:43:57 +02:00
Zack Cerza
84635d8b27 Merge pull request #233 from ceph/wip-background
run something in the background
2014-06-30 14:38:08 -06:00
Sage Weil
7e388c9f20 background_exec: run something in the background
This is a contextmanager task that will run some command in the background
for the duration of any subsequent tasks, and kill it in the cleanup
phase.

Signed-off-by: Sage Weil <sage@inktank.com>
2014-06-30 13:35:53 -07:00
Sage Weil
1cd8076543 daemon-helper: optional kill an entire process group
Signed-off-by: Sage Weil <sage@inktank.com>
2014-06-30 13:35:53 -07:00
Zack Cerza
6b94807595 Use corrected tube_name
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-27 14:42:18 -06:00
Zack Cerza
8583306769 Return corrected tube_name
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-27 14:41:58 -06:00
Zack Cerza
491999beef Use teuthology.beanstalk
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-27 14:34:39 -06:00
Zack Cerza
7d2388b42c Merge pull request #274 from dachary/wip-facet
document how to specify a facet in teuthology-suite
2014-06-27 10:07:04 -06:00
Loic Dachary
09baca9f33 document how to specify a facet in teuthology-suite
Signed-off-by: Loic Dachary <loic@dachary.org>
2014-06-27 18:04:05 +02:00
Zack Cerza
2e18fddb6f Only delete jobs that match the pattern
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:24 -06:00
Zack Cerza
e7323da58b Swap order of job_id and run_name when deleting
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:24 -06:00
Zack Cerza
f4321b0519 Skip the kernel stanza if the branch passed is '-'
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:24 -06:00
Zack Cerza
ba1eae988e Add more docstrings
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:24 -06:00
Zack Cerza
e1597a036f No need to explicitly return None here
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:24 -06:00
Zack Cerza
667a223f03 Update unit tests to reflect renamed function
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:24 -06:00
Zack Cerza
7082a3dff0 Add a few more docstrings and a debug statement
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:23 -06:00
Zack Cerza
743edd6b70 Fix a couple linter errors
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:23 -06:00
Zack Cerza
6df3b13452 Remove schedule_suite.sh
Its entire functionality is now provided by teuthology-schedule.

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:23 -06:00
Zack Cerza
173c7b84f6 Fix bug where the base yaml wasn't being merged
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:23 -06:00
Zack Cerza
fd13a18c83 With dry_run, quote any individual args
So that individual commands can be copied and pasted
in order to execute them individually.

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:23 -06:00
Zack Cerza
b6cb3f8cb7 Add lots of unit tests for teuthology.suite
More to come...

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:23 -06:00
Zack Cerza
91c7385988 Raise ScheduleFailError even if not sending email
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:23 -06:00
Zack Cerza
356ab7e06d Do everything that schedule_suite.sh does
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:23 -06:00
Zack Cerza
15317083f9 Add default results_email
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:23 -06:00
Zack Cerza
89b38dd347 Don't schedule an email job if email isn't set
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:23 -06:00
Zack Cerza
26fdef0a75 Split prepare_and_schedule() out of main()
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:23 -06:00
Zack Cerza
1be15edbcb Use the return value of schedule_suite()
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:23 -06:00
Zack Cerza
3b69efa2af Organize arguments into logical sections
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:22 -06:00
Zack Cerza
b790c4dad4 Tweak usage formatting
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:22 -06:00
Zack Cerza
19d73071d1 Don't reread the entire yaml file...
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:22 -06:00
Zack Cerza
d92f538549 Remove unused functions
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:22 -06:00
Zack Cerza
0aabafd65f 'and' is a thing
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:22 -06:00
Zack Cerza
675f087b28 Take machine_type instead of worker
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:22 -06:00
Zack Cerza
d14c44f4e2 Add functions for querying gitbuilder repos
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:22 -06:00
Zack Cerza
4fed92c039 Silence connection pool logging
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:22 -06:00
Zack Cerza
ef9638a26a Remove 'template' feature
Neither Sage nor I could find anything that used it

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:22 -06:00
Zack Cerza
43505b2ace Only allow scheduling one suite per call.
Also remove all traces of the extra and confusing term 'collection'

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:22 -06:00
Zack Cerza
f5af797ce3 Port to docopt
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:22 -06:00
Zack Cerza
1ccbff8dbf Refactor collection scheduling out of main()
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-25 12:54:22 -06:00
Zack Cerza
3134a32018 If archive_base is None, use config's
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-24 11:07:02 -06:00
Alfredo Deza
0b78592af0 Merge pull request #272 from ceph/release
Create a python package for teuthology
2014-06-23 11:09:01 -04:00
Zack Cerza
a312f9af04 Update setup.py
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-20 14:06:21 -04:00
Zack Cerza
5cd50a42be Allow killing jobs by passing a 'jobspec'.
See teuthology-kill --help

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-20 11:39:47 -04:00
Zack Cerza
fc772d7354 Add a couple tests for teuthology.schedule
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-19 14:11:56 -04:00
Zack Cerza
ec422a94fc Make conf_file optional
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-16 10:19:54 -06:00
Zack Cerza
0cb6b71916 Add .ropeproject to .gitignore
I use a vim plugin that creates lots of directories with that name

Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-13 13:47:56 -05:00
Zack Cerza
09d3f9167e Add [--] to usage statement
Signed-off-by: Zack Cerza <zack.cerza@inktank.com>
2014-06-12 13:23:19 -05:00