Skip to content
This repository has been archived by the owner on Oct 23, 2024. It is now read-only.

Add Kill Bill and Kaui packages #1426

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
117 changes: 117 additions & 0 deletions repo/packages/K/kaui/0/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
{
"type": "object",
"properties": {
"service": {
"description": "Configuration properties for the Kaui service for DC/OS.",
"type": "object",
"properties": {
"name": {
"description": "The name of the service to display in the DC/OS dashboard.",
"type": "string",
"default": "kaui"
},
"cpus": {
"description": "CPU shares to allocate to this Kaui instance.",
"type": "number",
"default": 1,
"minimum": 1
},
"mem": {
"description": "Memory (in MB) to allocate to this Kaui instance.",
"type": "number",
"default": 2048.0,
"minimum": 2048.0
}
},
"required": [
"name",
"cpus",
"mem"
]
},
"database": {
"description": "MySQL database properties.",
"type": "object",
"properties": {
"host": {
"description": "Database host name and port (e.g. 1.2.3.4:3306).",
"type": "string",
"default": "mysql.marathon.mesos:3306"
},
"name": {
"description": "Database name.",
"type": "string",
"default": "kaui"
},
"user": {
"description": "Database username.",
"type": "string",
"default": "kaui"
},
"password": {
"description": "Database password.",
"type": "string",
"default": "kaui"
}
},
"required": [
"host",
"name",
"user",
"password"
]
},
"networking": {
"description": "Networking-related configuration properties for Kaui on DC/OS.",
"type": "object",
"properties": {
"external_access": {
"type": "object",
"description": "Enable access from outside the cluster through Marathon-LB.",
"properties": {
"enable": {
"description": "Enable or disable creating a VIP for access through a public node running Marathon-LB.",
"type": "boolean",
"default": true
},
"external_access_port": {
"description": "Port number to be used for clear communication in the Marathon-LB load balancer",
"type": "number",
"default": 10090
},
"group": {
"description": "The HAProxy group to configure for integration with Marathon-lb.",
"type": "string",
"default": "internal"
},
"virtual-host": {
"description": "The virtual host address to configure for integration with Marathon-lb.",
"type": "string",
"default": "kaui.dcos"
}
}
}
}
},
"killbill": {
"description": "Kill Bill properties.",
"type": "object",
"properties": {
"url": {
"description": "Kill Bill url.",
"type": "string",
"default": "http://marathon-lb-internal.marathon.mesos:10080"
}
},
"required": [
"url"
]
}
},
"required": [
"service",
"database",
"networking",
"killbill"
]
}
57 changes: 57 additions & 0 deletions repo/packages/K/kaui/0/marathon.json.mustache
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
{
"id": "{{service.name}}",
"cpus": {{service.cpus}},
"mem": {{service.mem}},
"instances": 1,
"env": {
"KAUI_KILLBILL_URL": "{{killbill.url}}",
"KAUI_CONFIG_DAO_URL": "jdbc:mysql://{{database.host}}/{{database.name}}",
"KAUI_CONFIG_DAO_USER": "{{database.user}}",
"KAUI_CONFIG_DAO_PASSWORD": "{{database.password}}"
},
"container": {
"type": "DOCKER",
"docker": {
"image": "{{resource.assets.container.docker.kaui}}",
"network": "BRIDGE",
"portMappings": [
{
"containerPort": 8080,
"hostPort": 0,
{{#networking.external_access.enable}}
"servicePort": {{networking.external_access.external_access_port}},
{{/networking.external_access.enable}}
"protocol": "tcp",
"name": "kaui",
"labels": {
"VIP_0": "/{{service.name}}:{{networking.port}}"
}
}
]
}
},
"healthChecks": [
{
"path": "/",
"portIndex": 0,
"protocol": "HTTP",
"gracePeriodSeconds": 30,
"intervalSeconds": 60,
"timeoutSeconds": 20,
"maxConsecutiveFailures": 3
}
],
"labels": {
{{#networking.external_access.enable}}
"HAPROXY_GROUP":"{{networking.external_access.group}}",
"HAPROXY_0_VHOST":"{{networking.external_access.virtual-host}}",
{{/networking.external_access.enable}}
"DCOS_SERVICE_NAME" : "{{service.name}}",
"DCOS_SERVICE_PORT_INDEX" : "0",
"DCOS_SERVICE_SCHEME": "http"
},
"upgradeStrategy":{
"minimumHealthCapacity": 0,
"maximumOverCapacity": 0
}
}
19 changes: 19 additions & 0 deletions repo/packages/K/kaui/0/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"packagingVersion": "4.0",
"name": "kaui",
"version": "0.1.0",
"scm": "https://github.com/killbill/killbill-cloud.git",
"maintainer": "https://groups.google.com/forum/#!forum/killbilling-users",
"website": "https://killbill.io/",
"description": "Administrative UI for Kill Bill, the open-source subscription billing and payments platform.",
"tags": ["subscription", "payment", "billing"],
"preInstallNotes": "Make sure both MySQL and Kill Bill have been installed and configured first.",
"postInstallNotes": "Kaui has been installed.",
"postUninstallNotes": "Kaui has been uninstalled.",
"licenses": [
{
"name": "Apache License Version 2.0",
"url": "https://www.apache.org/licenses/LICENSE-2.0"
}
]
}
14 changes: 14 additions & 0 deletions repo/packages/K/kaui/0/resource.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"images": {
"icon-small": "https://raw.githubusercontent.com/killbill/killbill-docs/v3/userguide/assets/img/duck-small.png",
"icon-medium": "https://raw.githubusercontent.com/killbill/killbill-docs/v3/userguide/assets/img/duck-medium.png",
"icon-large": "https://raw.githubusercontent.com/killbill/killbill-docs/v3/userguide/assets/img/duck-large.png"
},
"assets": {
"container": {
"docker": {
"kaui": "killbill/kaui:0.8.9"
}
}
}
}
102 changes: 102 additions & 0 deletions repo/packages/K/killbill/0/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
{
"type": "object",
"properties": {
"service": {
"description": "Configuration properties for the Kill Bill service for DC/OS.",
"type": "object",
"properties": {
"name": {
"description": "The name of the service to display in the DC/OS dashboard.",
"type": "string",
"default": "killbill"
},
"cpus": {
"description": "CPU shares to allocate to this Kill Bill instance.",
"type": "number",
"default": 1,
"minimum": 1
},
"mem": {
"description": "Memory (in MB) to allocate to this Kill Bill instance.",
"type": "number",
"default": 2048.0,
"minimum": 2048.0
}
},
"required": [
"name",
"cpus",
"mem"
]
},
"database": {
"description": "MySQL database properties.",
"type": "object",
"properties": {
"host": {
"description": "Database host name and port (e.g. 1.2.3.4:3306).",
"type": "string",
"default": "mysql.marathon.mesos:3306"
},
"name": {
"description": "Database name.",
"type": "string",
"default": "killbill"
},
"user": {
"description": "Database username.",
"type": "string",
"default": "killbill"
},
"password": {
"description": "Database password.",
"type": "string",
"default": "killbill"
}
},
"required": [
"host",
"name",
"user",
"password"
]
},
"networking": {
"description": "Networking-related configuration properties for Kaui on DC/OS.",
"type": "object",
"properties": {
"external_access": {
"type": "object",
"description": "Enable access from outside the cluster through Marathon-LB.",
"properties": {
"enable": {
"description": "Enable or disable creating a VIP for access through a public node running Marathon-LB.",
"type": "boolean",
"default": true
},
"external_access_port": {
"description": "Port number to be used for clear communication in the Marathon-LB load balancer",
"type": "number",
"default": 10080
},
"group": {
"description": "The HAProxy group to configure for integration with Marathon-lb.",
"type": "string",
"default": "internal"
},
"virtual-host": {
"description": "The virtual host address to configure for integration with Marathon-lb.",
"type": "string",
"default": "killbill.dcos"
}
}
}
}
}
},
"required": [
"service",
"database",
"networking"
]
}
59 changes: 59 additions & 0 deletions repo/packages/K/killbill/0/marathon.json.mustache
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
{
"id": "{{service.name}}",
"cpus": {{service.cpus}},
"mem": {{service.mem}},
"instances": 1,
"env": {
"KILLBILL_CONFIG_DAO_URL": "jdbc:mysql://{{database.host}}/{{database.name}}",
"KILLBILL_CONFIG_DAO_USER": "{{database.user}}",
"KILLBILL_CONFIG_DAO_PASSWORD": "{{database.password}}",
"KILLBILL_CONFIG_OSGI_DAO_URL": "jdbc:mysql://{{database.host}}/{{database.name}}",
"KILLBILL_CONFIG_OSGI_DAO_USER": "{{database.user}}",
"KILLBILL_CONFIG_OSGI_DAO_PASSWORD": "{{database.password}}"
},
"container": {
"type": "DOCKER",
"docker": {
"image": "{{resource.assets.container.docker.killbill}}",
"network": "BRIDGE",
"portMappings": [
{
"containerPort": 8080,
"hostPort": 0,
{{#networking.external_access.enable}}
"servicePort": {{networking.external_access.external_access_port}},
{{/networking.external_access.enable}}
"protocol": "tcp",
"name": "killbill",
"labels": {
"VIP_0": "/{{service.name}}:{{networking.port}}"
}
}
]
}
},
"healthChecks": [
{
"path": "/1.0/healthcheck",
"portIndex": 0,
"protocol": "HTTP",
"gracePeriodSeconds": 30,
"intervalSeconds": 60,
"timeoutSeconds": 20,
"maxConsecutiveFailures": 3
}
],
"labels": {
{{#networking.external_access.enable}}
"HAPROXY_GROUP":"{{networking.external_access.group}}",
"HAPROXY_0_VHOST":"{{networking.external_access.virtual-host}}",
{{/networking.external_access.enable}}
"DCOS_SERVICE_NAME" : "{{service.name}}",
"DCOS_SERVICE_PORT_INDEX" : "0",
"DCOS_SERVICE_SCHEME": "http"
},
"upgradeStrategy":{
"minimumHealthCapacity": 0,
"maximumOverCapacity": 0
}
}
19 changes: 19 additions & 0 deletions repo/packages/K/killbill/0/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"packagingVersion": "4.0",
"name": "killbill",
"version": "0.1.0",
"scm": "https://github.com/killbill/killbill-cloud.git",
"maintainer": "https://groups.google.com/forum/#!forum/killbilling-users",
"website": "https://killbill.io/",
"description": "Kill Bill is the open-source subscription billing and payments platform.",
"tags": ["subscription", "payment", "billing"],
"preInstallNotes": "Make sure MySQL has been installed and configured first.",
"postInstallNotes": "Kill Bill has been installed.",
"postUninstallNotes": "Kill Bill has been uninstalled.",
"licenses": [
{
"name": "Apache License Version 2.0",
"url": "https://www.apache.org/licenses/LICENSE-2.0"
}
]
}
Loading