<!--
 Copyright 2020 Google LLC

 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->

<!--
 The following repositories have caused build failures due to intermittent
 fetch issues.  Since "repo sync" can handle flaky repositories, we add
 them here so that they will be in the source tree.
-->
<manifest>

  <remote  name="chromium"
           fetch="https://chromium.googlesource.com"
           review="https://chromium-review.googlesource.com" />

  <project path="src/platform/microbenchmarks"
           name="chromiumos/platform/microbenchmarks"
           remote="chromium"
           revision="refs/heads/release-R81-12871.B" />

  <project path="src/third_party/rootdev"
           name="chromiumos/third_party/rootdev"
           revision="refs/heads/release-R81-12871.B"
           remote="chromium" />

  <project path="src/platform/ec"
           name="chromiumos/platform/ec"
           remote="chromium"
           revision="refs/heads/master" />

  <project path="src/third_party/autotest/files/server/cros/faft/fw-testing-configs"
           name="chromiumos/platform/fw-testing-configs"
           remote="chromium"
           revision="refs/heads/master" />

</manifest>
