An AuterionOS app can use multiple APIs. The available APIs are determined by the target AuterionOS version, as well as the used API level specified in the app.
Each AuterionOS app targets a specific API level. The API level an app targets, is specified in the
auterion-app.ymlfile like so:
For now, all API versions are supported. Some future versions of AuterionOS may lose support for older API versions. APIs within their version are stable, but APIs may change with newer API versions.
The auterion-app.yml file has to be in the apps root directory and is structured, in its most basic form, like this
auterion-api-version: 2 # The auterion API version this app is targeting
auterion-app-base: none # Can be set to a version of the auterion/app-base
# docker image, if it is used as a base image in the app.
# This makes the tooling remove all the layers from the
# respective base image to reduce the app size.
app-name: example-webservice # The name of your app
app-version: 0.0.1 # The version of your app
app-author: com.auterion # The authoring entity.
# Has to be reverse-domain name notation
target-platform: [skynode, ainode] # Supported platforms of this app.
# Can be skynode or ainode
# Like in docker-compose, your app can consist of multiple docker containers.
# In 'services' you list all the containers that make up your app. In most
# cases, this is just one service
example-webservice: # name of this service
build: services/example-webservice # location of the Dockerfile of the service
# .... Additional API configurations .....
auterion-cli app buildreally do? It performs the following tasks
- 1.For all the services with a
builddirective, it builds the image using
docker build --platform=linux/arm64
- 2.For all services with a
imagedirective it pulls them from docker hub
- 3.It packages the built image into a .auterionos file