Interrupted builds make it difficult to deploy to production

https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/23464/diffs introduced a new feature under the ci_support_interruptible_pipelines feature flag. The problem is that for an active repository, the constant canceling of pipelines makes it difficult for any pipeline to succeed (e.g. master in https://gitlab.com/gitlab-com/www-gitlab-com/pipelines).

I'm not sure the best way to resolve this. Ideas:

  1. Don't cancel if the branch is the default branch
  2. Allow at least one other pipeline to be running at all times

/cc: @ayufan, @ctabin