[roll] Roll fuchsia [ffx][config] Make configs know their source paths

This is a reland of commit 27ca5389ee534f2d9c0350ea9a107d64658b63aa

The prior commit caused problems because it made it so that the
Environment wasn't reloaded when saving happened. So in the situation
where a default user config was set *while* creating a config entry, a
cached configuration would be loaded that didn't have a user config set
when it went to save it. This would result in it claiming you couldn't
write to a configuration without a user config set up, even though it
had literally just done that.

This adds cache invalidation on top of the existing behaviour, so that
when an environment is saved the cache is blown away and a broken config
won't be reloaded from it. Future changes should mitigate this even
further by making the cache per-config file instead of trying to stuff
an entire environment's config under a single cache line.

Original change's description:
> [ffx][config] Make configs know their source paths
>
> As with environments a few commits ago, make config levels know where
> they came from so they can save themselves. This will allow us to
> further encapsulate configuration logic to make it easier to reason
> about, debug, and work on.
>
> Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/699253

Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/700130
Original-Revision: 23d43c8a27797acac850f897e5b0bbd0fcdb0639
GitOrigin-RevId: c8de4f68d56dcdfc5c62aa4dfc43b913592258c6
Change-Id: I17c3c340d9da43ef32773efe5fec89cdd5b6ff12
1 file changed
tree: e0f841a57e6a86efb4819b74fbafcc855ae8c46a
  1. infra/
  2. third_party/
  3. cts
  4. firmware
  5. flower
  6. jiri.lock
  7. minimal
  8. prebuilts
  9. README.md
  10. stem
  11. test_durations
  12. 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 via the IRC channel #fuchsia on Freenode.

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.