saucelabs / sauce-connect-action

A GitHub action to launch Sauce Connect Proxy.
https://github.com/marketplace/actions/sauce-connect-proxy-action
MIT License
13 stars 19 forks source link
labs sauce sauceconnect sauceconnect-plugin saucelabs tunnel

Sauce Connect Proxy GitHub Action

A GitHub action to launch Sauce Connect Proxy.

Example

jobs:
    test:
        runs-on: ubuntu-latest
        name: Action Test
        steps:
            # ...
            - uses: actions/checkout@v3  # reference files in the current repository
            - uses: saucelabs/sauce-connect-action@v2
              with:
                  username: ${{ secrets.SAUCE_USERNAME }}
                  accessKey: ${{ secrets.SAUCE_ACCESS_KEY }}
                  tunnelName: github-action-tunnel
                  configFile: ${{ github.workspace }}/sc-configuration/config.yaml
            # ...

Inputs

username:

Required Sauce Labs user name.

accessKey:

Required Sauce Labs API Access Key.

configFile:

Sauce Connect Proxy configuration file.

Only an absolute path to the file is supported at the moment (i.e. must prepend the relative path to the file in the repo with github.workspace, see the example above).

scVersion:

(Optional) version of the saucelabs/sauce-connect docker image. Use the latest sauce-connect release by default (the current latest version is 4.9.2).

retryTimeout:

Do not retry if this amount of minutes has passed since starting. (default: "10")

Additional configuration

Please refer to Sauce Labs documentation for each option documentation.

Sauce Connect Proxy log

Sometimes, it's beneficial to access the Sauce Connect Proxy log for debugging or an audit.

It can be done with upload-artifact GitHub Action. Optionally, a failure condition may be specified to store the log only in case of a failure.

jobs:
    test:
        runs-on: ubuntu-latest
        name: Action Test
        steps:
            # ...
            - uses: actions/checkout@v3  # reference files in the current repository
            - uses: saucelabs/sauce-connect-action@v2
              with:
                  username: ${{ secrets.SAUCE_USERNAME }}
                  accessKey: ${{ secrets.SAUCE_ACCESS_KEY }}
                  tunnelName: github-action-tunnel
                  configFile: ${{ github.workspace }}/sc-configuration/config.yaml
            # ...

            - uses: actions/upload-artifact@v3
              if: ${{ failure() }}
              with:
                name: sauce-connect-log
                path: ${{ env.SAUCE_CONNECT_DIR_IN_HOST }}/sauce-connect.log