posh-providers/posh.schema.json
2025-09-19 16:29:28 +02:00

1952 lines
57 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"allOf": [
{
"$ref": "#/$defs/https:~1~1raw.githubusercontent.com~1foomo~1posh~1refs~1heads~1main~1posh.schema.json"
},
{
"type": "object",
"properties": {
"rclone": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1rclone~1rclone"
}
}
},
{
"type": "object",
"properties": {
"cdktf": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1hashicorp~1cdktf"
}
}
},
{
"type": "object",
"properties": {
"az": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1azure~1az"
}
}
},
{
"type": "object",
"properties": {
"gcloud": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1google~1gcloud"
}
}
},
{
"type": "object",
"properties": {
"terragrunt": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1gruntwork-io~1terragrunt"
}
}
},
{
"type": "object",
"properties": {
"doctl": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1digitalocean~1doctl"
}
}
},
{
"type": "object",
"properties": {
"op": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1onepassword~1op"
}
}
},
{
"type": "object",
"properties": {
"cloudflared": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1cloudflare~1cloudflared"
}
}
},
{
"type": "object",
"properties": {
"zip": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1arbitrary~1zip"
}
}
},
{
"type": "object",
"properties": {
"task": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1arbitrary~1task"
}
}
},
{
"type": "object",
"properties": {
"open": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1arbitrary~1open"
}
}
},
{
"type": "object",
"properties": {
"stern": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1stern~1stern"
}
}
},
{
"type": "object",
"properties": {
"k6": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1grafana~1k6"
}
}
},
{
"type": "object",
"properties": {
"k3d": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1k3d-io~1k3d"
}
}
},
{
"type": "object",
"properties": {
"etcd": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1etcd-io~1etcd"
}
}
},
{
"type": "object",
"properties": {
"hygen": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1jondot~1hygen"
}
}
},
{
"type": "object",
"properties": {
"sqlc": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1sqlc-dev~1sqlc"
}
}
},
{
"type": "object",
"properties": {
"mkcert": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1filosottile~1mkcert"
}
}
},
{
"type": "object",
"properties": {
"licensefinder": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1pivotal~1licensefinder"
}
}
},
{
"type": "object",
"properties": {
"docusaurus": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1facebook~1docusaurus"
}
}
},
{
"type": "object",
"properties": {
"stackit": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1stackitcloud~1stackit"
}
}
},
{
"type": "object",
"properties": {
"slack": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1slack-go~1slack"
}
}
},
{
"type": "object",
"properties": {
"teleport": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1gravitational~1teleport"
}
}
},
{
"type": "object",
"properties": {
"kubeforward": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1kubernetes~1kubeforward"
}
}
},
{
"type": "object",
"properties": {
"kubectl": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1kubernetes~1kubectl"
}
}
},
{
"type": "object",
"properties": {
"az": {
"oneOf": [
{
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1pulumi~1pulumi~1azure"
},
{
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1pulumi~1pulumi~1gcloud"
}
]
}
}
},
{
"type": "object",
"properties": {
"gocontentful": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1foomo~1gocontentful"
}
}
},
{
"type": "object",
"properties": {
"beam": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1foomo~1beam"
}
}
},
{
"type": "object",
"properties": {
"sesamy": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1foomo~1sesamy"
}
}
},
{
"type": "object",
"properties": {
"squadron": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1foomo~1squadron"
}
}
},
{
"type": "object",
"properties": {
"webdriverio": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1webdriverio~1webdriverio"
}
}
},
{
"type": "object",
"properties": {
"migrate": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1golang-migrate~1migrate"
}
}
},
{
"type": "object",
"properties": {
"bruno": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1usebruno~1bruno"
}
}
},
{
"type": "object",
"properties": {
"harbor": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1goharbor~1harbor"
}
}
}
],
"$defs": {
"https://github.com/foomo/posh-providers/arbitrary/open": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1arbitrary~1open/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1arbitrary~1open/$defs/ConfigRouter"
}
},
"ConfigRoute": {
"type": "object",
"required": [ "path", "description", "routes", "basicAuth" ],
"properties": {
"description": {
"description": "Route description",
"type": "string"
},
"basicAuth": {
"description": "Basic authentication secret",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1arbitrary~1open/$defs/Secret"
},
"path": {
"description": "Route path",
"type": "string"
},
"routes": {
"description": "Child routes",
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1arbitrary~1open/$defs/ConfigRoute"
}
}
},
"additionalProperties": false
},
"ConfigRouter": {
"type": "object",
"required": [ "url", "routes", "description" ],
"properties": {
"description": {
"description": "Router descriotion",
"type": "string"
},
"routes": {
"description": "Router Child routes",
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1arbitrary~1open/$defs/ConfigRoute"
}
},
"url": {
"description": "Router base url",
"type": "string"
}
},
"additionalProperties": false
},
"Secret": {
"type": "object",
"required": [ "account", "vault", "item", "field" ],
"properties": {
"account": {
"type": "string"
},
"field": {
"type": "string"
},
"item": {
"type": "string"
},
"vault": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/arbitrary/task": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1arbitrary~1task/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1arbitrary~1task/$defs/Task"
}
},
"Task": {
"type": "object",
"required": [
"prompt",
"env",
"description",
"precondition",
"deps",
"cmds",
"hidden"
],
"properties": {
"description": {
"description": "Description of the task",
"type": "string"
},
"cmds": {
"description": "Commands to execute",
"type": "array",
"items": {
"type": "string"
}
},
"deps": {
"description": "Dependencies to run",
"type": "array",
"items": {
"type": "string"
}
},
"env": {
"description": "Task environment variables",
"type": "array",
"items": {
"type": "string"
}
},
"hidden": {
"description": "Don't show in the completion list",
"type": "boolean"
},
"precondition": {
"description": "Precondition to cancel the execution of a task and its dependencies",
"type": "array",
"items": {
"type": "string"
}
},
"prompt": {
"description": "Prompt string to confirm execution",
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/arbitrary/zip": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1arbitrary~1zip/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "credentials" ],
"properties": {
"credentials": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1arbitrary~1zip/$defs/Secret"
}
}
},
"additionalProperties": false
},
"Secret": {
"type": "object",
"required": [ "account", "vault", "item", "field" ],
"properties": {
"account": {
"type": "string"
},
"field": {
"type": "string"
},
"item": {
"type": "string"
},
"vault": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/azure/az": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1azure~1az/$defs/Config",
"$defs": {
"Artifactory": {
"type": "object",
"required": [ "name", "resourceGroup" ],
"properties": {
"name": {
"type": "string"
},
"resourceGroup": {
"type": "string"
}
},
"additionalProperties": false
},
"Cluster": {
"type": "object",
"required": [ "name", "resourceGroup" ],
"properties": {
"name": {
"description": "Cluster",
"type": "string"
},
"resourceGroup": {
"description": "Cluster resource group name",
"type": "string"
}
},
"additionalProperties": false
},
"Config": {
"type": "object",
"required": [ "configPath", "tenantId", "subscriptions", "servicePrincipals" ],
"properties": {
"configPath": {
"description": "Config path",
"type": "string"
},
"servicePrincipals": {
"description": "Authentication service principals",
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1azure~1az/$defs/ServicePrincipal"
}
},
"subscriptions": {
"description": "Subscription configurations",
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1azure~1az/$defs/Subscription"
}
},
"tenantId": {
"description": "Tenant id",
"type": "string"
}
},
"additionalProperties": false
},
"ServicePrincipal": {
"type": "object",
"required": [ "tenantId", "clientId", "clientSecret" ],
"properties": {
"clientId": {
"description": "Application client id",
"type": "string"
},
"clientSecret": {
"description": "Application password",
"type": "string"
},
"tenantId": {
"description": "Tenant id",
"type": "string"
}
},
"additionalProperties": false
},
"Subscription": {
"type": "object",
"required": [ "name", "clusters", "artifactories" ],
"properties": {
"artifactories": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1azure~1az/$defs/Artifactory"
}
},
"clusters": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1azure~1az/$defs/Cluster"
}
},
"name": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/cloudflare/cloudflared": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1cloudflare~1cloudflared/$defs/Config",
"$defs": {
"Access": {
"type": "object",
"required": [ "type", "hostname", "port" ],
"properties": {
"type": {
"type": "string"
},
"hostname": {
"type": "string"
},
"port": {
"type": "integer"
}
},
"additionalProperties": false
},
"Config": {
"type": "object",
"required": [ "path", "access" ],
"properties": {
"access": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1cloudflare~1cloudflared/$defs/Access"
}
},
"path": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/digitalocean/doctl": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1digitalocean~1doctl/$defs/Config",
"$defs": {
"Cluster": {
"type": "object",
"required": [ "name" ],
"properties": {
"name": {
"type": "string"
}
},
"additionalProperties": false
},
"Config": {
"type": "object",
"required": [ "configPath", "clusters" ],
"properties": {
"clusters": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1digitalocean~1doctl/$defs/Cluster"
}
},
"configPath": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/etcd-io/etcd": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1etcd-io~1etcd/$defs/Config",
"$defs": {
"Cluster": {
"type": "object",
"required": [ "name", "podName", "namespace", "paths" ],
"properties": {
"name": {
"type": "string"
},
"namespace": {
"type": "string"
},
"paths": {
"type": "array",
"items": {
"type": "string"
}
},
"podName": {
"type": "string"
}
},
"additionalProperties": false
},
"Config": {
"type": "object",
"required": [ "configPath", "clusters" ],
"properties": {
"clusters": {
"type": "array",
"items": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1etcd-io~1etcd/$defs/Cluster"
}
},
"configPath": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/facebook/docusaurus": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1facebook~1docusaurus/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [
"sourcePath",
"localPort",
"nodeTag",
"imageTag",
"imageName",
"volumes"
],
"properties": {
"imageName": {
"type": "string"
},
"imageTag": {
"type": "string"
},
"localPort": {
"type": "string"
},
"nodeTag": {
"type": "string"
},
"sourcePath": {
"type": "string"
},
"volumes": {
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/filosottile/mkcert": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1filosottile~1mkcert/$defs/Config",
"$defs": {
"Certificate": {
"type": "object",
"required": [ "name", "names" ],
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": false
},
"Config": {
"type": "object",
"required": [ "certificatePath", "certificates" ],
"properties": {
"certificatePath": {
"type": "string"
},
"certificates": {
"type": "array",
"items": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1filosottile~1mkcert/$defs/Certificate"
}
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/foomo/beam": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1foomo~1beam/$defs/Config",
"$defs": {
"Cluster": {
"type": "object",
"required": [ "port", "hostname", "kubeconfig" ],
"properties": {
"hostname": {
"type": "string"
},
"kubeconfig": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1foomo~1beam/$defs/Secret"
},
"port": {
"type": "integer"
}
},
"additionalProperties": false
},
"Config": {
"type": "object",
"required": [ "clusters", "databases" ],
"properties": {
"clusters": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1foomo~1beam/$defs/Cluster"
}
},
"databases": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1foomo~1beam/$defs/Database"
}
}
},
"additionalProperties": false
},
"Database": {
"type": "object",
"required": [ "port", "hostname" ],
"properties": {
"hostname": {
"type": "string"
},
"port": {
"type": "integer"
}
},
"additionalProperties": false
},
"Secret": {
"type": "object",
"required": [ "account", "vault", "item", "field" ],
"properties": {
"account": {
"type": "string"
},
"field": {
"type": "string"
},
"item": {
"type": "string"
},
"vault": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/foomo/gocontentful": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1foomo~1gocontentful/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "spaceId", "cmaKey", "contentTypes" ],
"properties": {
"cmaKey": {
"type": "string"
},
"contentTypes": {
"type": "array",
"items": {
"type": "string"
}
},
"environment": {
"type": "string"
},
"spaceId": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/foomo/sesamy": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1foomo~1sesamy/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"https://github.com/foomo/posh-providers/foomo/squadron": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1foomo~1squadron/$defs/Config",
"$defs": {
"Cluster": {
"type": "object",
"required": [ "name", "notify", "confirm", "fleets" ],
"properties": {
"confirm": {
"description": "Enable confirmation",
"type": "boolean"
},
"fleets": {
"description": "Cluster fleet names",
"type": "array",
"items": {
"type": "string"
}
},
"name": {
"description": "Cluser name",
"type": "string"
},
"notify": {
"description": "Enable notification by default",
"type": "boolean"
}
},
"additionalProperties": false
},
"Config": {
"type": "object",
"required": [ "path", "clusters" ],
"properties": {
"clusters": {
"description": "Cluster configurations",
"type": "array",
"items": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1foomo~1squadron/$defs/Cluster"
}
},
"path": {
"description": "Path to the squadron root",
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/goharbor/harbor": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1goharbor~1harbor/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "url", "authUrl", "project" ],
"properties": {
"authUrl": {
"type": "string"
},
"project": {
"type": "string"
},
"url": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/golang-migrate/migrate": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1golang-migrate~1migrate/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "sources", "databases" ],
"properties": {
"databases": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"sources": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/google/gcloud": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1google~1gcloud/$defs/Config",
"$defs": {
"Account": {
"type": "object",
"required": [ "name", "email", "key" ],
"properties": {
"email": {
"type": "string"
},
"key": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1google~1gcloud/$defs/Secret"
},
"name": {
"type": "string"
}
},
"additionalProperties": false
},
"Cluster": {
"type": "object",
"required": [ "name", "project", "region", "account" ],
"properties": {
"account": {
"type": "string"
},
"name": {
"type": "string"
},
"project": {
"type": "string"
},
"region": {
"type": "string"
}
},
"additionalProperties": false
},
"Config": {
"type": "object",
"required": [ "configPath", "accounts", "clusters" ],
"properties": {
"accounts": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1google~1gcloud/$defs/Account"
}
},
"clusters": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1google~1gcloud/$defs/Cluster"
}
},
"configPath": {
"type": "string"
}
},
"additionalProperties": false
},
"Secret": {
"type": "object",
"required": [ "account", "vault", "item", "field" ],
"properties": {
"account": {
"type": "string"
},
"field": {
"type": "string"
},
"item": {
"type": "string"
},
"vault": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/grafana/k6": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1grafana~1k6/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "path", "envs" ],
"properties": {
"envs": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1grafana~1k6/$defs/Env"
}
},
"path": {
"type": "string"
}
},
"additionalProperties": false
},
"Env": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"https://github.com/foomo/posh-providers/gravitational/teleport": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1gravitational~1teleport/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "path", "labels", "hostname", "kubernetes", "apps", "database" ],
"properties": {
"apps": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"database": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1gravitational~1teleport/$defs/Database"
},
"hostname": {
"type": "string"
},
"kubernetes": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1gravitational~1teleport/$defs/Kubernetes"
},
"labels": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"path": {
"type": "string"
}
},
"additionalProperties": false
},
"Database": {
"type": "object",
"required": [ "user" ],
"properties": {
"user": {
"type": "string"
}
},
"additionalProperties": false
},
"Kubernetes": {
"type": "object",
"required": [ "aliases" ],
"properties": {
"aliases": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/gruntwork-io/terragrunt": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1gruntwork-io~1terragrunt/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "path", "cachePath" ],
"properties": {
"cachePath": {
"type": "string"
},
"path": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/hashicorp/cdktf": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1hashicorp~1cdktf/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "path", "outPath" ],
"properties": {
"outPath": {
"type": "string"
},
"path": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/jondot/hygen": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1jondot~1hygen/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "templatePath" ],
"properties": {
"templatePath": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/k3d-io/k3d": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1k3d-io~1k3d/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "charts", "registry", "clusters" ],
"properties": {
"charts": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1k3d-io~1k3d/$defs/ConfigCharts"
},
"clusters": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1k3d-io~1k3d/$defs/ConfigCluster"
}
},
"registry": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1k3d-io~1k3d/$defs/ConfigRegistry"
}
},
"additionalProperties": false
},
"ConfigCharts": {
"type": "object",
"required": [ "path", "prefix" ],
"properties": {
"path": {
"type": "string"
},
"prefix": {
"type": "string"
}
},
"additionalProperties": false
},
"ConfigCluster": {
"type": "object",
"required": [ "alias", "image", "port", "enableTraefikRouter", "args" ],
"properties": {
"alias": {
"description": "K3d cluster name",
"type": "string"
},
"args": {
"description": "Additional arguments",
"type": "array",
"items": {
"type": "string"
}
},
"enableTraefikRouter": {
"description": "EnableTraefikRouter allows to create the cluster with the default traefik router",
"type": "boolean"
},
"image": {
"description": "Docker image to use",
"type": "string"
},
"port": {
"description": "Port to bind to",
"type": "string"
}
},
"additionalProperties": false
},
"ConfigRegistry": {
"type": "object",
"required": [ "name", "port" ],
"properties": {
"name": {
"type": "string"
},
"port": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/kubernetes/kubectl": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1kubernetes~1kubectl/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "configPath" ],
"properties": {
"configPath": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/kubernetes/kubeforward": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1kubernetes~1kubeforward/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1kubernetes~1kubeforward/$defs/PortForward"
}
},
"PortForward": {
"type": "object",
"required": [ "cluster", "namespace", "description", "target", "port" ],
"properties": {
"description": {
"description": "Optional description",
"type": "string"
},
"cluster": {
"description": "Target cluster",
"type": "string"
},
"namespace": {
"description": "Target namespace",
"type": "string"
},
"port": {
"description": "Target and host port mapping",
"type": "string"
},
"target": {
"description": "Target name",
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/onepassword/op": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1onepassword~1op/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "account", "tokenFilename" ],
"properties": {
"account": {
"type": "string"
},
"tokenFilename": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/pivotal/licensefinder": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1pivotal~1licensefinder/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "logPath", "decisionsPath", "sources" ],
"properties": {
"decisionsPath": {
"type": "string"
},
"logPath": {
"type": "string"
},
"sources": {
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/pulumi/pulumi/azure": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1pulumi~1pulumi~1azure/$defs/Config",
"$defs": {
"Backend": {
"type": "object",
"required": [
"location",
"container",
"subscription",
"resourceGroup",
"storageAccount",
"passphrase"
],
"properties": {
"container": {
"type": "string"
},
"location": {
"type": "string"
},
"passphrase": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1pulumi~1pulumi~1azure/$defs/Secret"
},
"resourceGroup": {
"type": "string"
},
"storageAccount": {
"type": "string"
},
"subscription": {
"type": "string"
}
},
"additionalProperties": false
},
"Config": {
"type": "object",
"required": [ "path", "configPath", "backends" ],
"properties": {
"backends": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1pulumi~1pulumi~1azure/$defs/Backend"
}
},
"configPath": {
"type": "string"
},
"path": {
"type": "string"
}
},
"additionalProperties": false
},
"Secret": {
"type": "object",
"required": [ "account", "vault", "item", "field" ],
"properties": {
"account": {
"type": "string"
},
"field": {
"type": "string"
},
"item": {
"type": "string"
},
"vault": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/pulumi/pulumi/gcloud": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1pulumi~1pulumi~1gcloud/$defs/Config",
"$defs": {
"Backend": {
"type": "object",
"required": [ "location", "bucket", "project", "passphrase" ],
"properties": {
"bucket": {
"type": "string"
},
"location": {
"type": "string"
},
"passphrase": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1pulumi~1pulumi~1gcloud/$defs/Secret"
},
"project": {
"type": "string"
}
},
"additionalProperties": false
},
"Config": {
"type": "object",
"required": [ "path", "configPath", "backends" ],
"properties": {
"backends": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1pulumi~1pulumi~1gcloud/$defs/Backend"
}
},
"configPath": {
"type": "string"
},
"path": {
"type": "string"
}
},
"additionalProperties": false
},
"Secret": {
"type": "object",
"required": [ "account", "vault", "item", "field" ],
"properties": {
"account": {
"type": "string"
},
"field": {
"type": "string"
},
"item": {
"type": "string"
},
"vault": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/rclone/rclone": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1rclone~1rclone/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "path", "config" ],
"properties": {
"config": {
"type": "string"
},
"path": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/slack-go/slack": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1slack-go~1slack/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "token", "channels", "webhooks" ],
"properties": {
"channels": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"token": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1slack-go~1slack/$defs/Secret"
},
"webhooks": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1slack-go~1slack/$defs/Secret"
}
}
},
"additionalProperties": false
},
"Secret": {
"type": "object",
"required": [ "account", "vault", "item", "field" ],
"properties": {
"account": {
"type": "string"
},
"field": {
"type": "string"
},
"item": {
"type": "string"
},
"vault": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/sqlc-dev/sqlc": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1sqlc-dev~1sqlc/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "tempDir", "cacheDir" ],
"properties": {
"cacheDir": {
"type": "string"
},
"tempDir": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/stackitcloud/stackit": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1stackitcloud~1stackit/$defs/Config",
"$defs": {
"Cluster": {
"type": "object",
"required": [ "name" ],
"properties": {
"name": {
"type": "string"
}
},
"additionalProperties": false
},
"Config": {
"type": "object",
"required": [ "projects" ],
"properties": {
"projects": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1stackitcloud~1stackit/$defs/Project"
}
}
},
"additionalProperties": false
},
"Project": {
"type": "object",
"required": [ "id", "clusters" ],
"properties": {
"id": {
"type": "string"
},
"clusters": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1stackitcloud~1stackit/$defs/Cluster"
}
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/stern/stern": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1stern~1stern/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "queries" ],
"properties": {
"queries": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1stern~1stern/$defs/Query"
}
}
},
"additionalProperties": false
},
"Query": {
"type": "object",
"required": [ "query", "queries" ],
"properties": {
"queries": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1stern~1stern/$defs/Query"
}
},
"query": {
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/usebruno/bruno": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1usebruno~1bruno/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "path" ],
"properties": {
"path": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://github.com/foomo/posh-providers/webdriverio/webdriverio": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1webdriverio~1webdriverio/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "dirs", "modes", "sites", "secrets", "browserStack" ],
"properties": {
"browserStack": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1webdriverio~1webdriverio/$defs/Secret"
},
"dirs": {
"type": "array",
"items": {
"type": "string"
}
},
"modes": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1webdriverio~1webdriverio/$defs/ConfigModes"
},
"secrets": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1webdriverio~1webdriverio/$defs/Secret"
}
},
"sites": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1webdriverio~1webdriverio/$defs/ConfigSites"
}
},
"additionalProperties": false
},
"ConfigEnv": {
"type": "object",
"required": [ "auth", "domain" ],
"properties": {
"auth": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1webdriverio~1webdriverio/$defs/Secret"
},
"domain": {
"type": "string"
}
},
"additionalProperties": false
},
"ConfigEnvs": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1webdriverio~1webdriverio/$defs/ConfigEnv"
}
},
"ConfigMode": {
"type": "object",
"required": [ "port", "hostPrefix" ],
"properties": {
"hostPrefix": {
"type": "string"
},
"port": {
"type": "string"
}
},
"additionalProperties": false
},
"ConfigModes": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1webdriverio~1webdriverio/$defs/ConfigMode"
}
},
"ConfigSites": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/https:~1~1github.com~1foomo~1posh-providers~1webdriverio~1webdriverio/$defs/ConfigEnvs"
}
},
"Secret": {
"type": "object",
"required": [ "account", "vault", "item", "field" ],
"properties": {
"account": {
"type": "string"
},
"field": {
"type": "string"
},
"item": {
"type": "string"
},
"vault": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"https://raw.githubusercontent.com/foomo/posh/refs/heads/main/posh.schema.json": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/https:~1~1raw.githubusercontent.com~1foomo~1posh~1refs~1heads~1main~1posh.schema.json/$defs/Config",
"$defs": {
"Config": {
"type": "object",
"required": [ "version" ],
"properties": {
"env": {
"$ref": "#/$defs/https:~1~1raw.githubusercontent.com~1foomo~1posh~1refs~1heads~1main~1posh.schema.json/$defs/Env"
},
"prompt": {
"$ref": "#/$defs/https:~1~1raw.githubusercontent.com~1foomo~1posh~1refs~1heads~1main~1posh.schema.json/$defs/Prompt"
},
"require": {
"$ref": "#/$defs/https:~1~1raw.githubusercontent.com~1foomo~1posh~1refs~1heads~1main~1posh.schema.json/$defs/Require"
},
"version": {
"default": "v1.0",
"type": "string"
}
}
},
"Env": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
},
"Prompt": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"aliases": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"history": {
"$ref": "#/$defs/https:~1~1raw.githubusercontent.com~1foomo~1posh~1refs~1heads~1main~1posh.schema.json/$defs/PromptHistory"
},
"prefix": {
"type": "string"
},
"prefixGit": {
"type": "boolean"
}
}
},
"PromptHistory": {
"type": "object",
"properties": {
"filename": {
"type": "string"
},
"limit": {
"type": "integer"
},
"lockFilename": {
"type": "string"
}
}
},
"Require": {
"type": "object",
"properties": {
"envs": {
"type": "array",
"items": {
"$ref": "#/$defs/https:~1~1raw.githubusercontent.com~1foomo~1posh~1refs~1heads~1main~1posh.schema.json/$defs/RequireEnv"
}
},
"packages": {
"type": "array",
"items": {
"$ref": "#/$defs/https:~1~1raw.githubusercontent.com~1foomo~1posh~1refs~1heads~1main~1posh.schema.json/$defs/RequirePackage"
}
},
"scripts": {
"type": "array",
"items": {
"$ref": "#/$defs/https:~1~1raw.githubusercontent.com~1foomo~1posh~1refs~1heads~1main~1posh.schema.json/$defs/RequireScript"
}
}
}
},
"RequireEnv": {
"type": "object",
"properties": {
"help": {
"type": "string"
},
"name": {
"type": "string"
}
}
},
"RequirePackage": {
"type": "object",
"properties": {
"command": {
"type": "string"
},
"help": {
"type": "string"
},
"name": {
"type": "string"
},
"version": {
"type": "string"
}
}
},
"RequireScript": {
"type": "object",
"properties": {
"command": {
"type": "string"
},
"help": {
"type": "string"
},
"name": {
"type": "string"
}
}
}
}
}
}
}