Continuously deploying

(Sam Saffron) #1

I just flicked the switch that continuously deploys meta every time we have a successful build (which triggers a merge of tests-passed branch)

There are quite a few reasons for this.

  1. Our default docker templates now target the “tests-passed” branch, I want meta to be a place where people can go to always confidently see what it looks like.

  2. This keeps us honest as developers, in the past I blogged about the importance of smoke tests, if for any reason we break master we now have a very clear public warning sign. We will stop everything and fix master and ensure an automated test will stop incidents like this in future.

  3. I really want meta to go through every release of Discourse, that ensures we don’t have boobytrap migrations and other weird upgrade conditions that are untested.

I really like doing this and think it will lead to a more stable master branch in the long term.

This new system is in effect now

Release schedule post version 1.0
(Tuan Anh Tran) #2

This is great. People can always see what latest master is like, plus this could be big test flight for master with thousand of testers

(Erlend Sogge Heggen) #3

So nice! I guess the same will go for You could even go as far as having Try on an alternative set-up (like a Digital Ocean droplet) to get an extra check in there.

(Sam Saffron) #4

We don’t live on try, but maybe, lets see how we go with meta for a few weeks.

(Moshe Katz) #5

Personally, I would argue against having Try doing the same CI, for two reasons:

  1. All of us who use meta should know that stuff could be broken (at least in theory). That is not the case for the curious visitor, who might end up coming to Try, finding something that just broke, and dismissing Discourse as “that thing I tried that didn’t work”. Keeping the site at a specific version means that bugs are more likely to be known and documented.
  2. If something manages to slip through that breaks the site really badly, it would be better to have only one site go down than to have both of them go down. Again, like the first point, this comes back to public appearances.

In truth, whether to switch Try to CI really just depends on how stable you are willing to gamble that it will be.

(Jeff Atwood) #6

I agree with this, I say try should be at official version releases only. It is fine for meta to be on latest though, IMHO, since we monitor meta extensively.

Continuously deploying
(Erlend Sogge Heggen) #7

Yeah I agree. Actually that’s what I was trying to get at, hence the DO hosting as a failsafe.