Use copy install mode for our CIPD packages

The use of symlinks was causing issues for some clients.

Change-Id: I46d9a7a6643888584c747e01a2d93b03e06e10b8
diff --git a/README.recipes.md b/README.recipes.md
index b1c5630..47ef425 100644
--- a/README.recipes.md
+++ b/README.recipes.md
@@ -643,7 +643,7 @@
 
 Recipe for building Jiri.
 
-— **def [RunSteps](/recipes/jiri.py#79)(api, category, patch_gerrit_url, patch_project, patch_ref, patch_storage, patch_repository_url, project, manifest, remote, target):**
+— **def [RunSteps](/recipes/jiri.py#80)(api, category, patch_gerrit_url, patch_project, patch_ref, patch_storage, patch_repository_url, project, manifest, remote, target):**
 
 — **def [UploadPackage](/recipes/jiri.py#42)(api, revision, staging_dir):**
 ### *recipes* / [jiri:examples/full](/recipe_modules/jiri/examples/full.py)
@@ -700,7 +700,7 @@
 
 — **def [PackageArchive](/recipes/sdk.py#116)(api, sdk):**
 
-— **def [RunSteps](/recipes/sdk.py#163)(api, category, patch_gerrit_url, patch_project, patch_ref, patch_storage, patch_repository_url, project, manifest, remote, use_goma, gn_args):**
+— **def [RunSteps](/recipes/sdk.py#164)(api, category, patch_gerrit_url, patch_project, patch_ref, patch_storage, patch_repository_url, project, manifest, remote, use_goma, gn_args):**
 
 — **def [UploadArchive](/recipes/sdk.py#121)(api, sdk, digest):**
 
diff --git a/recipes/clang_toolchain.expected/linux_new.json b/recipes/clang_toolchain.expected/linux_new.json
index 9041501..e3ab1cc 100644
--- a/recipes/clang_toolchain.expected/linux_new.json
+++ b/recipes/clang_toolchain.expected/linux_new.json
@@ -470,7 +470,9 @@
       "-out",
       "[TMP_BASE]/clang.cipd",
       "-json-output",
-      "/path/to/tmp/json"
+      "/path/to/tmp/json",
+      "-install-mode",
+      "copy"
     ],
     "name": "build linux-amd64",
     "~followup_annotations": [
diff --git a/recipes/clang_toolchain.expected/mac_new.json b/recipes/clang_toolchain.expected/mac_new.json
index 3fbb83c..88ad6d4 100644
--- a/recipes/clang_toolchain.expected/mac_new.json
+++ b/recipes/clang_toolchain.expected/mac_new.json
@@ -466,7 +466,9 @@
       "-out",
       "[TMP_BASE]/clang.cipd",
       "-json-output",
-      "/path/to/tmp/json"
+      "/path/to/tmp/json",
+      "-install-mode",
+      "copy"
     ],
     "name": "build mac-amd64",
     "~followup_annotations": [
diff --git a/recipes/clang_toolchain.py b/recipes/clang_toolchain.py
index 0072d72..28c9bfb 100644
--- a/recipes/clang_toolchain.py
+++ b/recipes/clang_toolchain.py
@@ -194,6 +194,7 @@
       input_dir=pkg_dir,
       package_name=cipd_pkg_name,
       output_package=cipd_pkg_file,
+      install_mode='copy',
   )
   step_result = api.cipd.register(
       package_name=cipd_pkg_name,
@@ -209,7 +210,7 @@
   api.gsutil.upload(
       'fuchsia',
       cipd_pkg_file,
-      '/'.join(['clang', api.cipd.platform_suffix(), step_result.json.output['result']['instance_id']]),
+      api.gsutil.join('clang', api.cipd.platform_suffix(), step_result.json.output['result']['instance_id']),
       unauthenticated_url=True
   )
 
diff --git a/recipes/go_toolchain.expected/linux_new.json b/recipes/go_toolchain.expected/linux_new.json
index 9985366..27ad867 100644
--- a/recipes/go_toolchain.expected/linux_new.json
+++ b/recipes/go_toolchain.expected/linux_new.json
@@ -319,7 +319,9 @@
       "-out",
       "[TMP_BASE]/go.cipd",
       "-json-output",
-      "/path/to/tmp/json"
+      "/path/to/tmp/json",
+      "-install-mode",
+      "copy"
     ],
     "name": "build linux-amd64",
     "~followup_annotations": [
diff --git a/recipes/go_toolchain.expected/mac_new.json b/recipes/go_toolchain.expected/mac_new.json
index 03196d1..177e12d 100644
--- a/recipes/go_toolchain.expected/mac_new.json
+++ b/recipes/go_toolchain.expected/mac_new.json
@@ -319,7 +319,9 @@
       "-out",
       "[TMP_BASE]/go.cipd",
       "-json-output",
-      "/path/to/tmp/json"
+      "/path/to/tmp/json",
+      "-install-mode",
+      "copy"
     ],
     "name": "build mac-amd64",
     "~followup_annotations": [
diff --git a/recipes/go_toolchain.py b/recipes/go_toolchain.py
index 2703a46..9f2fbbf 100644
--- a/recipes/go_toolchain.py
+++ b/recipes/go_toolchain.py
@@ -87,6 +87,7 @@
       input_dir=pkg_dir,
       package_name=cipd_pkg_name,
       output_package=cipd_pkg_file,
+      install_mode='copy',
   )
   step_result = api.cipd.register(
       package_name=cipd_pkg_name,
diff --git a/recipes/jiri.expected/ci_new.json b/recipes/jiri.expected/ci_new.json
index 8e455cc..5a79e94 100644
--- a/recipes/jiri.expected/ci_new.json
+++ b/recipes/jiri.expected/ci_new.json
@@ -268,7 +268,9 @@
       "-out",
       "[TMP_BASE]/jiri.cipd",
       "-json-output",
-      "/path/to/tmp/json"
+      "/path/to/tmp/json",
+      "-install-mode",
+      "copy"
     ],
     "name": "build linux-amd64",
     "~followup_annotations": [
diff --git a/recipes/jiri.py b/recipes/jiri.py
index 37e2f43..190f0a2 100644
--- a/recipes/jiri.py
+++ b/recipes/jiri.py
@@ -57,6 +57,7 @@
       input_dir=staging_dir,
       package_name=cipd_pkg_name,
       output_package=cipd_pkg_file,
+      install_mode='copy',
   )
   step_result = api.cipd.register(
       package_name=cipd_pkg_name,
diff --git a/recipes/qemu.expected/linux_new.json b/recipes/qemu.expected/linux_new.json
index d14a0f6..03f2c48 100644
--- a/recipes/qemu.expected/linux_new.json
+++ b/recipes/qemu.expected/linux_new.json
@@ -427,7 +427,9 @@
       "-out",
       "[TMP_BASE]/qemu.cipd",
       "-json-output",
-      "/path/to/tmp/json"
+      "/path/to/tmp/json",
+      "-install-mode",
+      "copy"
     ],
     "name": "build linux-amd64",
     "~followup_annotations": [
diff --git a/recipes/qemu.expected/mac_new.json b/recipes/qemu.expected/mac_new.json
index b6e8efd..5fec530 100644
--- a/recipes/qemu.expected/mac_new.json
+++ b/recipes/qemu.expected/mac_new.json
@@ -310,7 +310,9 @@
       "-out",
       "[TMP_BASE]/qemu.cipd",
       "-json-output",
-      "/path/to/tmp/json"
+      "/path/to/tmp/json",
+      "-install-mode",
+      "copy"
     ],
     "name": "build mac-amd64",
     "~followup_annotations": [
diff --git a/recipes/qemu.py b/recipes/qemu.py
index f4b0c88..f7f08f5 100644
--- a/recipes/qemu.py
+++ b/recipes/qemu.py
@@ -213,19 +213,20 @@
   cipd_pkg_file = api.path['tmp_base'].join('qemu.cipd')
 
   api.cipd.build(
-    input_dir=pkg_dir,
-    package_name=cipd_pkg_name,
-    output_package=cipd_pkg_file,
+      input_dir=pkg_dir,
+      package_name=cipd_pkg_name,
+      output_package=cipd_pkg_file,
+      install_mode='copy',
   )
   step_result = api.cipd.register(
-    package_name=cipd_pkg_name,
-    package_path=cipd_pkg_file,
-    refs=['latest'],
-    tags={
-      'version': qemu_version,
-      'git_repository': 'https://fuchsia.googlesource.com/third_party/qemu',
-      'git_revision': revision,
-    },
+      package_name=cipd_pkg_name,
+      package_path=cipd_pkg_file,
+      refs=['latest'],
+      tags={
+        'version': qemu_version,
+        'git_repository': 'https://fuchsia.googlesource.com/third_party/qemu',
+        'git_revision': revision,
+      },
   )
 
   api.gsutil.upload(
diff --git a/recipes/rust_toolchain.expected/linux_new.json b/recipes/rust_toolchain.expected/linux_new.json
index 51c76c9..b4f801c 100644
--- a/recipes/rust_toolchain.expected/linux_new.json
+++ b/recipes/rust_toolchain.expected/linux_new.json
@@ -402,7 +402,9 @@
       "-out",
       "[TMP_BASE]/rust_tmp_1/rust.cipd",
       "-json-output",
-      "/path/to/tmp/json"
+      "/path/to/tmp/json",
+      "-install-mode",
+      "copy"
     ],
     "name": "build linux-amd64",
     "~followup_annotations": [
diff --git a/recipes/rust_toolchain.expected/mac_new.json b/recipes/rust_toolchain.expected/mac_new.json
index d64aca8..74ee02f 100644
--- a/recipes/rust_toolchain.expected/mac_new.json
+++ b/recipes/rust_toolchain.expected/mac_new.json
@@ -402,7 +402,9 @@
       "-out",
       "[TMP_BASE]/rust_tmp_1/rust.cipd",
       "-json-output",
-      "/path/to/tmp/json"
+      "/path/to/tmp/json",
+      "-install-mode",
+      "copy"
     ],
     "name": "build mac-amd64",
     "~followup_annotations": [
diff --git a/recipes/rust_toolchain.py b/recipes/rust_toolchain.py
index 09016c6..78926c0 100644
--- a/recipes/rust_toolchain.py
+++ b/recipes/rust_toolchain.py
@@ -189,6 +189,7 @@
       input_dir=pkg_dir,
       package_name=cipd_pkg_name,
       output_package=cipd_pkg_file,
+      install_mode='copy',
   )
   step_result = api.cipd.register(
       package_name=cipd_pkg_name,
diff --git a/recipes/sdk.expected/ci.json b/recipes/sdk.expected/ci.json
index 0902188..3d5df31 100644
--- a/recipes/sdk.expected/ci.json
+++ b/recipes/sdk.expected/ci.json
@@ -522,7 +522,9 @@
       "-out",
       "[TMP_BASE]/sdk.cipd",
       "-json-output",
-      "/path/to/tmp/json"
+      "/path/to/tmp/json",
+      "-install-mode",
+      "copy"
     ],
     "name": "build linux-amd64",
     "~followup_annotations": [
diff --git a/recipes/sdk.expected/cq_try.json b/recipes/sdk.expected/cq_try.json
index c6fa38a..c60a687 100644
--- a/recipes/sdk.expected/cq_try.json
+++ b/recipes/sdk.expected/cq_try.json
@@ -530,7 +530,9 @@
       "-out",
       "[TMP_BASE]/sdk.cipd",
       "-json-output",
-      "/path/to/tmp/json"
+      "/path/to/tmp/json",
+      "-install-mode",
+      "copy"
     ],
     "name": "build linux-amd64",
     "~followup_annotations": [
diff --git a/recipes/sdk.expected/no_goma.json b/recipes/sdk.expected/no_goma.json
index 6549cef..7286496 100644
--- a/recipes/sdk.expected/no_goma.json
+++ b/recipes/sdk.expected/no_goma.json
@@ -316,7 +316,9 @@
       "-out",
       "[TMP_BASE]/sdk.cipd",
       "-json-output",
-      "/path/to/tmp/json"
+      "/path/to/tmp/json",
+      "-install-mode",
+      "copy"
     ],
     "name": "build linux-amd64",
     "~followup_annotations": [
diff --git a/recipes/sdk.py b/recipes/sdk.py
index b90750c..df036bf 100644
--- a/recipes/sdk.py
+++ b/recipes/sdk.py
@@ -142,6 +142,7 @@
       input_dir=outdir,
       package_name=cipd_pkg_name,
       output_package=cipd_pkg_file,
+      install_mode='copy',
   )
   step_result = api.cipd.register(
       package_name=cipd_pkg_name,