Search code examples
authenticationcontainerscypressgithub-actionssingle-sign-on

Error: SSO is not supported on this platform. Only Windows OSs are supported. cypress/included error


I'm trying to run a cypress process on a cypress/included container inside a ubuntu runner (company runner).

jobs:
  e2e-tests:
    runs-on: self-hosted
    container:
      image: xxxx(cypress/included with my company proxy settings)
    strategy:
      matrix:
        node-version: [16.x]
    steps:

    - uses: actions/checkout@v3

    - name: setup node
      uses: actions/setup-node@v3
      with:
        node-version: ${{matrix.node-version}}

    - name: npm
      run: npm install
      
    - name: install cypress Dependencies
      run: |
        apt-get -y install libgtk2.0-0 libgtk-3-0 libgbm-dev libnotify-dev libgconf-2-4 libnss3 libxss1 libasound2 libxtst6 xauth xvfb

      
    - name: run cypress
      run: npx cypress-ntlm run --env Environment=Development

For some reason I'm getting the following output:

  Site load
    1) "before all" hook for "has logo"


  0 passing (324ms)
  1 failing

  1) Site load
       "before all" hook for "has logo":
     Error: SSO is not supported on this platform. Only Windows OSs are supported.

Because this error occurred during a `before all` hook we are skipping the remaining tests in the current suite: `Site load`
      at Context.ntlmSso (webpack:///./node_modules/cypress-ntlm-auth/dist/commands/index.js:111:0)




  (Results)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Tests:        1                                                                                │
  │ Passing:      0                                                                                │
  │ Failing:      1                                                                                │
  │ Pending:      0                                                                                │
  │ Skipped:      0                                                                                │
  │ Screenshots:  1                                                                                │
  │ Video:        true                                                                             │
  │ Duration:     0 seconds                                                                        │
  │ Spec Ran:     3-impact/fist-test.cy.ts                                                         │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘

I've searched the vast space of the internet for a solution and almost every solution resulted in this output.


Solution

  • SSO is not supported on this platform. Only Windows OSs are supported.

    According to this comment by the author of cypress-ntlm-auth on this GitHub issue:

    ntlmSso only works on windows, since it uses the internal windows API to authenticate using the account logged into windows.

    So, you have to have a Windows runner to run this successfully.

    See https://github.com/bjowes/cypress-ntlm-auth/blob/master/README.md for more details.