Partage
  • Partager sur Facebook
  • Partager sur Twitter

[GitLab CI] 2 pipeline pour 1 commit

    20 novembre 2019 à 14:05:48

    Bonjour,

    J'utilise gitlab.com depuis quelques temps pour mon projet avec son intégration continue. Cependant, je n'arrive pas a configurer correctement ce dernier (fichier .gitlab-ci.yml). Mon problème est que lorsque je push un (des) commit(s) avec un (des) tags, j'ai un pipeline sur la branche et un pipeline sur le tag.

    Or, je voudrai que le pipeline sur la branche ne s'exécute uniquement si le commit ne possède pas de tag, pour éviter d'exécuter deux fois les mêmes choses.

    Voici ma configuration de gitlab ci (.gitlab-ci.yml):

    ---
    stages:
    - lint
    - test
    - build
    - screenshots
    - deploy
    - after_all
    before_script:
    - gem install bundler -n /usr/local/bin
    - bundle update --all
    swiftlint:
      stage: lint
      script:
      - bundle exec fastlane swift_lint
      tags:
      - ios
      - xcode
      except:
      - "/^v\\d+\\.\\d+\\.\\d+$/"
    build:
      stage: build
      script:
      - bundle exec fastlane build
      only:
      - "/^v\\d+\\.\\d+\\.\\d+$/"
      tags:
      - ios
      - xcode
      artifacts:
        paths:
        - fastlane/build/
        when: always
    deploy_alpha:
      stage: deploy
      script:
      - bundle exec fastlane deploy_alpha
      only:
      - "/^v\\d+\\.\\d+\\.\\d+-alpha\\.\\d+$/"
      tags:
      - ios
      - xcode
    deploy_beta:
      stage: deploy
      script:
      - bundle exec fastlane deploy_beta
      only:
      - "/^v\\d+\\.\\d+\\.\\d+-beta\\.\\d+$/"
      tags:
      - ios
      - xcode
    screenshots:
      stage: screenshots
      script:
      - bundle exec fastlane screenshots
      only:
      - "/^v\\d+\\.\\d+\\.\\d+$/"
      tags:
      - ios
      - xcode
      artifacts:
        paths:
        - fastlane/screenshots/
    deploy_release:
      stage: deploy
      script:
      - bundle exec fastlane deploy_release
      dependencies:
      - build
      - screenshots
      only:
      - "/^v\\d+\\.\\d+\\.\\d+$/"
      tags:
      - ios
      - xcode
      artifacts:
        paths:
        - "*.ipa"
        - "*.dSYM.zip"
        - fastlane/screenshots/

    Comment puis-je faire pour exécuter le pipeline sur la branche uniquement s'il n'y a pas de tag rattaché au commit ?

    • Partager sur Facebook
    • Partager sur Twitter
      21 novembre 2019 à 17:27:35

      Bonjour,

      Mauvais forum

      Le sujet est déplacé de la section Choix du matériel & configuration vers la section Discussions développement

      • Partager sur Facebook
      • Partager sur Twitter
      Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL

      [GitLab CI] 2 pipeline pour 1 commit

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown