mirror of
https://github.com/Start9Labs/documentation.git
synced 2026-03-26 10:21:53 +00:00
* change embassyOS to StartOS & nuance * Update conf.py * Update manifest.rst * say start9 instead of embassy in two links * progress * scrubbed faqs - basic-use, lightning, service-packaging, services, startos * add a few fixes * more * more 'embassy' cleanup * more * the last of embassy (aside from sdk and cli commands, links, etc) * some fixes * update icon, logo, and theme * Update site/source/user-manual/upgrade-hardware/upgrade-pro.rst * Update site/source/developer-docs/packaging.rst * Update site/source/developer-docs/specification/config-spec.rst * Update site/source/learn/concepts/networks.rst * Update site/source/learn/concepts/networks.rst * Update site/source/user-manual/customize.rst * Update site/source/support/faq/faq-basic-use.rst * Update site/source/user-manual/upgrade-hardware/naspi-upgrade.rst * Update site/source/user-manual/upgrade-hardware/upgrade-pro.rst * Update site/source/support/faq/faq-bitcoin.rst * Update site/source/support/faq/faq-bitcoin.rst * Update site/source/support/faq/faq-general.rst * Update site/source/support/faq/faq-general.rst * Update site/source/support/faq/faq-general.rst * Update site/source/support/faq/faq-general.rst * Update site/source/support/faq/faq-services.rst * Update site/source/support/faq/faq-general.rst * Update site/source/support/faq/faq-startos.rst * Update site/source/support/faq/faq-troubleshooting.rst * Update site/source/support/faq/faq-startos.rst * Minor fixes * Fix build errors, ready to roll * Add Beethoven * More fixes * More nother fix * More nother fixes agin * Remove sentence * cards instead --------- Co-authored-by: Matt Hill <matthewonthemoon@gmail.com> Co-authored-by: Shadowy Super Coder <musashidisciple@proton.me> Co-authored-by: Lucy Cifferello <12953208+elvece@users.noreply.github.com> Co-authored-by: kn0wmad <39687477+kn0wmad@users.noreply.github.com> Co-authored-by: agent <kn0wmad@protonmail.com>
115 lines
3.2 KiB
ReStructuredText
115 lines
3.2 KiB
ReStructuredText
.. _embassy-sdk:
|
|
|
|
=========
|
|
Start SDK
|
|
=========
|
|
|
|
The StartOS embedded Software Development Kit (SDK), is a CLI (Command Line Interface) tool that aids in building and packaging services you wish to deploy to StartOS.
|
|
|
|
It helps validate that the necessary components of the package exist, and package all of those components into a special file type (``s9pk``) that is understood by StartOS.
|
|
|
|
Installation
|
|
============
|
|
|
|
You can install this component on any system, without needing to run StartOS, by running the following command:
|
|
|
|
.. code-block::
|
|
|
|
git clone -b latest --recursive https://github.com/Start9Labs/start-os.git && cd embassy-os/backend && ./install-sdk.sh
|
|
|
|
|
|
Next, initialize the SDK and verify the installation was successful:
|
|
|
|
.. code-block::
|
|
|
|
embassy-sdk init
|
|
embassy-sdk --version
|
|
|
|
|
|
Commands
|
|
========
|
|
|
|
To see a list of all available commands provided, run the following from an terminal window:
|
|
|
|
.. code:: bash
|
|
|
|
embassy-sdk --help
|
|
|
|
|
|
embassy-sdk init
|
|
----------------
|
|
|
|
Initialize the developer key for interacting with the SDK.
|
|
|
|
By default, this creates the developer key at `/etc/embassy`. You might need to change ownership of this folder depending on your system permissions.
|
|
|
|
.. code:: bash
|
|
|
|
chown <user> /etc/embassy
|
|
|
|
Alternatively, you can write a config file with your desired developer location, it simply needs the following format:
|
|
|
|
.. code:: yaml
|
|
|
|
developer-key-path: /desired/path/to/key
|
|
|
|
And load it by running:
|
|
|
|
.. code:: bash
|
|
|
|
embassy-sdk -c /path/to/config init
|
|
|
|
|
|
embassy-sdk pack
|
|
----------------
|
|
|
|
This command takes the necessary package components and assembles them into the `s9pk` file format needed to install a service on StartOS. It expects the following files to exist:
|
|
|
|
- Manifest
|
|
- Instructions
|
|
- License
|
|
- Icon
|
|
- Dockerfile
|
|
|
|
If this command fails, the error response will indicate which component is missing.
|
|
|
|
embassy-sdk verify
|
|
-------------------
|
|
|
|
This command verifies aspects about the components assembled into the `s9pk`, such as:
|
|
|
|
- Ensures that all mounts are real volumes in the manifest
|
|
- Ensures all cert volumes point to real interfaces in the manifest
|
|
- Ensures all actions refer to real images in the manifest
|
|
- Ensures all images are tagged correctly in the manifest
|
|
- Ensures the icon is less than 100KB
|
|
|
|
It should be run _after_ `embassy-sdk pack` in order to verify the validity of each component.
|
|
|
|
If this command fails, the error message will indicate the mismatched details.
|
|
|
|
embassy-sdk git-info
|
|
--------------------
|
|
|
|
This command outputs the git commit hash of the SDK version installed on your platform.
|
|
|
|
embassy-sdk inspect
|
|
-------------------
|
|
|
|
This command contains several utilities for reading components once packaged into the `s9pk`. In development, it can be helpful to determine if each component is successfully included in the `s9pk` package.
|
|
|
|
It contains the following subcommands, and requires the path to the `<pacakge-id>.s9pk` file as the last argument:
|
|
|
|
- docker-images
|
|
- hash
|
|
- icon
|
|
- instructions
|
|
- license
|
|
- manifest
|
|
|
|
For example:
|
|
|
|
.. code:: bash
|
|
|
|
embassy-sdk inspect instructions /path/to/<package-id>.s9pk
|