2 votes

Aucune version de Cypress n'est installée dans Ci (TravisCI et CircleCI)

J'obtiens cette erreur dans CI lors de la mise à jour vers Cypress 3.0 qui dit que Cypress n'est pas installé, mais j'exécute le programme npm install avant mon cypress run commandement. L'erreur :

No version of Cypress is installed in: 

/home/ubuntu/.cache/Cypress/3.0.1/Cypress

Please reinstall Cypress by running: cypress install
----------

Pourquoi Cypress ne trouve-t-il pas l'exécutable Cypress ?

Voici mon circle.yml :

build:
    <<: *defaults
    steps:
      - checkout
      - restore_cache:
          keys:
            - v1-npm-deps
      - run: npm install
      - save_cache:
          key: v1-npm-deps-{{ checksum "package.json" }}
          paths:
            - node_modules
            - ~/.cache
            - ~/.npm
      - run: npm test
      - run: npm run build
      - persist_to_workspace:
          root: /tmp/workspace
          paths:
            - .circleci/deploy.sh
            - .circleci/e2e-test.sh
            - package.json
            - cypress.json
            - node_modules/
            - build/*
            - cypress/*

0voto

bkucera Points 3105

Il s'agit d'un petit problème de mise en cache node_modules - le script post-installation qui installe le binaire Cypress ne sera pas exécuté puisque node_modules/cypress existent.

Pour y remédier, vous pouvez vider le cache de la construction de l'IC et tout devrait être résolu. C'est pourquoi je recommande d'utiliser npm ci puisque node_modules sera effacé à chaque fois que la commande est exécutée

En outre : - dans Circle CI 2.0, la mise en cache fonctionne différemment que dans Circle CI 2.0. 1.0 ou TravisCI car le cache est immuable . Vous ne pouvez que créer un autre cache, jamais en détruire ou en réécrire un. Il convient donc de procéder à la mise en cache de la manière suivante :

- restore_cache:
  keys:
    - v1-deps-{ .Branch }-{ checksum "package.json" }
    - v1-deps-{ .Branch }
    - v1-deps
- run:
  - npm ci
- save_cache:
  key: v1-deps-{ .Branch }-{ checksum "package.json" }
  paths:
    - ~/.cache
    - ~/.npm

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X