Once you have built an ArkOS image into some location (for example, if you have
built it into
~/arkos-image), then you have a few choices in how you deploy
The ArkOS deployment system relies on the same infrastructure as the software deployment system (namely, the Ark Platform Supervisor). It is assumed that this is running on the host that you are deploying ArkOS to.
Deploying from Local Machine
It is possible to deploy ArkOS to a remote host (already running ArkOS) from your local machine, without going through any intermediate. Run this command:
~$ ./ark/arkos/install-remotely $<REMOTE_HOST_IP:8081> ~/arkos-image
This will install the created image (within
~/arkos-image) to the remote host,
which will then reboot into the new image.
Deploying from Catalog
You can deploy prebuilt images from the Catalog to a remote host (again, already
running ArkOS) by requesting that the remote host download and install the
image itself. For example, if you wanted to deploy an image identified with
~$ ./build/ark-supervisor-tool --host $<REMOTE_HOST_IP:8081> --deploy-arkos-specific 312a572b-937e-4bda-b607-264b4d727a92
This will cause the remote Supervisor to fetch the ArkOS release located at that GUID, unpack it, and then reboot into it.
Uploading a Release to Catalog
You can upload your own releases to catalog by using the
~$ ./ark/arkos/create-release ~/arkos-image
This will package up the release located in
~/arkos-image and then upload it
to the Catalog, returning the GUID of the artifact you can deploy.
Note that the artifact will be uploaded to the organization that the image was built with (so, if the image should be private, ensure that you have built it with a private organization).