Closed Bug 767503 Opened 12 years ago Closed 12 years ago

make project_branches.py work with new b2g builds

Categories

(Release Engineering :: General, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: bhearsum, Assigned: bhearsum)

Details

Attachments

(2 files, 2 obsolete files)

I tried enabling this initially as part of bug 758425 but I got all sorts of problems with the loops that merge project_branches.py w/ GLOBAL_VARS and PLATFORM_VARS. Need to figure out how to make this work.
Attached patch mirror project branch file (obsolete) — Splinter Review
I figured that the best way to this is to follow the pattern and mirror project_branches.py, too. The duplication sucks, but I'd rather have it than have b2g_config.py be instructed to ignore a bunch of stuff from project_branches.py (eg, signing stuff) or deal with them meaning different things to config.py and b2g_config.py

I've disabled b2g on project branches that don't appear to have a use for it. We should probably check with owners of each branch to confirm, though.

What do you think of this approach, Rail?
Assignee: nobody → bhearsum
Status: NEW → ASSIGNED
Attachment #636420 - Flags: feedback?(rail)
So far this seems to be working in staging: http://dev-master01.build.scl1.mozilla.com:8018/one_line_per_build, so that's good.
Attached patch tested + working patch (obsolete) — Splinter Review
This is slightly updated from the last one with some bug fixes and adjustments to which project branches are enabled. I decided to enable builds for general purpose project branches (eg, ionmonkey, jaegermonkey), because they generally aren't working on super specific features, and want to make sure they don't bust things before they push back. I left it disabled for elm and oak because they're still being used for very desktop-specific things. I plan to blog about this change and ask people to file bugs if they want or don't want the builders for their branch.

I also noticed that b2g_{preproduction,staging}_config.py were importing production_config.py =(, so I fixed them to import the correct config.

I'm happy to take a different approach to this if you guys think there's too much duplication here, so don't hold back!
Attachment #636420 - Attachment is obsolete: true
Attachment #636420 - Flags: feedback?(rail)
Attachment #636676 - Flags: review?(rail)
Attachment #636676 - Flags: review?(catlee)
Comment on attachment 636676 [details] [diff] [review]
tested + working patch

Review of attachment 636676 [details] [diff] [review]:
-----------------------------------------------------------------

::: mozilla/b2g_config.py
@@ +9,5 @@
>  # Note that b2g_localconfig.py is symlinked to one of: {production,staging,preproduction}_b2g_config.py
>  import b2g_localconfig
>  reload(b2g_localconfig)
>  
>  # Can't reload this one because it gets reloaded in another file

this comment isn't relevant any more

@@ +273,5 @@
> +#                value = deepcopy(value)
> +#                if isinstance(value, str):
> +#                    value = value % locals()
> +#                BRANCHES[branch]['platforms'][platform][key] = value
> +

remove this block if it's not required

::: mozilla/b2g_project_branches.py
@@ +61,5 @@
> +# Load up project branches' local values
> +for branch in PROJECT_BRANCHES.keys():
> +    PROJECT_BRANCHES[branch]['tinderbox_tree'] = PROJECT_BRANCHES[branch].get('tinderbox_tree', branch.title())
> +    PROJECT_BRANCHES[branch]['mobile_tinderbox_tree'] = PROJECT_BRANCHES[branch].get('mobile_tinderbox_tree', branch.title())
> +    PROJECT_BRANCHES[branch]['packaged_unittest_tinderbox_tree'] = PROJECT_BRANCHES[branch].get('packaged_unittest_tinderbox_tree', branch.title())

I wonder if the tinderbox settings are required any more...

Are we sure we want these builds enabled on all branches?
Attachment #636676 - Flags: review?(catlee) → review+
(In reply to Chris AtLee [:catlee] from comment #4)
> ::: mozilla/b2g_project_branches.py
> @@ +61,5 @@
> > +# Load up project branches' local values
> > +for branch in PROJECT_BRANCHES.keys():
> > +    PROJECT_BRANCHES[branch]['tinderbox_tree'] = PROJECT_BRANCHES[branch].get('tinderbox_tree', branch.title())
> > +    PROJECT_BRANCHES[branch]['mobile_tinderbox_tree'] = PROJECT_BRANCHES[branch].get('mobile_tinderbox_tree', branch.title())
> > +    PROJECT_BRANCHES[branch]['packaged_unittest_tinderbox_tree'] = PROJECT_BRANCHES[branch].get('packaged_unittest_tinderbox_tree', branch.title())
> 
> I wonder if the tinderbox settings are required any more...
> 
> Are we sure we want these builds enabled on all branches?

Good point! With a small buildbotcustom fix I was able to remove all Tinderbox references in b2g*! New patches incoming.
Attachment #636716 - Flags: review?(rail)
Attachment #636716 - Flags: review?(catlee)
Comment on attachment 636716 [details] [diff] [review]
remove unnecessary comments, tinderbox references

lgtm
Attachment #636716 - Flags: review?(rail) → review+
Attachment #636676 - Attachment is obsolete: true
Attachment #636676 - Flags: review?(rail)
Attachment #636717 - Flags: review?(catlee) → review+
Attachment #636716 - Flags: review?(catlee) → review+
Attachment #636717 - Flags: checked-in+
Attachment #636716 - Flags: checked-in+
Reconfig for this just happened.
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Product: mozilla.org → Release Engineering
Component: General Automation → General
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: