Cerberus Update: Front-end Tour
Posted in Articles on May 29th, 2011 by PyrokaI’ve been busily working on Cerberus this week, mainly working on the website that acts as the front-end to the system. The entire front-end uses files rather than a database to store the data, I was considering using a database, MySQL or similar, but I really like the idea of the entire build system existing under a single folder, so it’s simple to backup and move around.
This is the main screen for the Cerberus front-end, it contains a list of all the repositories that Cerberus knows about, each repository also list its’ URL, and if it has been built, a summary of the report from the most recent build (clicking on the summary will take you to the full build). Also there is buttons to build each repository, which are now blue (previously they were green) due t the need to add an ‘Add Repository’ button below the list that should be green.
This screen shows the detail of a single report, with error and warning logs for each operating system, and also shows the amount of time it took to compile for that platform.
Here is the list of reports for all the repositories, the reports are listed in time/date order, with the most recent at the top. Each of the reports also shows it’s summary, which is the total number of errors and warnings that occurred during that build.
This screen shows the status of all the build slaves, most prominent is the operating system that the slave is running on, it also shows the IP and port they are listening on. (I was hoping to show more than one build slave active, however for some reason when I came to take the screenshots this morning both the build slaves were managing to be reporting themselves bound to the same port, which caused only one build slave to show up on this screen).
Not so much left to do with the front-end now, need to add the ability to add/remove repositories, and then finally hook up the build button and then it’s back into the internals to make the build process as solid as possible and report errors in a meaningful way. It’s still a fun project to work on and I’m looking forward to having it working hopefully sometime soon.





