Initalizes targets for SDK companion images.

Example Usage: ```

Initializing the repo:

load("@fuchsia_sdk//fuchsia:deps.bzl", "fuchsia_products_repository")

fuchsia_products_repository( name = "fuchsia_products", cipd_bin = "@cipd_tool//:cipd", ensure_file = "//manifests:product_bundles.ensure", )

Examining the generated targest:

$ bazel query '@fuchsia_products//... except attr("tags", "manual", @fuchsia_products//...)'

Using the targets:

$ bazel run @fuchsia_products//:core.x64.emu -- --headless

$ bazel run @fuchsia_products//:core.vim3.flash


Name Description Type Mandatory Default
name A unique name for this repository. Name required -
repo_mapping In WORKSPACE context only: a dictionary from local repository name to global repository name. This allows controls over workspace dependency resolution for dependencies of this repository.

For example, an entry "@foo": "@bar" declares that, for any time this repository depends on @foo (such as a dependency on @foo//some:target, it should actually resolve that dependency within globally-declared @bar (@bar//some:target).

This attribute is not supported in MODULE.bazel context (when invoking a repository rule inside a module extension's implementation function).
String Dict optional -
cipd_bin The cipd binary that will be used to download the companion image metadata. Label optional None
ensure_file A cipd ensure file to use to download the companion image metadata. Label optional None
metadata_file A label referencing product_bundles.json. Label optional None