https://github.com/saucelabs/sauce-connect-action
A GitHub action to launch Sauce Connect Proxy.
https://github.com/saucelabs/sauce-connect-action
labs sauce sauceconnect sauceconnect-plugin saucelabs tunnel
Last synced: 6 months ago
JSON representation
A GitHub action to launch Sauce Connect Proxy.
- Host: GitHub
- URL: https://github.com/saucelabs/sauce-connect-action
- Owner: saucelabs
- License: mit
- Created: 2019-09-25T21:58:23.000Z (about 6 years ago)
- Default Branch: main
- Last Pushed: 2025-02-14T14:48:14.000Z (8 months ago)
- Last Synced: 2025-03-28T07:05:27.756Z (7 months ago)
- Topics: labs, sauce, sauceconnect, sauceconnect-plugin, saucelabs, tunnel
- Language: TypeScript
- Homepage: https://github.com/marketplace/actions/sauce-connect-proxy-action
- Size: 2.21 MB
- Stars: 13
- Watchers: 5
- Forks: 17
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Sauce Connect Proxy GitHub Action
A GitHub Action to launch [Sauce Connect Proxy](https://docs.saucelabs.com/secure-connections/), enabling secure testing of your applications.
## Example
```yaml
jobs:
test:
runs-on: ubuntu-latest
name: Action Test
steps:
- uses: actions/checkout@v4
- uses: saucelabs/sauce-connect-action@v3
with:
username: ${{ secrets.SAUCE_USERNAME }}
accessKey: ${{ secrets.SAUCE_ACCESS_KEY }}
region: us
tunnelName: github-action-tunnel
configFile: ${{ github.workspace }}/sc-configuration/config.yaml
```## Migrating from v2 to v3
Version 2.x of this action works with Sauce Connect 4, which reached end-of-support in Q4 2024. Version 3.x supports the latest Sauce Connect 5.
To properly migrate to Sauce Connect 5, please refer to [Migrating from Sauce Connect Proxy 4](https://docs.saucelabs.com/secure-connections/sauce-connect-5/migrating/).
## Inputs
| Name | Required | Description |
|-------------|----------|-------------|
| `username` | ✅ Yes | Sauce Labs [username](https://docs.saucelabs.com/dev/cli/sauce-connect-5/run/#username). |
| `accessKey` | ✅ Yes | Sauce Labs [API Access Key](https://docs.saucelabs.com/dev/cli/sauce-connect-5/run/#access-key). |
| `region` | ✅ Yes | Sauce Labs [region](https://github.com/saucelabs/node-saucelabs?tab=readme-ov-file#region). |
| `configFile` | No | Path to a Sauce Connect Proxy [configuration file](https://docs.saucelabs.com/secure-connections/sauce-connect-5/operation/configuration/). Use an absolute path (e.g., `${{ github.workspace }}/sc-configuration/config.yaml`). |
| `scVersion` | No | The version of the Sauce Connect client to use. Defaults to the latest release. Check the [official documentation](https://docs.saucelabs.com/secure-connections/sauce-connect-5/installation/) for available versions. |
| `retryTimeout` | No | Maximum retry time in minutes before stopping. Default: `10`. |## Additional configuration
For more configuration options, refer to:
- [action.yml](action.yml)
- [Sauce Connect 5 CLI](https://docs.saucelabs.com/dev/cli/sauce-connect-5/run/)## Accessing Sauce Connect Proxy Logs
For debugging or auditing purposes, you can save the Sauce Connect Proxy logs using the [upload-artifact](https://github.com/actions/upload-artifact).
Example (logs saved only on failure):
```yaml
jobs:
test:
runs-on: ubuntu-latest
name: Action Test
steps:
- uses: actions/checkout@v4
- uses: saucelabs/sauce-connect-action@v3
with:
username: ${{ secrets.SAUCE_USERNAME }}
accessKey: ${{ secrets.SAUCE_ACCESS_KEY }}
region: us
tunnelName: github-action-tunnel
configFile: ${{ github.workspace }}/sc-configuration/config.yaml- uses: actions/upload-artifact@v4
if: ${{ failure() }}
with:
name: sauce-connect-log
path: ${{ env.SAUCE_CONNECT_DIR_IN_HOST }}/sauce-connect.log
```## Development
To run locally, use:
```bash
INPUT_REGION=us-west-1 INPUT_TUNNELNAME=sauce-connect-test INPUT_USERNAME=username INPUT_ACCESSKEY=accesskey node ./dist/main/index.js
```