Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TeamCity service only supports individual build configs, not projects. #72

Open
lochsh opened this issue Sep 22, 2017 · 1 comment
Open

Comments

@lochsh
Copy link

lochsh commented Sep 22, 2017

On TeamCity, build configurations can be organised into projects. We can get information about the project, including it's status (e.g. SUCCESS or FAILURE) using this API call:

https:/teamcity-server/app/rest/projects/ProjectID

The project status is SUCCESS if all of the build configurations in the project are passing.

For large projects, it can be quite limiting to have node-build-monitor only support individual build configs. For us, there is only so much space on our CI status board (displayed on a wall-mounted TV in the office), and not enough space to show every single build configuration. Being able to show the status of a project would be very helpful for this reason.

I'm not sure the best way to achieve this. Perhaps we can try sending a request for a build config, and if it fails, try sending a request for a project with the same ID. Or, the config.json file could change so that each configuration has a boolean flag for whether it is a project.

The response from querying a project rather than an individual build config will have some different fields, so this would also need to be taken into account.

@marcells
Copy link
Owner

You can write a custom theme for the build monitor. Could this help you for the space problem?

If it doesn't help, then I would recommend to create another service (e.g. TeamCityProjectsOverview.js), which lists the whole project status instead of build status. Mixing it with the current service makes it too complicate, cause that are different use cases.

Can all properties (id, project, definition, number, isRunning, startedAt, finishedAt, requestedFor, statusText, status, reason, hasErrors, hasWarnings, url), which are needed by the frontend be filled with senseful values?

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

No branches or pull requests

2 participants