Skip builds based on list of files modified

From @jayvdb on Tue Jul 19 2016 03:53:47 GMT-0400 (EDT)

It would be very helpful to be able to skip builds when the modified files all match defined path/glob/etc.

This would especially help open source projects that are limited to 200 builds. That sounds like a lot, but it can quickly be used up if someone is doing lots of small commits, and completely useless if those commits are documentation (.md) only (the Github web UI edit functionality is … too easy …).

Identifying the files modified requires a clone of the repository to inspect the commit contents. While this is still ‘work’ being done by bitrise, it less work than starting the container and running arbitrary commands in that container. It can be optimised by caching the clone between builds, with an early expiration as commits that are further apart are more likely to needing a build.


Copied from original issue: https://github.com/bitrise-io/bitrise.io/issues/48

From @viktorbenei on Tue Jul 19 2016 04:30:43 GMT-0400 (EDT)

Thanks for the feature request, don’t forget to vote on it here on GitHub! :wink:

Another common use case is when one repo contains code for both Android and iOS. We were doing this with BuddyBuild and it was convenient for shared resources and better communication between everyone involved. (I.e. GitHub issues could all be in one place, for example).

Is there are a way to simulate this in the meantime? E.g. can I configure a script to do it manually? Or maybe it’s possible to write a step to do it?

E.g. is there some sort of “poor man’s skip this build” possible using git diff --name-status master..branchName or similar (ref https://stackoverflow.com/a/822859)

FYI, I was confused by your wording “vote on it here on GitHub”. When I went to GitHub to vote, it referred back to here. After coming back to this today, I finally noticed the “Vote” button at the top left. I’m guessing that’s what you meant…

Yes, this thread was moved from GitHub (we had feature requests there in the past):

Sorry for the confusion.

Yes, but depends on exactly what & how you want things.

  • You can register the same repo two times, once as iOS and once as Android.
  • You can have a single workflow building both iOS & Android
  • You can write a script which does a git diff or similar and skip steps based on that using run_if

Closing this #feature-request as it seems to be a duplicate of First class mono repo support or at least that one should cover this use case too.

@eggheadgames you can find more details in that thread with some example scripts too First class mono repo support

This topic was automatically closed after 14 days. New replies are no longer allowed.