Closed Bug 1410513 Opened 3 years ago Closed 3 years ago

Teach taskgraph to get try details for try-comm-central pushes.

Categories

(Thunderbird :: Build Config, defect, P2)

defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: tomprince, Assigned: tomprince)

References

Details

Attachments

(4 files)

Currently it looks at the revisions of mozilla-central to get try-syntax from.
Comment on attachment 8924758 [details]
Bug 1410513: Use try_tasks as target method on try-comm-central;

https://reviewboard.mozilla.org/r/195980/#review201448

::: taskcluster/taskgraph/decision.py:208
(Diff revision 1)
>  
>      # if try_task_config.json is present, load it
>      task_config_file = os.path.join(os.getcwd(), 'try_task_config.json')
>  
>      # load try settings
> -    if project == 'try':
> +    if 'try' in project:

maybe `parameters['target_tasks_method'] == 'try_tasks'` instead?  What if we make a project branch named `ostrya`?
Attachment #8924758 - Flags: review?(dustin) → review+
Comment on attachment 8924759 [details]
Bug 1410513: Treeherder group names from config file;

https://reviewboard.mozilla.org/r/195982/#review201460

I like this -- it is a good solution for data in that awkward place between "yaml job description" and code.

::: taskcluster/taskgraph/config.py:7
(Diff revision 1)
> +from voluptuous import Required
> +
> +graph_config_schema = Schema({
> +    Required('treeherder'): {
> +        # Mapping of treeherder group symbols to descriptive names
> +        Required('group-names'): {basestring: basestring}

++ for adding a schema :)

::: taskcluster/taskgraph/generator.py:213
(Diff revision 1)
> +            config = yaml.load(f)
> +
> +        return validate_graph_config(config)
>  
>      def _run(self):
> +        logger.info("Loading global configuration.")

"graph configuration"?
Attachment #8924759 - Flags: review?(dustin) → review+
Comment on attachment 8924760 [details]
Bug 1410513: Move ridealong build configuration to ci/config.yml;

https://reviewboard.mozilla.org/r/195984/#review201464

::: taskcluster/taskgraph/config.py:2
(Diff revision 1)
>  from .util.schema import validate_schema, Schema
> -from voluptuous import Required
> +from voluptuous import Required, Optional

unused?

::: taskcluster/taskgraph/try_option_syntax.py
(Diff revision 1)
> -        'sm-asan',
> -        'sm-mozjs-sys',
> -        'sm-msan',
> -        'sm-fuzzing',
> -        'sm-rust-bindings',
> -    ],

note that this will likely conflict with bug 1413721

::: taskcluster/taskgraph/try_option_syntax.py:327
(Diff revision 1)
>  
>      def parse_platforms(self, platform_arg, full_task_graph):
>          if platform_arg == 'all':
>              return None
>  
> +        RIDEALONG_BUILDS = self.graph_config['ridealong-builds']

I think I'd rather see `self.graph_config['try']['ridealong-builds']` here, otherwise "graph config" is a subtree of itself.
Attachment #8924760 - Flags: review?(dustin) → review+
Comment on attachment 8924758 [details]
Bug 1410513: Use try_tasks as target method on try-comm-central;

https://reviewboard.mozilla.org/r/195980/#review201448

> maybe `parameters['target_tasks_method'] == 'try_tasks'` instead?  What if we make a project branch named `ostrya`?

That was what I originally had, but then I noticed that there are a few places (such as [here](https://dxr.mozilla.org/mozilla-central/source/taskcluster/taskgraph/transforms/build.py#49)) that look at these parameters even if `target_task_method` isn't `try_tasks`.

It is the same logic which I used [here](https://reviewboard.mozilla.org/r/191262/diff/1#index_header), for which I filed [Bug 1410255](https://bugzilla.mozilla.org/show_bug.cgi?id=1410255). Given the above and that but, I think it makes sense to keep the condition the same, so that it'll be easier to find the conditions when 1410255 is dealt with.
We're sorry, Autoland could not rebase your commits for you automatically. Please manually rebase your commits and try again.

hg error in cmd: hg rebase -s 12f72395c780 -d 516690579442: rebasing 432063:12f72395c780 "Bug 1410513: Use try_tasks as target method on try-comm-central; r=dustin"
rebasing 432064:001d81ce67ee "Bug 1410513: Treeherder group names from config file; r=dustin"
merging taskcluster/taskgraph/generator.py
merging taskcluster/taskgraph/test/test_generator.py
merging taskcluster/taskgraph/transforms/task.py
rebasing 432065:4c8fd6a52e35 "Bug 1410513: Move ridealong build configuration to ci/config.yml; r=dustin" (tip)
merging taskcluster/taskgraph/generator.py
merging taskcluster/taskgraph/test/test_generator.py
warning: conflicts while merging taskcluster/taskgraph/test/test_generator.py! (edit, then use 'hg resolve --mark')
unresolved conflicts (see hg resolve, then hg rebase --continue)
Pushed by mozilla@hocat.ca:
https://hg.mozilla.org/integration/autoland/rev/713b8f8146a2
Use try_tasks as target method on try-comm-central; r=dustin
https://hg.mozilla.org/integration/autoland/rev/69c60c8fc528
Treeherder group names from config file; r=dustin
https://hg.mozilla.org/integration/autoland/rev/f8903937a76e
Move ridealong build configuration to ci/config.yml; r=dustin
Pushed by mozilla@hocat.ca:
https://hg.mozilla.org/comm-central/rev/bae7ea206ae9
Add treeherder groupnames to taskgraph configuration; r=me CLOSED TREE DONTBUILD
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Depends on: 1415199
Depends on: 1415256
You need to log in before you can comment on or make changes to this bug.