Skip to content

Managed applications

A managed application is an application that GRN.CLOUD installs and keeps up to date for you, such as Nextcloud or n8n. You decide how it is configured. GRN.CLOUD takes care of the rest.

Each managed application is one Application object in your home project. You find it on the Applications page of the web console at https://console.grn.cloud.

Who does what

GRN.CLOUD You
Which version runs Upgrades the application to the latest version -
Deployment Every change is deployed automatically -
Settings Supplies defaults that work Change the settings of your application
The project it runs in Created by the application -

The settings are Helm values: the block spec.source.helm.valuesObject of the Application. That block is the only part you change.

Deployment is always automatic

You do not start a deployment. A change of your settings is live in less than a minute, and a new version from GRN.CLOUD is rolled out without action from you.

How it fits together

flowchart LR
    GRN["GRN.CLOUD: application and version"]
    YOU["You: settings"]
    subgraph HOME["Home project, named after your tenant"]
        APP["Application"]
    end
    subgraph TARGET["Project of the application"]
        WL["Workloads"]
    end
    GRN --> APP
    YOU --> APP
    APP -->|deploys and upgrades| WL

Tenant and home project

A tenant is one customer of the cluster: a company, a team or a single user. Each tenant has a tenant name, and one home project that has exactly that name. The home project holds your Application objects.

Tenant Home project
A single user Your username in lower case, with @ and . replaced by -. The user jane@example.com gets jane-example-com. Created at your first console login.
A company The company name. GRN.CLOUD creates it.

To find your tenant name:

oc get projects -L hoolia.eu/tenant

The TENANT column shows the tenant of each project. The project whose name equals its tenant is your home project.

The project of an application

An application runs in a project of its own, named <tenant>-<application>. The application creates that project. You do not create it first.

One quota for all your projects

All projects of a tenant share one quota. The default is 4 CPU and 8Gi of memory in requests, and 100Gi of storage. Limits and troubleshooting has the details.

Applications from the shop

An application you order in the shop arrives the same way: one Application in your home project, created for you from the order line. Two mails follow the order, both to the contact of the order with a copy to info@grn.cloud: Your GRN.CLOUD cloud account is ready once, with your console login, and Your <app> is ready at <hostname> per application, with its address and a link to the Application in the console. Access the platform describes the login.

What Where
Its address https://<hostname>.<app domain>: the hostname you typed on the order line, on the app domain of the cluster that runs the application (apps.grn.cloud for the compute cluster, ai.grn.cloud for the AI cluster). A hostname with dots is used as typed: point it at the cluster yourself, with a CNAME to router-default.apps.grn.cloud (compute) or router-default.apps.berry-ai.openshift.eu (AI), or an A record to the address that name resolves to. The certificate is issued once the name resolves to the cluster; until then the application answers with a certificate warning.
Its secrets generated once at deployment and written into the Application: open the YAML tab and read them under spec.source.helm.valuesObject.
The hostname, a size, a quantity options of the order line: order the application again with the new value, or ask support to change the line. A hostname edited by hand in the Application is put back at the next sync.
Removal cancel the subscription; the application is removed ten minutes after the last active order ended.

The mirror holds the other way too. An application you deploy from a managed template in the Developer Catalog shows up in the shop as an order of its own, with one line for the product you chose, so the shop lists every application you run and a paid product is billed from the day of the deployment. Delete that Application in the GitOps page and the order line ends within the hour; nothing is deployed again for it. An Application you write yourself, from your own chart or repository, is yours alone: the shop never sees it.

The order line in the shop shows the state of the application: provisioning until it is reachable, ready when it is, and degraded when it is deployed but not healthy. Degraded means someone on the platform team is already looking; the line turns ready again when the application does. The reason is visible to you as well: open the Application, and the resource tree names the pod or the route that is not ready.