HTTP API
March 9, 2020 ยท View on GitHub
Primarily for development.
GET /build
Returns the list of available drivers
repository=folder_name(optional) if you wish to specify a third party repositorycompiled=true(optional) if you only want the list of compiled drivers
["drivers/place/spec_helper.cr", "..."]
GET /build/repositories
Returns the list of 3rd party repositories
["private_drivers", "..."]
GET /build/repository_commits
Returns the list of available commits at the repository level
repository=folder_name(optional) if you wish to specify a third party repositorycount=50(optional) if you want more or less commits
{
"commit": "01519d6",
"date": "2019-06-02T23:59:22+10:00",
"author": "Stephen von Takach",
"subject": "implement websocket spec runner"
}
GET /build/{{escaped driver path}}
Returns the list of compiled versions of the specified file are available
["private_drivers_cr_01519d6", "..."]
GET /build/{{escaped driver path}}/commits
Returns the list of available commits for the current driver
repository=folder_name(optional) if you wish to specify a third party repositorycount=50(optional) if you want more or less commits
{
"commit": "01519d6",
"date": "2019-06-02T23:59:22+10:00",
"author": "Stephen von Takach",
"subject": "implement websocket spec runner"
}
POST /build
compiles a driver
driver=drivers/path.cr(required) the path to the drivercommit=01519d6(optional) defaults to head
DELETE /build/{{escaped driver path}}
deletes compiled versions of a driver
repository=folder_name(optional) if you wish to specify a third party repositorycommit=01519d6(optional) deletes all versions of a driver if not specified
GET /test
Lists the available specs
["drivers/place/spec_helper_spec.cr", "..."]
GET /test/{{escaped spec path}}/commits
Returns the list of available commits for the specified spec
repository=folder_name(optional) if you wish to specify a third party repositorycount=50(optional) if you want more or less commits
{
"commit": "01519d6",
"date": "2019-06-02T23:59:22+10:00",
"author": "Stephen von Takach",
"subject": "implement websocket spec runner"
}
POST /test
Compiles and runs a spec and returns the output
repository=folder_name(optional) if you wish to specify a third party repositorydriver=drivers/path/to/file.cr(required) the driver you want to testspec=drivers/path/to/file_spec.cr(required) the spec you want to run on the drivercommit=01519d6(optional) the commit you would like the driver to be running atspec_commit=01519d6(optional) the commit you would like the spec to be running atforce=true(optional) forces a re-compilation of the driver and specdebug=true(optional) compiles the files with debugging symbols
Launching spec runner
Launching driver: /Users/steve/Documents/projects/placeos/drivers/bin/drivers/drivers_place_private_helper_cr_4f6e0cd
... starting driver IO services
... starting module
... waiting for module
... module connected
... enabling debug output
... starting spec
... spec complete
... terminating driver gracefully
Driver terminated with: 0
Finished in 15.65 milliseconds
0 examples, 0 failures, 0 errors, 0 pending
spec runner exited with 0
WebSocket /test/run_spec
Same requirements as POST /test above however it streams the response