cypress-io / circleci-orb

Install, cache and run Cypress.io tests on CircleCI with minimal configuration.
https://circleci.com/orbs/registry/orb/cypress-io/cypress
MIT License
159 stars 101 forks source link

Add documentation/example around using a different Node version #431

Closed jordanpowell88 closed 10 months ago

jordanpowell88 commented 1 year ago

The current Orb does not document well an example of how to use a different node version with the default executor. We should create an example that will get bundled as part of the yml examples section

This was discovered as part of https://github.com/cypress-io/circleci-orb/issues/425.

The orb does not work as expected

sedghi commented 10 months ago

seems like cypress@3 orb default node is still 16.16. Can you update that to 18? Our CI is failing after the upgrade. And the info on using node-version when using docker does not work

and also the cypress@3 has deprecator using the executor too.

This is my config and it doesn't work

orbs:
  cypress: cypress-io/cypress@3.1.4
executor:
  docker:
    # Primary container image where all steps run.
    - image: 'node-18.15.0-chrome-106.0.5249.61-1-ff-99.0.1-edge-114.0.1823.51-1'

workflows:
  PR_CHECKS:
    jobs:
      - UNIT_TESTS

      - cypress/run:
          name: 'E2E: PWA'
          start-command: yarn run test:data && yarn run test:e2e:serve
          install-browsers: true
          cypress-command:
            'npx wait-on@latest http://localhost:3000 && cd platform/app &&  npx cypress run
            --record --browser chrome --parallel'
          package-manager: 'yarn'
          cypress-cache-key: 'yarn-packages-{{ checksum "yarn.lock" }}'
          cypress-cache-path: '~/.cache/Cypress'
          post-steps:
            - store_artifacts:
                path: platform/app/cypress/screenshots
            - store_artifacts:
                path: platform/app/cypress/videos
            - store_test_results:
                path: platform/app/cypress/results
          requires:
            - UNIT_TESTS

Previously I was able to say, but that seems to not work anymore complaining there is no executor on 3


orbs:
  cypress: cypress-io/cypress@1.26.0
executors:
  chrome-and-pacs:
    docker:
      # Primary container image where all steps run.
      - image: 'cypress/browsers:node16.14.2-slim-chrome103-ff102'

workflows:
  version: 2

  PR_CHECKS:
    jobs:
      - UNIT_TESTS

      # E2E: PWA
      - cypress/run:
          name: 'E2E: PWA'
          executor: chrome-and-pacs

More specifically the following does not work if you choose a node 18, it still uses 16.16

https://github.com/cypress-io/circleci-orb/blob/master/README.md?ref=cypress-io.ghost.io#executors

jordanpowell88 commented 10 months ago

This PR closes this issue when it gets released https://github.com/cypress-io/circleci-orb/pull/438