Shippable / support

Shippable SaaS customers can report issues and feature requests in this repository
100 stars 28 forks source link

Push to quay.io with all branches, tests only on master. #2501

Closed rhherrera closed 8 years ago

rhherrera commented 8 years ago

Hi, sorry if this is repeated on other thread but I couldn't find it. This is the situation, I actually use shippable with 5 CI build container, 4 containers that run unit tests of different apps and one container that run e2e. Also I push my images to quay.io (actually I'm doing this with strider) I want to stop using strider and start do it with shippable also but here is the deal. On my shippable.yml I have : ''' branches: only:

because I just want to run all tests on master or PR to master (because they take a lot of time). But for each git push no matter which branch or if there is or not a PR to master I want to build my containers and push them to quay.io, because I pull them on other servers to test stuffs even if they are not merged to master and ready. Is this possible? Shippable use docker cache? Because if not will take a lot to build/push the containers.

I will thanks any help.

manishas commented 8 years ago

@rhherrera your scenario is possible with Shippable.

You can use the $BRANCH environment variable and run your test command only if it is set to master. For example-

build:
  ci:
    - if [ "$BRANCH" == "master" ]; then ./runTests.sh; fi

Docker cache will be used if the same machine is used for your builds. This happens in one of 2 ways:

Let me know if you need more details or clarifications.