Resource Drivers

Open-Source Resource Drivers available in Humanitec

Resource Drivers enable Humanitec to provision Resources. Drivers are just web services that expose 2 endpoints:

  • a PUT endpoint for provisioning or updating a Resource and

  • a DELETE endpoint for deallocating the Resource.

The PUT endpoint can also return a set of outputs that can be injected into Workload Configuration via Template Strings.

Humanitec is in the process of open-sourcing all of the Resource Drivers listed below. The aim is to make it easy to extend or adapt these drivers for specific needs.

The first set of Resource Drivers will be open-sourced in September 2021.

List of Resource Drivers

The following Resource Drivers are available to all organizations in Humanitec. We will add the links to the public repositories once available.

Resource Driver

Resource Type

Description

humanitec/aks

k8s-cluster

Connecting to an Azure Kubernetes Service (AKS) cluster.

humanitec/gke

k8s-cluster

Connecting to a Google Kubernetes Engine (GKE) cluster.

humanitec/eks

k8s-cluster

Connecting to an Elastic Kubernetes Service (EKS) cluster provided by AWS.

humanitec/aws

s3

Provision S3 buckets on AWS.

humanitec/cloudsql

postgres

Provision PostgreSQL databases in an existing Google Cloud SQL instance.

humanitec/generic-rdbms-postgres

postgres

Provision a PostgreSQL database in an existing PostgreSQL instance.

humanitec/generic-rdbms-postgres-overssh

postgres

Provision a PostgreSQL database in an existing PostgreSQL instance where the connection is over SSH.

humanitec/generic-rdbms-mariadb

mariadb

Provision a MariaDB database in an existing MariaDB instance.

humanitec/generic-rdbms-mariadb-overssh

mariadb

Provision a MariaDB database in an existing MariaDB instance where the connection is over SSH.

humanitec/generic-rdbms-mysql

mysql

Provision a MySQL database in an existing MySQL instance.

humanitec/generic-rdbms-mysql-overssh

mysql

Provision a MySQL database in an existing MySQL instance where the connection is over SSH.

humanitec/horizontal-pod-autoscaler

horizontal-pod-autoscaler

Inject a Horizontal Pod Autoscalar object into the workload.

​humanitec/ingress​

ingress

Inject a vanilla Kubernetes Ingress object into the namespace.

humanitec/nfs

volume

Inject a Persistent Volume and Persistent Volume Claim object that allows an NFS share to be mounted in a Pod.

humanitec/pvc

volume

Inject a custom Persistent Volume Claim into the namespace.

​humanitec/dns-cloudflare​

dns

Provision a new subdomain for a domain that is managed in a Cloudflare Zone.

​humanitec/dns-wildcard​

dns

Provision a new subdomain for a domain based on a wildcard DNS record.

List of Experimental Resource Drivers

The following Resource Drivers are in development and/or testing. If you wish to make them available in your organization, please contact us.

Resource Driver

Resource Type

Description

humanitec/terraform

any

Applies Terraform configuration.

humanitec/azure-service-bus

azure-service-bus

Provisions the namespace, topic, and/or subscription for Azure Service Bus.

humanitec/aws-elasticache

redis

Provisions an ElastiCache for Redis on AWS.

humanitec/elasticsearch

elasticsearch

Provision an Elasticsearch instance on Elastic Cloud.