Skip to content

Instantly share code, notes, and snippets.

@flynnduism
Last active August 29, 2015 14:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save flynnduism/75e31292881af29075d8 to your computer and use it in GitHub Desktop.
Save flynnduism/75e31292881af29075d8 to your computer and use it in GitHub Desktop.
Multi App Instructions
{
"id": "two-app-fo-life",
"name": "TWO APPS FO LIFE",
"information": "When one is just not enough!",
"tags": ["aws"],
"configuration": {
"accounts": [
{}
],
"providers": [
{
"$requires": [
"accounts$"
]
}
],
"environments": [
{
"$requires": [
"accounts$"
]
}
],
"applications": [
{
"$requires": [
"accounts$"
]
},
{
"name": "totallyunique",
"$id": "app2",
"$requires": [
"accounts$"
]
}
],
"clusters": [
{
"name": "application",
"$id": "application",
"$requires": [
"environments$",
"providers$"
]
},
{
"name": "application2",
"$id": "application2",
"$requires": [
"environments$",
"providers$"
]
},
{
"name": "processes",
"$id": "processes",
"$requires": [
"environments$",
"providers$"
]
},
{
"name": "database",
"$id": "database",
"$requires": [
"environments$",
"providers$"
]
},
{
"name": "load-balancer",
"$id": "load-balancer",
"$requires": [
"environments$",
"providers$"
]
}
],
"clusterComponents": [
{
"component": "cluster_cookbooks",
"configuration": {
"facets": [
{
"type": "web_server",
"ephemeral_volume": false
}
]
},
"$id": "web_server",
"$requires": [
"clusters$application",
null
]
},
{
"component": "default_deployer",
"$id": "deployer",
"$requires": [
"clusters$application",
"applications$",
"clusterComponents$web_server"
]
},
{
"component": "cluster_cookbooks",
"configuration": {
"facets": [
{
"type": "web_server",
"ephemeral_volume": false
}
]
},
"$id": "web_server2",
"$requires": [
"clusters$application2",
null
]
},
{
"component": "default_deployer",
"$id": "deployer2",
"$requires": [
"clusters$application2",
"applications$app2",
"clusterComponents$web_server2"
]
},
{
"component": "cluster_cookbooks",
"configuration": {
"facets": [
{
"type": "web_server",
"ephemeral_volume": false
}
]
},
"$id": "processes_web_server",
"$requires": [
"clusters$processes",
null
]
},
{
"component": "default_deployer",
"$id": "processes_deployer",
"$requires": [
"clusters$processes",
"applications$",
"clusterComponents$processes_web_server"
]
},
{
"component": "cluster_cookbooks",
"configuration": {
"facets": [
{
"type": "mysql",
"ephemeral_volume": false
}
]
},
"$id": "database",
"$requires": [
"clusters$database",
null
]
},
{
"component": "cluster_cookbooks",
"configuration": {
"facets": [
{
"type": "haproxy"
}
]
},
"$id": "haproxy",
"$requires": [
"clusters$load-balancer",
null
]
}
],
"slots": [
{
"quantity": 1,
"flavor": "medium_cpu_64",
"$requires": [
"clusters$application",
"clusterComponents$web_server",
"clusterComponents$deployer"
]
},
{
"quantity": 1,
"flavor": "medium_cpu_64",
"$requires": [
"clusters$application2",
"clusterComponents$web_server2",
"clusterComponents$deployer2"
]
},
{
"quantity": 1,
"flavor": "medium_cpu_64",
"$requires": [
"clusters$processes",
"clusterComponents$processes_web_server",
"clusterComponents$processes_deployer"
]
},
{
"quantity": 1,
"flavor": "medium_cpu_64",
"$requires": [
"clusters$database",
"clusterComponents$database"
]
},
{
"quantity": 1,
"flavor": "medium_cpu_64",
"$requires": [
"clusters$load-balancer",
"clusterComponents$haproxy"
]
}
],
"connectors": [
{
"configuration": {
"facet": "mysql"
},
"$requires": [
"clusterComponents$database",
"clusterComponents$deployer2"
]
},
{
"configuration": {
"facet": "mysql"
},
"$requires": [
"clusterComponents$database",
"clusterComponents$deployer"
]
},
{
"configuration": {
"facet": "mysql"
},
"$requires": [
"clusterComponents$database",
"clusterComponents$processes_deployer"
]
},
{
"configuration": {
"facet": "haproxy"
},
"$requires": [
"clusterComponents$haproxy",
"clusterComponents$web_server"
]
},
{
"$requires": [
"clusterComponents$deployer2",
"clusterComponents$web_server2"
]
},
{
"$requires": [
"clusterComponents$deployer",
"clusterComponents$web_server"
]
},
{
"$requires": [
"clusterComponents$processes_deployer",
"clusterComponents$processes_web_server"
]
}
]
}
}
name: entity.data.name || newEnvironment.applicationName,

How to add a blueprint hack into the UI for 'faking' multi apps:

###1. Create a new blueprint file:

blueprints/aws-two-app-fo-life.json with the code shown above.

--

###2. Add a hack into the Clusters controller:

src/app/clusters/controller.js

Change line 103 in that file to the snipper shown above.

@stephaniefrancis
Copy link

And that's the blueprints folder in the root, not in client > src > app

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment