Helm Chart Export
We have introduced a new feature where every service can be exported as a helm chart. This enables shipping of the applications developed on the truefoundry platform to other non-supported platforms.
API details
Get Helm metadata
GET /v1/app/{applicationId}/deployments/{deploymentId}/helm-metadata
https://docs.truefoundry.com/reference/applicationgethelmmetadatafordeployment
The applicationId and the deploymentId needs to be supplied for the app. The helm details are saved at the time of deployment
Sample Response -
{
// Name of the chart in the repo
"chartName": "service-component",
// Name of the repo where the chart is present
"chartRepo": "oci://quay.io/truefoundrycharts",
"chartValues": {
// values.yaml in json format
},
// Version of the chart used for this particular deployment
"chartVersion": "0.1.3"
}
The chartValues field can be converted to yaml and used as the values file for helm.
This response can be used to replicate the complete deployment by using helm CLI -
$ helm install <releaseName> -f <chartValues as yaml> --version <chartVersion> <chartRepo>/<chartName>
Note: Please make sure these pre-requisties are installed in your cluster before installing this chart.
Export Multiple Applications as Single Helm Chart
POST /v1/app/generate-helm-chart
https://docs.truefoundry.com/reference/applicationgeneratehelmchartfromdependencies
A download containing the helm chart and the input values.yaml
file will be generated.
<chart_name>.zip
values.yaml
Follow these steps to install the chart:
- Step 1: Extract the archive from the directory
- Step 2: Navigate to the directory containing the chart
- Step 3: Customize the
values.yaml
file as needed - Step 4: Install the component by running this command
helm install [release name] [path to downloaded chart] -f [path to values.yaml]
Note: Please make sure these pre-requisties are installed in your cluster before installing this chart.
Activity Logs API
You can find the activity logs by querying the API described in docs.
The activity logs are stored in the database and you can query them directly from the database as well.
Setting up a Grafana Dashboard
- Create a user on the DB and grant read permission on the activity_log table inside public schema in truefoundry DB.
- Add a Postgres datasource on Grafana and pass credentials of the above user. More details about setting up Postgres datasource can be found here: https://grafana.com/docs/grafana/latest/datasources/postgres/
- Now, create a dashboard and write queries to generate visualizations. Find some sample queries here that you can directly use:
Deployments per day:
select DATE_TRUNC ('day', "createdAt") as time, count("action") from activity_log where "action" = 'CREATE_DEPLOYMENT' GROUP BY DATE_TRUNC ('day', "createdAt"), "action" order by time desc
Deployments by cluster:
SELECT "clusterId", count(\*) from "activity_log" WHERE "action" = 'CREATE_DEPLOYMENT' group by "clusterId" order by count desc
Deployments by application type:
SELECT ("activity_log"."metaData"->>'applicationType') as appType, count(\*) from "activity_log" WHERE "action" = 'CREATE_DEPLOYMENT' group by appType
Updated about 2 hours ago