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

Deploys radiator #11356

merged 18 commits into from Dec 22, 2015

Deploys radiator #11356

merged 18 commits into from Dec 22, 2015


Copy link

OliverJAsh commented Dec 11, 2015

This adds a radiator to admin (at /deploys-radiator) that shows the status of CODE and PROD, and the Git commit difference between them.

  • The radiator will group deploys by status and build number. If all the deploys have the same status and build number, we can collapse them into a single box.
  • At the top we display the difference between CODE and PROD as a list of Git commits (Oldest PROD build...Latest CODE build).
  • The radiator updates every 10 seconds.

It's written in TypeScript (❤️ ❤️ ❤️ ) and uses jspm for module loading and compilation.




Here are some examples of what the radiator will look like in various situations.

All OK




Deploying, half complete


Deploying with queue


Failed deploy


To do

Copy link

johnduffell commented Dec 14, 2015

fantastic improvement, however I don't know if adding typescript is likely to be problematical (build changes or just maintenance wise) so you might want to run that by other people too
other than that it's a great idea 👍

Copy link
Contributor Author

OliverJAsh commented Dec 14, 2015


I agree that is a concern. This radiator is entirely isolated from our other JavaScript in admin so I'm not too worried. I think new projects like this provide a good opportunity to experiment with new technologies, which is what I did here. At first I was going to keep it outside of frontend, but I don't think people will use it if it doesn't live here. Also, if we can make the radiator more fancy technology-wise, people might be more inclined to show it some love.

Personally, I hope I never have to use a dynamic language again. TypeScript ❤️

@OliverJAsh OliverJAsh force-pushed the oja-deploys-radiator branch from f150ad8 to 8045bb7 Dec 21, 2015
@OliverJAsh OliverJAsh force-pushed the oja-deploys-radiator branch from 8045bb7 to f824043 Dec 22, 2015
@@ -169,6 +169,10 @@ class GuardianConfiguration(val application: String, val webappConfDirectory: St
lazy val token = configuration.getStringProperty("github.token")

object teamcity {
lazy val host = configuration.getMandatoryStringProperty("")

This comment has been minimized.

Copy link

OliverJAsh Dec 22, 2015

Author Contributor

Is mandatory OK? I will make sure we provision beforehand.

This comment has been minimized.

Copy link

rich-nguyen Dec 22, 2015



OliverJAsh added 2 commits Dec 22, 2015
static gets deployed early.
Copy link

rich-nguyen commented Dec 22, 2015

Yes, agree with some of @johnduffell 's concerns regarding the proliferation of technologies that we use to do similar things, especially client-side. Some kind of remove-something/add-something quota would help. I do think Typescript is a candidate for improving our codebase, and unless we make progress with the tough problems (how we replace fundamental parts of client-side tech pipeline), a lot of changes we make could be construed as 'contributing to tech-debt'. Something to talk about in engineering meeting (which we need to bring back).

That aside, I like the new dash, though it's a shame the *.d.ts files need to be checked-in, is there a way to avoid this? 👍

OliverJAsh added 3 commits Dec 22, 2015
@OliverJAsh OliverJAsh merged commit f1736f4 into master Dec 22, 2015
@OliverJAsh OliverJAsh deleted the oja-deploys-radiator branch Dec 22, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants
You can’t perform that action at this time.