app/config/rules_changed.json
{
"applications": {
"name": [
{
"command": "sync",
"foreign": "servers",
"field": {
"query": "applications.$.name",
"replace": "name"
},
"filter": "applications._id"
},
{
"command": "sync",
"foreign": "applications",
"field": {
"query": "deps.$.name",
"replace": "name"
},
"filter": "deps._id"
},
{
"command": "sync",
"foreign": "systems",
"field": {
"query": "entry.$.name",
"replace": "name"
},
"filter": "entry._id"
}
],
"family": [
{
"command": "sync",
"foreign": "servers",
"field": {
"query": "applications.$.family",
"replace": "family"
},
"filter": "applications._id"
},
{
"command": "sync",
"foreign": "applications",
"field": {
"query": "deps.$.family",
"replace": "family"
},
"filter": "deps._id"
},
{
"command": "sync",
"foreign": "systems",
"field": {
"query": "entry.$.family",
"replace": "family"
},
"filter": "entry._id"
}
]
},
"system": {
"name": [
{
"command": "sync",
"foreign": "applications",
"field": {
"query": "system.$.name",
"replace": "name"
},
"filter": "system._id"
}
]
},
"clients": {
"name": [
{
"command": "sync",
"foreign": "systems",
"field": {
"query": "clients.$.name",
"replace": "name"
},
"filter": "clients._id"
}
]
},
"datacenters": {
"name": [
{
"command": "sync",
"foreign": [
"servers",
"applications",
"volumes",
"networks",
"images",
"flavors",
"snapshots"
],
"field": {
"query": "datacenters.name",
"replace": "name"
},
"filter": "datacenters._id"
},
{
"command": "sync",
"foreign": "connections",
"field": {
"query": "dc",
"replace": "name"
},
"filter": "dc_id"
}
]
},
"teams": {
"name": [
{
"command": "sync",
"foreign": [
"applications",
"clients",
"datacenters",
"events",
"flavors",
"graphs",
"images",
"networks",
"projects",
"reports",
"schedulers",
"servers",
"snapshots",
"systems",
"volumes"
],
"field": {
"query": "roles.$.name",
"replace": "name"
},
"filter": "roles._id"
},
{
"command": "sync",
"foreign": "connections",
"field": {
"query": "owner_user.name",
"replace": "name"
},
"filter": "owner_user._id"
}
]
},
"users": {
"email": [
{
"command": "sync",
"foreign": [
"applications",
"clients",
"datacenters",
"events",
"flavors",
"graphs",
"images",
"networks",
"projects",
"reports",
"schedulers",
"servers"
],
"field": {
"query": "roles.$.email",
"replace": "email"
},
"filter": "roles._id"
},
{
"command": "sync",
"foreign": "teams",
"field": {
"query": "members.$.email",
"replace": "email"
},
"filter": "members._id"
},
{
"command": "sync",
"foreign": "connections",
"field": {
"query": "owner_user.email",
"replace": "email"
},
"filter": "owner_user._id"
}
],
"name": [
{
"command": "sync",
"foreign": "teams",
"field": {
"query": "members.$.name",
"replace": "name"
},
"filter": "members._id"
}
]
}
}