[roll] Roll fuchsia [assembly] Allow overrides to __append_to_ lists

The default merge strategy for developer overrides is to fully override
any key found in a dictionary. This is simple to understand but causes
extra toil for developers that want to add a new entry to a list. It
would require the developer to find the config definition, copy the
previous list into their developer overrides, then add their entry to
the list. The config definition may be in a separate repository at a
specific pinned version, therefore the previous list could be hard to
find.

This CL adds the ability to developers to indicate that they want to
append to the previous list instead of overriding it.

We cannot use periods or colons as delimiters, because this must work
with both GN and Bazel. Extra underscores are our best option.

Suggest we have this config:

{
  key: [ value1, value2, value3 ],
}

Developers can put this in their overrides to append:

{
  __append_to_key: [ value4 ],
}

And the result would be:

{
  key: [ value1, value2, value3, value4 ]
}

Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1137515
Original-Revision: 19b7a79f727ee6541160ec79e203fe44907a4261
GitOrigin-RevId: 16c010c235f274c05dc530e1818e3a192e8695fc
Change-Id: I3a39b7cffa98d1553a0cd7aa0e97cfa0b6315cd9
1 file changed
tree: e4cfc304dabd9c23f385b639ec51755243701094
  1. ctf/
  2. git-hooks/
  3. infra/
  4. third_party/
  5. cts
  6. firmware
  7. flower
  8. jiri.lock
  9. MILESTONE
  10. minimal
  11. prebuilts
  12. README.md
  13. stem
  14. test_durations
  15. toolchain
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance in one of the communication channels documented at get involved.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.