-
Notifications
You must be signed in to change notification settings - Fork 2
REST Front End Control
Stashed supports RESTful control of the compiler front-ends. This is useful for using tools like CURL with build scripts to query versions of installed tools, selectively activating or deactivating specific compiler host/target combinations or completely activating or disabling all Stashed front ends.
The API endpoint to access query and control for front ends is located at
/api/frontends
.
Front ends are keyed by a path. For example, Microsoft Visual Studio 2015 tools are listed as:
/msvs/v2015/amd64_x86 /msvs/v2015/amd64 /msvs/v2015/default /msvs/v2015/x86_amd64
No configuration data is required, so only GET
, PUT
and DELETE
operations apply.
shell curl -s -X <operation> -k <url>
All operations will return a json formatted object representing the front ends affected.
curl -s -X GET http://127.0.0.1:39081/api/frontends
returns:
{
"name": "All",
"status": "Enabled",
"children": {
"msvs": {
"name": "Microsoft Visual Studio",
"status": "Enabled",
"children": {
"v2012": {
"name": "Microsoft Visual Studio 2012",
"children": {
"amd64": {
"name": "amd64",
"installLocation": "c:\\program files (x86)\\microsoft visual studio 11.0"
},
"amd64_x86": {
"name": "amd64_x86",
"installLocation": "c:\\program files (x86)\\microsoft visual studio 11.0"
},
"default": {
"name": "default",
"installLocation": "c:\\program files (x86)\\microsoft visual studio 11.0"
},
"x86_amd64": {
"name": "x86_amd64",
"installLocation": "c:\\program files (x86)\\microsoft visual studio 11.0"
}
}
},
"v2013": {
"name": "Microsoft Visual Studio 2013",
"children": {
"amd64": { "name": "amd64" },
"amd64_x86": { "name": "amd64_x86" },
"default": { "name": "default" },
"x86_amd64": { "name": "x86_amd64" }
}
},
"v2015": {
"name": "Microsoft Visual Studio 2015",
"status": "Enabled",
"children": {
"amd64": {
"name": "amd64",
"status": "Enabled",
"installLocation": "d:\\program files (x86)\\microsoft visual studio 14.0"
},
"amd64_x86": {
"name": "amd64_x86",
"status": "Enabled",
"installLocation": "d:\\program files (x86)\\microsoft visual studio 14.0"
},
"default": {
"name": "default",
"status": "Enabled",
"installLocation": "d:\\program files (x86)\\microsoft visual studio 14.0"
},
"x86_amd64": {
"name": "x86_amd64",
"status": "Enabled",
"installLocation": "d:\\program files (x86)\\microsoft visual studio 14.0"
}
}
},
"v2017": {
"name": "Microsoft Visual Studio 2017",
"status": "Enabled",
"children": {
"5b7dcade": {
"name": "Visual Studio Community 2017",
"status": "Enabled",
"children": {
"14.14.26428": {
"name": "14.14.26428",
"status": "Enabled",
"children": {
"x64_x64": {
"name": "x64_x64",
"status": "Enabled",
"installLocation": "c:\\program files (x86)\\microsoft visual studio\\2017\\community\\VC\\Tools\\MSVC\\14.14.26428"
},
"x64_x86": {
"name": "x64_x86",
"status": "Enabled",
"installLocation": "c:\\program files (x86)\\microsoft visual studio\\2017\\community\\VC\\Tools\\MSVC\\14.14.26428"
},
"x86_x64": {
"name": "x86_x64",
"status": "Enabled",
"installLocation": "c:\\program files (x86)\\microsoft visual studio\\2017\\community\\VC\\Tools\\MSVC\\14.14.26428"
},
"x86_x86": {
"name": "x86_x86",
"status": "Enabled",
"installLocation": "c:\\program files (x86)\\microsoft visual studio\\2017\\community\\VC\\Tools\\MSVC\\14.14.26428"
}
}
}
}
}
}
}
}
}
}
}
curl -s -X GET -k http://localhost:39081/api/frontends/msvs/v2015/amd64
{"name":"amd64","status":"Enabled","installLocation":"d:\\program files (x86)\\microsoft visual studio 14.0"}
curl -s -X DELETE -k http://localhost:39081/api/frontends
curl -s -X PUT -k http://localhost:39081/api/frontends
curl -s -X DELETE -k http://localhost:39081/api/frontends/msvs/v2015/amd64
curl -s -X PUT -k http://localhost:39081/api/frontends/msvs/v2015/amd64
© 2017 Playscale Pte. Ltd.