JovianX Platform for SaaS is a cloud application platform(aPaaS) for SaaS applications, allowing to build, and manage SaaS products, and managed services. JovianX provides SaaS back-office management, with a rich set of services to build, run and manage a SaaS product. Including: Cloud Management, Payments and Billing, Subscription Management, Multi-Tenancy, Application Life-cycle Management, Monitoring and Logging, Hosted Signup/Login page, User Signup Designer, Authenticated application end-points and much much more.
First, review the application manifest YAML files (a file named jovianx.yaml
).
The applicaiotn manifest has 2 main sections: the first is Components
which decalres service components with their properties, and the second is settings_descriptors
which allows end-users to choose settings and control properties on signup.
Review the application manifest yaml file:
$ cat hello-world-saas-app/jovianx.yaml
# JovianX API Compatibility
# v1
jovianx_api_version: v1
# Name of this SaaS application
# string
application_name: hello-world-app
# version of this JovianX blueprint
# semantic versioning
version: 1.0.0
...
A JovianX blueprint is a tar.gz archive, it must contain an application manifest file(jovianx.yaml
) in it's root directory, and also include all the helm chart directories referenced in the application manifest Jovianx.yaml
file.
Review the files in the blueprint:
$ tree hello-world-saas-app/
hello-world-saas-app/
├── jovianx.yaml
├── LICENSE
├── mongodb-chart
│ ├── Chart.yaml
│ ├── values.yaml
│ └── ...
├── node-chart
│ ├── Chart.yaml
│ ├── values.yaml
│ └── ...
├── README.md
└── values
├── file1
└── file2
7 directories, 39 files
Create a tar.gz archive with the application manifest file(jovianx.yaml) is in the root.
$ cd hello-world-saas-app/
$ tar -czvf blueprint.tar.gz jovianx.yaml node-chart/ mongodb-chart/ values/
You can push your application blueprint to JovianX via the UI, or via a dedicated API. You can also integrate push operation with your CI workflow.
You can push your blueprint via curl:
$ curl -u '<ACCOUNT_API_KEY>:<ACCOUNT_API_SECRET>' -F '[email protected]' 'https://<YOUR ACCOUNT NAME>.jovianx.app/api/v1/upload_blueprint'
NOTE: You can find your ACCOUNT_API_KEY and ACCOUNT_API_SECRET in the blueprints page under
Upload a new Blueprint
card.
NOTE: You can also set the blueprint as ACTIVE by adding the querystring
?make_default=true
to the path.