Global `circle.yml` settings/Don't build if `circle.yml` doesn't exist [Project Settings]


#1

Let’s say we’re only trying to work/considering Circle and have a lot of branches like v1.1.1 in our repo where we don’t want new builds/PR statuses.

Currently there is no way to disable builds for these branches, except of placing circle.yml file in all existing branches (not an option at all).

Solution #1 (easy)

Option in Web UI to disable the builds if circle.yml doesn’t exist.

There is exactly the same option in Travis and it’s useful.

Solution #2 (robust)

Ability to specify in Project Settings entire circle.yml contents (just copy-paste), which will be used by defaul for entire project.

  • If there is no circle.yml - default file from Settings will be used
  • If branch has circle.yml - use that file

Exactly the same approach follows ScrutinizerCI


Trigger build for branch only if .circleci/config.yml exists
#2

Solution #2 brings good flexibility and most likely will solve other user requests.

For example if I enable Chat Notifications in Project Settings there is no way to disable notifications for branches I don’t need, - only placing circle.yml file just everywhere, in all branches.
Another burden will be synchronizing circle.yml between all branches.

Global circle.yml brings more options to control this.


#3

Thank you very much for your suggestion—we’ll see what we can do about this.


#4

This seems absolutely vital. It’s the first thing I turn on in Travis CI. Without this feature, Circle CI isn’t compatible with tools like git-annex, which creates branches to store information. I don’t want any of these branches to show up in Continuous Integration, nor do I have control over them to add a circle.yml to have them ignored! There must be global options for ignoring branches.


#5

This would be incredibly useful. I don’t have a circle.yml on my gh-pages branch - I want to avoid building a branch at all if there is no circle.yml.


#6