You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/operate/get-started/other-hardware/manage-modules.md
+21-3Lines changed: 21 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -93,7 +93,7 @@ At the end of your <file>meta.json</file>, add the build configuration:
93
93
"setup": "./setup.sh", // optional - command for one-time setup
94
94
"build": "./build.sh", // command that will build your module's tarball
95
95
"path" : "dist/archive.tar.gz", // optional - path to your built module tarball
96
-
"arch" : ["linux/amd64", "linux/arm64", "darin/arm64"], // architecture(s) to build for
96
+
"arch" : ["linux/amd64", "linux/arm64", "darwin/arm64"], // architecture(s) to build for
97
97
"darwin_deps" : ["go", "x264", "nlopt-static"] // optional - Homebrew dependencies for Darwin builds. Explicitly pass `[]` for empty. Default : ["go", "pkg-config", "nlopt-static", "x264", "jpeg-turbo", "ffmpeg"].
98
98
}
99
99
}
@@ -244,6 +244,24 @@ For more details, see the [`upload-module` GitHub Action documentation](https://
244
244
245
245
Once the build is complete, the module will automatically update in the [Viam Registry](https://app.viam.com/registry), and the machines set to use the latest [version](/operate/reference/module-configuration/#module-versioning) of the module will automatically update to the new version.
246
246
247
+
## Supported platforms for cloud-build
248
+
249
+
When using cloud-build, you can specify which platforms you want to build your module for in the `arch` field of your `meta.json` file. The following table lists all available platforms:
250
+
251
+
| Platform | Recommended | Supported in Cloud Build | Container Used by Cloud Build | Notes |
| `linux/amd64` | ✅ | ✅ | Ubuntu | Standard x86_64 Linux platform |
254
+
| `linux/arm64` | ✅ | ✅ | Ubuntu | For ARM64 Linux devices like Raspberry Pi 4 |
255
+
| `darwin/arm64` | ✅ | ✅ | macOS | For Apple Silicon Macs (M1/M2/M3) |
256
+
| `linux/arm32v6` | ✅ | ❌ | N/A | For older ARM devices; must be built manually |
257
+
| `linux/arm32v7` | ✅ | ❌ | N/A | For 32-bit ARM devices; must be built manually |
258
+
| `windows/amd64` | ⚠️ | ❌ | N/A | Works for pure Go modules, but may have issues with C++ or modules using C libraries |
259
+
| `darwin/amd64` | ❌ | ❌ | N/A | Intel Macs; not recommended as this platform is being phased out |
260
+
261
+
{{% alert title="Note" color="note" %}}
262
+
While the registry supports additional platforms like `windows/amd64`, `linux/arm32v6`, and `linux/arm32v7`, these are not currently supported by cloud-build and must be built manually using `viam module upload` if needed.
263
+
{{% /alert %}}
264
+
247
265
### Update manually
248
266
249
267
Use the [Viam CLI](/dev/tools/cli/) to manually update your module:
@@ -352,8 +370,8 @@ To transfer ownership of a module from one organization to another:
352
370
1. Select the new organization from the dropdown menu, then click **Transfer module**.
353
371
354
372
1. (Recommended) Transfer the GitHub repository containing the module code to the new owner.
355
-
Be sure to remove the existing secrets from the repository’s settings before transferring.
356
-
If the repository is using Viam’s cloud build, the secrets contain an organization API key that will be exposed to the new owner after the repository transfer.
373
+
Be sure to remove the existing secrets from the repository's settings before transferring.
374
+
If the repository is using Viam's cloud build, the secrets contain an organization API key that will be exposed to the new owner after the repository transfer.
357
375
358
376
1. Update the `meta.json` file to reflect the new organization:
0 commit comments