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
|`"setup"`| Optional | Command to run for setting up the build environment. |
108
+
|`"build"`|**Required**| Command to run to build the module tarball. |
109
+
|`"path"`| Optional | Path to the build module tarball. |
110
+
|`"arch"`|**Required**| Array of architectures to build for. Options: `"any"`, `"linux/any"`, `"darwin/any"`, `"any/amd64"`, `"any/arm64"`, `"any/arm32v6"`, `"any/arm32v7"`, `"linux/amd64"`, `"linux/arm64"`, `"linux/arm32v6"`, `"linux/arm32v7"`, `"darwin/amd64"`, `"darwin/arm64"`, `"windows/amd64"`. For more information see [Supported platforms for automatic updates](#supported-platforms-for-automatic-updates). |
111
+
|`"darwin_deps"`|**Required**| Array of homebrew dependencies for Darwin builds. Explicitly pass `[]` for empty. Default: `["go", "pkg-config", "nlopt-static", "x264", "jpeg-turbo", "ffmpeg"]`|
112
+
113
+
{{% /expand %}}
114
+
102
115
{{< expand "Python module example" >}}
103
116
104
117
The following code snippet demonstrates an example `setup.sh` for a Python module:
@@ -244,6 +257,26 @@ For more details, see the [`upload-module` GitHub Action documentation](https://
244
257
245
258
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
259
260
+
#### Supported platforms for automatic updates
261
+
262
+
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.
263
+
The following table lists all available platforms:
264
+
265
+
<!-- prettier-ignore -->
266
+
| Platform | Recommended | Supported in cloud build | Container used by cloud build | Notes |
| `linux/amd64` | ✅ | ✅ | Ubuntu | Standard x86_64 Linux platform, |
269
+
| `linux/arm64` | ✅ | ✅ | Ubuntu | For ARM64 Linux devices like Raspberry Pi 4, |
270
+
| `darwin/arm64` | ✅ | ✅ | macOS | For Apple Silicon Macs (M1/M2/M3). |
271
+
| `linux/arm32v6` | ✅ | ❌ | N/A | For older ARM devices; must be built manually. |
272
+
| `linux/arm32v7` | ✅ | ❌ | N/A | For 32-bit ARM devices; must be built manually. |
273
+
| `windows/amd64` | ✅ | ⚠️ | N/A | <ul><li>Cloud builds work for Go modules but have issues. linking to C libraries.</li><li>Windows support is still in development.</li></ul> |
274
+
| `darwin/amd64` | ❌ | ❌ | N/A | Intel Macs; not recommended as Apple is phasing this platform out |
275
+
276
+
{{% alert title="Note" color="note" %}}
277
+
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 and uploaded manually](#update-manually).
278
+
{{% /alert %}}
279
+
247
280
### Update manually
248
281
249
282
Use the [Viam CLI](/dev/tools/cli/) to manually update your module:
@@ -352,8 +385,8 @@ To transfer ownership of a module from one organization to another:
352
385
1. Select the new organization from the dropdown menu, then click **Transfer module**.
353
386
354
387
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.
388
+
Be sure to remove the existing secrets from the repository's settings before transferring.
389
+
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
390
358
391
1. Update the `meta.json` file to reflect the new organization:
0 commit comments