gecko-dev/taskcluster/taskgraph
Gregory Szorc a91e4e11c1 Bug 1290516 - Remove {{project}} from cache path for decision and action tasks; r=dustin
Currently, the gecko-decision and action tasks maintain a separate cache
for each "project" (Firefox repo) source checkout. In my opinion, this
is not necessary.

Separate caches/source checkouts mean a lower chance for a cache hit:
a lower chance that any given worker will have a source checkout readily
available for the "project" being built. They also mean workers store
more data and files in caches.

By using a shared cache for source checkouts, workers will ideally
only have a single source checkout cache and will be pretty much
guaranteed to have a checkout readily available (the main exception
being the first task on a freshly-provisioned worker).

A downside of a shared cache is that workers may spend more time doing
`hg update` operations. e.g. if the last task was from mozilla-release
and the current task is from mozilla-central, thousands of files will
be updated. However, I believe we will still be better off because
separate caches *increase* the probability for a full checkout, which
involves writing ~150,000 files! So I believe this change will lower
the overall amount of VCS work done by workers while possibly
sacrificing the lowest possible execution time (which is achieved by
minimizing the `hg update` work).

It's worth noting that `hg robustcheckout` (which is used by these
tasks) does the equivalent of an `hg purge --all`. This ensures that all
untracked and ignored files from previous tasks are deleted. So there
should be no contamination from previous tasks.

MozReview-Commit-ID: I5Ng3xFEfou

--HG--
extra : rebase_source : db423e5005d1e26d7dfebbbfa28893fc32caef6f
2016-07-29 10:09:06 -07:00
..
task Bug 1289122 - Remove coalescing from PGO try jobs. r=dustin 2016-07-26 00:11:40 +01:00
test Bug 1288567 - Inline create_context_tar; r=dustin 2016-07-25 11:48:20 -07:00
transforms Bug 1289209 - linux64/asan should run on ubuntu12.04 as we leak on 16.04. r=dustin 2016-07-26 13:49:04 -04:00
util Bug 1288567 - Use create_context_tar in generate_context_hash; r=dustin 2016-07-22 12:46:06 -07:00
__init__.py
action.py Bug 1281062 - Create Action Tasks to schedule new jobs. r=dustin 2016-07-11 22:43:58 +05:30
action.yml Bug 1290516 - Remove {{project}} from cache path for decision and action tasks; r=dustin 2016-07-29 10:09:06 -07:00
create.py Bug 1289225: increase createTask concurrency; r=gps,jonasfj 2016-07-25 20:52:43 +00:00
decision.py Bug 1281004: Specify test tasks more flexibly; r=gps; r=gbrown 2016-07-11 23:27:14 +00:00
docker.py Bug 1288567 - Use create_context_tar in generate_context_hash; r=dustin 2016-07-22 12:46:06 -07:00
generator.py Bug 1281004: Specify test tasks more flexibly; r=gps; r=gbrown 2016-07-11 23:27:14 +00:00
graph.py Bug 1280956 - Use in-tree linter job to flake8 test taskcluster directory. r=dustin 2016-06-20 21:06:55 -04:00
optimize.py Bug 1281062 - Create Action Tasks to schedule new jobs. r=dustin 2016-07-11 22:43:58 +05:30
parameters.py Bug 1280956 - Use in-tree linter job to flake8 test taskcluster directory. r=dustin 2016-06-20 21:06:55 -04:00
target_tasks.py Bug 1281004: Specify test tasks more flexibly; r=gps; r=gbrown 2016-07-11 23:27:14 +00:00
taskgraph.py Bug 1285755 - Adding a from_json function to TaskGraph and each Task subclass. r=dustin 2016-07-11 22:39:04 +05:30
try_option_syntax.py merge mozilla-inbound to mozilla-central a=merge 2016-07-20 11:20:15 +02:00