Closed Bug 432883 Opened 16 years ago Closed 16 years ago

talos config file unification and automation

Categories

(Release Engineering :: General, defect, P2)

defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: anodelman, Assigned: anodelman)

References

Details

Attachments

(4 files)

We currently have talos production, stage and try config files checked with the associated buildbot code along with a standard config file in the talos code base.  Adding a single new pref can involve editing and updating upwards of 7 or 8 files along with then doing reconfigs on 3 different buildbots.

To stop the chaos we need:
1 - less config files.  All of the talos configs are nearly identical, it should be possible to have a base config file that is then altered as necessary
2 - automatic config file updates.  If a changes to a config file is checked in it should be automatically applied to the next talos run.
Priority: -- → P3
I've got an initial patch put together here for having PerfConfigurator.py fully configure the checked in talos config template provided in the talos cvs directory (sample.config).

This would change the order of operations a little bit.  Instead of each talos machine downloading a full config file it would work from a checked out template that would be altered per test run.  This would have several benefits:

- make an alteration to the talos config template and have it propagate immediately with no further intervention 
- no more need to have 8 or 9 different talos config files checked in resulting in a simplification of the talos buildbot directory structure along with less likelyhood of copy/paste errors
Priority: P3 → P2
The idea behind this is to have a single copy of the talos config file checked into the talos cvs directory.  Each talos factory then just customizes that single config file on a per-test run basis (setting graph server values, turning on and off tests, setting chrome, etc).  In this way we could change the overall preferences that are tested with in a single check in.  This also eliminates a lot of risk from cut and paste errors.

As a phase 2 I'd like to rewrite how talos uses config files to try and make it simpler so that we wouldn't have to go through so many steps to get to a working configuration. 
Comment on attachment 331214 [details] [diff] [review]
[Checked in]PerfConfigurator additional options for graph server/controlling tests

stamp...
Attachment #331214 - Flags: review?(bhearsum) → review+
Attachment #331215 - Flags: review?(bhearsum) → review+
Comment on attachment 331214 [details] [diff] [review]
[Checked in]PerfConfigurator additional options for graph server/controlling tests

Checking in PerfConfigurator.py;
/cvsroot/mozilla/testing/performance/talos/PerfConfigurator.py,v  <--  PerfConfigurator.py
new revision: 1.5; previous revision: 1.4
done
Attachment #331214 - Attachment description: PerfConfigurator additional options for graph server/controlling tests → [Checked in]PerfConfigurator additional options for graph server/controlling tests
Comment on attachment 331215 [details] [diff] [review]
[Checked in]have talos stage/production use the new PerfConfigurator options

Checking in perfmaster2/perfrunner.py;
/cvsroot/mozilla/tools/buildbot-configs/testing/talos/perfmaster/perfrunner.py,v  <--  perfrunner.py
new revision: 1.22; previous revision: 1.21
done
Checking in perfmaster2/master.cfg;
/cvsroot/mozilla/tools/buildbot-configs/testing/talos/perfmaster/master.cfg,v  <--  master.cfg
new revision: 1.75; previous revision: 1.74
done
Checking in perf-staging/master.cfg;
/cvsroot/mozilla/tools/buildbot-configs/testing/talos/perf-staging/master.cfg,v  <--  master.cfg
new revision: 1.19; previous revision: 1.18
done
Attachment #331215 - Attachment description: have talos stage/production use the new PerfConfigurator options → [Checked in]have talos stage/production use the new PerfConfigurator options
No longer necessary now that the other patches have landed.  If you're keeping count that is 6 less checked in talos config files.
Attachment #332811 - Flags: review?(bhearsum)
Comment on attachment 332811 [details] [diff] [review]
[Checked in]remove sample.configs for talos production/stage

awesome.
Attachment #332811 - Flags: review?(bhearsum) → review+
Attachment #332829 - Flags: review?(bhearsum) → review+
Comment on attachment 332811 [details] [diff] [review]
[Checked in]remove sample.configs for talos production/stage

Removing perfmaster2/configs/fast.production.sample.config;
/cvsroot/mozilla/tools/buildbot-configs/testing/talos/perfmaster/configs/fast.production.sample.config,v  <--  fast.production.sample.config
new revision: delete; previous revision: 1.7
done
Removing perfmaster2/configs/jss.production.sample.config;
/cvsroot/mozilla/tools/buildbot-configs/testing/talos/perfmaster/configs/jss.production.sample.config,v  <--  jss.production.sample.config
new revision: delete; previous revision: 1.6
done
Removing perfmaster2/configs/production.sample.config;
/cvsroot/mozilla/tools/buildbot-configs/testing/talos/perfmaster/configs/production.sample.config,v  <--  production.sample.config
new revision: delete; previous revision: 1.9
done
Removing perfmaster2/configs/production.sample.config.nochrome;
/cvsroot/mozilla/tools/buildbot-configs/testing/talos/perfmaster/configs/production.sample.config.nochrome,v  <--  production.sample.config.nochrome
new revision: delete; previous revision: 1.6
done
Removing perfmaster2/configs/production.sample.config.nogfx;
/cvsroot/mozilla/tools/buildbot-configs/testing/talos/perfmaster/configs/production.sample.config.nogfx,v  <--  production.sample.config.nogfx
new revision: delete; previous revision: 1.9
done
Removing perf-staging/configs/sample.config;
/cvsroot/mozilla/tools/buildbot-configs/testing/talos/perf-staging/configs/sample.config,v  <--  sample.config
new revision: delete; previous revision: 1.6
done
Attachment #332811 - Attachment description: remove sample.configs for talos production/stage → [Checked in]remove sample.configs for talos production/stage
Comment on attachment 332829 [details] [diff] [review]
[Checked in]same as before, but for talos try (update to master.cfg/perfrunner)

cvs commit: Examining configs
Checking in perfrunner.py;
/cvsroot/mozilla/tools/buildbot-configs/testing/talos/tryperfmaster/perfrunner.py,v  <--  perfrunner.py
new revision: 1.9; previous revision: 1.8
done
Checking in master.cfg;
/cvsroot/mozilla/tools/buildbot-configs/testing/talos/tryperfmaster/master.cfg,v  <--  master.cfg
new revision: 1.6; previous revision: 1.5
done
Removing configs/sample.config;
/cvsroot/mozilla/tools/buildbot-configs/testing/talos/tryperfmaster/configs/sample.config,v  <--  sample.config
new revision: delete; previous revision: 1.6
done
Attachment #332829 - Attachment description: same as before, but for talos try (update to master.cfg/perfrunner) → [Checked in]same as before, but for talos try (update to master.cfg/perfrunner)
Applied cleanly to the production try server.

That would be a total of 7 config files removed.  Down to one centralized talos config file that all talos factories use.  Should be very easy in future to make alterations (ie, additional prefs, more tests, etc) and have them take effect immediately.
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Depends on: 450401
This caused regression bug 450401 due to an inadvertant change from tp-cycles 10 to tp-cycles 5.  Fixed in bug 457582.
Component: Release Engineering: Talos → Release Engineering
Product: mozilla.org → Release Engineering
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: