build CI BUGFIX move jobs' lifecycle from stages to jobs
diff --git a/.travis.yml b/.travis.yml
index 6684f71..910dae1 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -11,36 +11,9 @@
 stages:
   - name: Test
     if: type != cron
-    before_install:
-      - wget https://cmocka.org/files/1.1/cmocka-1.1.2.tar.xz
-      - tar -xf cmocka-1.1.2.tar.xz
-      - cd cmocka-1.1.2; mkdir build; cd build
-      - cmake .. && make -j2 && sudo make install
-      - cd ../..
-      - if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew update; fi
-      - if [ "$TRAVIS_OS_NAME" = "linux" ]; then sudo apt-get update -qq; sudo apt-get install -y valgrind; fi
-      - if [ "$TRAVIS_OS_NAME" = "linux" -a "$CC" = "gcc" ]; then pip install --user codecov; export CFLAGS="-coverage"; fi
-    script:
-      - mkdir build && cd build
-      - if [ "$TRAVIS_OS_NAME" = "osx" ]; then cmake -DENABLE_VALGRIND_TESTS=OFF ..; fi
-      - if [ "$TRAVIS_OS_NAME" = "linux" ]; then cmake ..; fi
-      - make -j2 && ctest --output-on-failure
-      - cd -
-    after_success:
-      - if [ "$TRAVIS_OS_NAME" = "linux" -a "$CC" = "gcc" ]; then codecov; fi
   - name: Coverity
     if: type = cron
-    env:
-      # The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
-      #   via the "travis encrypt" command using the project repo's public key
-      - secure: "jkN1i+W2V5/ULAmpqEOyl6J6hsa9rS8JcBKsjB/Md6sJJprWKepUfQ0UdhrjBYbFJbo1mnjL0sHboTrowBXH59IQquPtw64oF9HzyMcmwr+Dm93hhm/vaI06oXwkxmnQxC0OW7Cttrmo+858lsegZYxrh2p4tgEd6WOtDpJIaQ4="
-    before_install:
-      - echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca-certificates.crt
-      - sudo apt-get update -qq
-    script:
-      # do nothing, everything here is done in coverity addon
-      - true
-
+    
 jobs:
   include:
     - stage: Coverity
@@ -57,6 +30,16 @@
       branches:
         only:
           - libyang2
+      env:
+        # The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
+        #   via the "travis encrypt" command using the project repo's public key
+        - secure: "jkN1i+W2V5/ULAmpqEOyl6J6hsa9rS8JcBKsjB/Md6sJJprWKepUfQ0UdhrjBYbFJbo1mnjL0sHboTrowBXH59IQquPtw64oF9HzyMcmwr+Dm93hhm/vaI06oXwkxmnQxC0OW7Cttrmo+858lsegZYxrh2p4tgEd6WOtDpJIaQ4="
+      before_install:
+        - echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca-certificates.crt
+        - sudo apt-get update -qq
+      script:
+        # do nothing, everything here is done in coverity addon
+        - true
     - stage: Test
       name: Linux with CLang
       os: linux
@@ -64,6 +47,13 @@
       branches:
         only:
           - libyang2
+      before_install:
+        - wget https://cmocka.org/files/1.1/cmocka-1.1.2.tar.xz
+        - tar -xf cmocka-1.1.2.tar.xz
+        - cd cmocka-1.1.2; mkdir build; cd build; cmake .. && make -j2 && sudo make install; cd ../..
+        - sudo apt-get update -qq; sudo apt-get install -y valgrind
+      script:
+        - mkdir build && cd build; cmake .. && make -j2 && ctest --output-on-failure; cd -
     - stage: Test
       name: Linux with GCC
       os: linux
@@ -71,6 +61,16 @@
       branches:
         only:
           - libyang2
+      before_install:
+        - wget https://cmocka.org/files/1.1/cmocka-1.1.2.tar.xz
+        - tar -xf cmocka-1.1.2.tar.xz
+        - cd cmocka-1.1.2; mkdir build; cd build; cmake .. && make -j2 && sudo make install; cd ../..
+        - sudo apt-get update -qq; sudo apt-get install -y valgrind
+        - pip install --user codecov; export CFLAGS="-coverage"
+      script:
+        - mkdir build && cd build; cmake .. && make -j2 && ctest --output-on-failure; cd -
+      after_success:
+        - codecov
     - stage: Test
       name: OS X with GCC
       os: osx
@@ -80,3 +80,10 @@
       branches:
         only:
           - libyang2
+      before_install:
+        - wget https://cmocka.org/files/1.1/cmocka-1.1.2.tar.xz
+        - tar -xf cmocka-1.1.2.tar.xz
+        - cd cmocka-1.1.2; mkdir build; cd build; cmake .. && make -j2 && sudo make install; cd ../..
+        - brew update
+      script:
+        - mkdir build && cd build; cmake -DENABLE_VALGRIND_TESTS=OFF .. && make -j2 && ctest --output-on-failure; cd -