Revert "Reland "[checkout] Add step to ensure submodules are update to date""

This reverts commit 31f020630a31c3612afedea56a72ba6bc05b2f1a.

Reason for revert: Observing infra failures related to submodule updates on bringup.arm64-hwasan and bringup.x64-asan-submodule e.g. go/bbid/8775179096962942129, go/bbid/8775179101078604225

Original change's description:
> Reland "[checkout] Add step to ensure submodules are update to date"
>
> This reverts commit 0213ec5e992d7d63e0e8ef7aafe47fddf3a16a47.
>
> Reason for revert: Internal projects are not being excluded in submodule-update tool, which caused many submodules to be created. The tool has now being updated.
>
> Original change's description:
> > Revert "[checkout] Add step to ensure submodules are update to date"
> >
> > This reverts commit 8a48b2351c59c7098869409f60f24544eabfadc4.
> >
> > Reason for revert: infra failure
> >
> > Original change's description:
> > > [checkout] Add step to ensure submodules are update to date
> > >
> > > When submodules are enabled, submodules are the source of truth. We need to
> > > ensure submodule revisions are matching project pins at integration.
> > >
> > > Bug: b/289291544
> > > Change-Id: I5ea59fd0df5aa91388a3589f3de47d0040b06ed8
> > > Reviewed-on: https://fuchsia-review.googlesource.com/c/infra/recipes/+/883173
> > > Commit-Queue: Yuping Zhai <yupingz@google.com>
> > > Reviewed-by: Nathan Mulcahey <nmulcahey@google.com>
> > > Reviewed-by: Anthony Fandrianto <atyfto@google.com>
> >
> > Bug: b/289291544
> > Change-Id: Ic25aff05a68f9e3a4d1886233731660adba3e6eb
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Reviewed-on: https://fuchsia-review.googlesource.com/c/infra/recipes/+/885891
> > Reviewed-by: RubberStamper 🤖 <android-build-ayeaye@system.gserviceaccount.com>
>
> Bug: b/289291544
> Change-Id: I89aee6b1527c5bea0f4163f1cf01e56aa8d58bf2
> Reviewed-on: https://fuchsia-review.googlesource.com/c/infra/recipes/+/886554
> Reviewed-by: Anthony Fandrianto <atyfto@google.com>
> Commit-Queue: Yuping Zhai <yupingz@google.com>

Bug: b/289291544
Change-Id: I56b18c8ddccb647960e1a34eb638ebbd2e14d93d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://fuchsia-review.googlesource.com/c/infra/recipes/+/886555
Reviewed-by: RubberStamper 🤖 <android-build-ayeaye@system.gserviceaccount.com>
Commit-Queue: Drew Fisher <zarvox@google.com>
4 files changed
tree: 7565aa80a3446b8fe51a3ea04a1d37a14ddf9334
  1. git-hooks/
  2. infra/
  3. manifest/
  4. recipe_modules/
  5. recipe_proto/
  6. recipes/
  7. scripts/
  8. .editorconfig
  9. .git-blame-ignore-revs
  10. .gitignore
  11. AUTHORS
  12. black.ensure
  13. LICENSE
  14. OWNERS
  15. PATENTS
  16. pyproject.toml
  17. README.md
  18. recipes.py
  19. shac.star
  20. shac.textproto
  21. TOOLCHAIN_OWNERS
README.md

Fuchsia Recipes

This repository contains recipes for Fuchsia.

A recipe is a Python script that runs a series of commands, using the recipe engine framework from the LUCI project. We use recipes to automatically check out, build, and test Fuchsia in continuous integration jobs. The commands the recipes use are very similar to the ones you would use as a developer to check out, build, and test Fuchsia in your local environment.

See go/fuchsia-recipe-docs for complete documentation and a guide for getting started with writing recipes.

Getting the code and setting up your environment

For everyday development

The recommended way to get the source code is with jiri. A recipe will not run without vpython and cipd, and using these recommended jiri manifests will ensure that you have these tools.

You can use the fuchsia infra Jiri manifest or the internal version (Googlers-only). Once that manifest is imported in your local jiri manifest, jiri update should download vpython and cipd into <JIRI ROOT>/fuchsia-infra/prebuilt/tools/. If you add that directory to your PATH, you should be good to go.

Quick changes

If you're just trying to make a single small change to in this repository and already have your local environment set up for recipe development (e.g. because you work with another recipes repository) you can simply clone this repository with git:

git clone https://fuchsia.googlesource.com/infra/recipes

Then it will be up to you to ensure that vpython and cipd are available in your PATH.

Code formatting

We format python code using Black, an open-source Python autoformatter. It should be in your PATH if you followed the instructions for setting up your environment.

After committing recipe changes, you can format the files in your commit by running black . in your project root.

Many editors also have a setting to run Black automatically whenever you save a Python file (or on a keyboard shortcut). For VS Code, add the following to your workspace settings.json to make your editor compatible with Black and turn on auto-formatting on save:

{
    "python.formatting.provider": "black",
    "python.formatting.blackPath": "<absolute path to the black executable>",
    "[python]": {
        "editor.formatOnSave": true,
        "editor.rulers": [88], // Black enforces a line length of 88 characters.
    },
    ...
}