Skip to main content

Example

Sample .flinkwerk/config.yml file.

api_version: "1.0.0"

# Project metadata
owner: my-org
name: my-project
title: "Project title"
excerpt: "Short info about my project."
description: "Longer description about my project which could also include HTML."

# Custom domain for preview URLs
domain: my-projects.my-org.io

# Use your custom registry for container images instead of Flinkwerk's default
registry: my-registry # Defined below as global resource

# Inheritance of external base application packaged as Helm chart
from:
type: helm
sku: their-org/their-chart
repository: https://charts.their-org.com/their-repository
version: 12.1.*

# Dependencies which will be deployed from scratch per branch
dependencies:
erp:
type: helm
sku: bitnami/odoo
repository: https://charts.bitnami.com/bitnami
version: 20.2.3

# Environments define the deployment of your project and how to expose it
environments:
staging:
cluster: my-cluster # Defined below as global resource
only: branches
except: env/production
production:
cluster: my-autopilot-cluster # Defined below as global resource
routes:
- domain: 'my-org.com' # Custom domain for project application
branch: env/production
dependencies:
erp: erp # Dependency will be accessible at erp.my-org.com

# Global resources available across all your projects
global:
my-cluster:
type: cluster
sku: flinkwerk/trial
my-autopilot-cluster:
type: cluster
kubeconfig: .flinkwerk/.kube/external
my-registry:
type: registry
push_path: test/app
server: registry.gitlab.com
email: $REGISTRY_EMAIL
user: $REGISTRY_EMAIL
password: $REGISTRY_PASSWORD

# Offer your project for a monthly subscription in Flinkwerk Marketplace
product:
type: app
price: 42
homepage: my-product.com