mirror of
https://github.com/Start9Labs/documentation.git
synced 2026-03-26 10:21:53 +00:00
spacing and indexing
This commit is contained in:
33
source/contributing/index.rst
Normal file
33
source/contributing/index.rst
Normal file
@@ -0,0 +1,33 @@
|
||||
.. _service_sdk:
|
||||
|
||||
***********************
|
||||
Service Packaging Guide
|
||||
***********************
|
||||
|
||||
This technical guide covers the necessary steps to package up a service for deployment to the EmbassyOS platform. To start, you will need to acquire :ref:`EmbassyOS <purchasing>` for testing the packaged service.
|
||||
|
||||
While you are waiting to assemble a device, you can begin the process of building your project in the format necessary to run on the Embassy. The sections below outline these steps in detail.
|
||||
|
||||
For reference, the `Hello world <https://github.com/Start9Labs/hello-world-wrapper>`_ repository should be used as an example. A project template can be cloned using the "Use this template" button in GitHub.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
Overview <services/overview>
|
||||
Wrapper <services/wrapper>
|
||||
Docker <services/docker>
|
||||
Makefile <services/makefile>
|
||||
Manifest <services/manifest>
|
||||
Config <services/config>
|
||||
Properties <services/properties>
|
||||
Docs <services/docs>
|
||||
|
||||
Submission process
|
||||
------------------
|
||||
|
||||
When you have built and tested your project for EmbassyOS, please send us a submission with the project repository to ``dev@start9labs.com``. Reach out with questions in the Matrix community `dev channel <https://matrix.to/#/#community-dev:matrix.start9labs.com>`_.
|
||||
|
||||
.. role:: raw-html(raw)
|
||||
:format: html
|
||||
|
||||
:raw-html:`<br />`
|
||||
@@ -570,4 +570,9 @@ SetVariant Examples:
|
||||
.. code:: yaml
|
||||
|
||||
- rule: 'rpc.enable? OR !(''advanced.pruning.mode = "manual")'
|
||||
description: "RPC must be enabled for manual pruning."
|
||||
description: "RPC must be enabled for manual pruning."
|
||||
|
||||
.. role:: raw-html(raw)
|
||||
:format: html
|
||||
|
||||
:raw-html:`<br />`
|
||||
@@ -26,4 +26,9 @@ File specified as: ``docker_entrypoint.sh``
|
||||
|
||||
This file defines what to do when the service application starts.
|
||||
|
||||
It consists of a bash script that completes any environment setup (eg. creating folder substructure), sets any environment variables, and executes the run command. The only required feature of this file is to execute the run commands on EmbassyOS.
|
||||
It consists of a bash script that completes any environment setup (eg. creating folder substructure), sets any environment variables, and executes the run command. The only required feature of this file is to execute the run commands on EmbassyOS.
|
||||
|
||||
.. role:: raw-html(raw)
|
||||
:format: html
|
||||
|
||||
:raw-html:`<br />`
|
||||
@@ -10,4 +10,9 @@ If an ``instructions.md`` file is included, this markdown formatted file will be
|
||||
|
||||
.. figure:: /_static/images/service/bitcoin_instructions.png
|
||||
:width: 80%
|
||||
:alt: Bitcoin Instructions
|
||||
:alt: Bitcoin Instructions
|
||||
|
||||
.. role:: raw-html(raw)
|
||||
:format: html
|
||||
|
||||
:raw-html:`<br />`
|
||||
@@ -15,4 +15,9 @@ This purpose of this file is to:
|
||||
- Read the docker container and build the project
|
||||
- Build all prerequisite for running the docker file
|
||||
- Build all dependencies
|
||||
- Package ``config.yaml``, ``manifest.yaml``, and ``image.tar`` into an ``.s9pk`` extension by invoke ``appmgr``.
|
||||
- Package ``config.yaml``, ``manifest.yaml``, and ``image.tar`` into an ``.s9pk`` extension by invoke ``appmgr``.
|
||||
|
||||
.. role:: raw-html(raw)
|
||||
:format: html
|
||||
|
||||
:raw-html:`<br />`
|
||||
@@ -339,3 +339,8 @@ Cups
|
||||
dst: "."
|
||||
overwrite: true
|
||||
hidden-service-version: v3
|
||||
|
||||
.. role:: raw-html(raw)
|
||||
:format: html
|
||||
|
||||
:raw-html:`<br />`
|
||||
@@ -41,3 +41,8 @@ Recommended Dependencies
|
||||
`make <https://www.gnu.org/software/make/>`_
|
||||
|
||||
`musl <https://github.com/Start9Labs/rust-musl-cross>`_
|
||||
|
||||
.. role:: raw-html(raw)
|
||||
:format: html
|
||||
|
||||
:raw-html:`<br />`
|
||||
@@ -12,4 +12,11 @@ The output of this step is a file titled ``stats.yaml``. This file contains a ma
|
||||
|
||||
Service Properties Tab
|
||||
|
||||
Due to the fact that config variables are only available when the service is running, this file can only be populated at runtime. In services Start9 has wrapped or created, we typically handle this in ``configurator/src/main.rs``. This file is essentially a script that acquires the necessary values at runtime from config (eg. ``/root/.lnd/start9/config.yaml``), and dynamically populating them to the ``stats.yaml`` file, marking each value with the appropriate keys for UI display (ie. masked or copyable). Running the configurator is typically included in the ``docker_entrypoint.sh`` file.
|
||||
Due to the fact that config variables are only available when the service is running, this file can only be populated at runtime. In services Start9 has wrapped or created, we typically handle this in ``configurator/src/main.rs``. This file is essentially a script that acquires the necessary values at runtime from config (eg. ``/root/.lnd/start9/config.yaml``), and dynamically populating them to the ``stats.yaml`` file, marking each value with the appropriate keys for UI display (ie. masked or copyable). Running the configurator is typically included in the ``docker_entrypoint.sh`` file.
|
||||
|
||||
A good example of the a configurator producing the ``stats.yaml`` file can be found `here <https://github.com/Start9Labs/btc-rpc-proxy-wrapper/blob/master/configurator/src/main.rs>`_.
|
||||
|
||||
.. role:: raw-html(raw)
|
||||
:format: html
|
||||
|
||||
:raw-html:`<br />`
|
||||
@@ -53,3 +53,8 @@ Assets
|
||||
Whenever a service is stopped, any file that is not contained within in the ``/assets`` directory will be cleared from memory. Any unsaved changes will be reverted. This folder acts as a persistance storage container.
|
||||
|
||||
In this folder belongs any assets that are unique configurations to your service. For instance, bitcoind's ``.conf`` file is saved here.
|
||||
|
||||
.. role:: raw-html(raw)
|
||||
:format: html
|
||||
|
||||
:raw-html:`<br />`
|
||||
Reference in New Issue
Block a user