[firebase_docs] Document third_party for rustdoc

Also fix the yaml wheel.

Change-Id: Ib87a2e3e2b6116a0a9b6e75f58f5ce7ce821ce23
diff --git a/recipes/firebase_docs.expected/firebase_docs.json b/recipes/firebase_docs.expected/firebase_docs.json
index c67a187..10c8d71 100644
--- a/recipes/firebase_docs.expected/firebase_docs.json
+++ b/recipes/firebase_docs.expected/firebase_docs.json
@@ -1167,6 +1167,22 @@
   },
   {
     "cmd": [
+      "[START_DIR]/buildtools/linux-x64/rust/bin/cargo",
+      "doc",
+      "--target=x86_64-fuchsia"
+    ],
+    "cwd": "[START_DIR]/third_party/rust_crates",
+    "env": {
+      "RUSTC": "[START_DIR]/buildtools/linux-x64/rust/bin/rustc",
+      "RUSTDOC": "[START_DIR]/buildtools/linux-x64/rust/bin/rustdoc"
+    },
+    "name": "rustdoc.cargo doc third_party/rust_crates",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
       "mv",
       "[START_DIR]/out/cargo_target/x86_64-fuchsia/doc",
       "[START_DIR]/firebase/public/rust"
diff --git a/recipes/firebase_docs.py b/recipes/firebase_docs.py
index e2b0770..84c5a3b 100644
--- a/recipes/firebase_docs.py
+++ b/recipes/firebase_docs.py
@@ -19,6 +19,7 @@
     'recipe_engine/json',
     'recipe_engine/file',
     'recipe_engine/path',
+    'recipe_engine/platform',
     'recipe_engine/properties',
     'recipe_engine/python',
     'recipe_engine/raw_io',
@@ -207,6 +208,27 @@
           build_dir,
       ])
 
+  platform = '%s-%s' % (api.platform.name.replace('win', 'windows'), {
+      'intel': {
+          32: '386',
+          64: 'x64',
+      },
+      'arm': {
+          32: 'armv6',
+          64: 'arm64',
+      },
+  }[api.platform.arch][api.platform.bits])
+  rust_bin_dir = api.path['start_dir'].join('buildtools', platform, 'rust',
+                                            'bin')
+  with api.context(
+      env={
+          'RUSTC': rust_bin_dir.join('rustc'),
+          'RUSTDOC': rust_bin_dir.join('rustdoc')
+      },
+      cwd=api.path['start_dir'].join('third_party', 'rust_crates')):
+    api.step('cargo doc third_party/rust_crates',
+             [rust_bin_dir.join('cargo'), 'doc', '--target=x86_64-fuchsia'])
+
   # Move the output to the docs directory.
   step_result = api.step('move output to docs', [
       'mv',
diff --git a/recipes/firebase_docs.resources/parse_yaml.py b/recipes/firebase_docs.resources/parse_yaml.py
index 8d63641..c057343 100644
--- a/recipes/firebase_docs.resources/parse_yaml.py
+++ b/recipes/firebase_docs.resources/parse_yaml.py
@@ -1,13 +1,10 @@
 #!/usr/bin/env vpython
-# Copyright 2018 The Fuchsia Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
 
 # [VPYTHON:BEGIN]
 # python_version: "2.7"
 # wheel <
-#   name: "fuchsia/python/wheels/lit-py2"
-#   version: "version:0.7.1"
+#   name: "infra/python/wheels/pyyaml/${platform}_${py_python}_${py_abi}"
+#   version: "version:3.12"
 # >
 # [VPYTHON:END]