Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: migrate to Sauce Connect 5 #754

Open
GraemeWatt opened this issue Jan 30, 2024 · 1 comment
Open

ci: migrate to Sauce Connect 5 #754

GraemeWatt opened this issue Jan 30, 2024 · 1 comment
Labels
complexity: medium priority: medium type: bug Indicates an unexpected problem or unintended behaviour

Comments

@GraemeWatt
Copy link
Member

GraemeWatt commented Jan 30, 2024

Sauce Connect 5 was recently released with general availability. The announcement email says:

Note that Sauce Connect 4.0 is transitioning into maintenance mode, where it will receive bug fix releases exclusively until its end-of-life in December 2024. Please plan accordingly and reach out if you have any questions or concerns.

I've spent the last couple of days trying to get Sauce Connect 5 working on my laptop (macOS 14.2.1) without success. One breaking change is that a tunnel name is now required. It can be specified with -i "${SAUCE_USERNAME}_tunnel_name" then using the same tunnel name in tests/e2e/conftest.py:

'tunnelName': os.environ.get('GITHUB_RUN_ID', ''),

For example, use 'tunnelName': os.environ.get('GITHUB_RUN_ID', local_tunnel_name) where local_tunnel_name = os.environ.get('SAUCE_USERNAME', '') + '_tunnel_name'. After this change, I could start Sauce Connect, but I got an error message trying a live local test:

sauce_connect proxying is denied to host "localhost:5000"
localhost proxying is disabled

I added an option --proxy-localhost allow or --proxy-localhost direct and the live local test partially succeeded in that the HEPData homepage was displayed, but I could not navigate to other pages. The end-to-end tests all failed with timeouts. I have tried various other options without success. This problem should be investigated further and overcome by the end of 2024.

@GraemeWatt GraemeWatt added type: bug Indicates an unexpected problem or unintended behaviour priority: medium complexity: medium labels Jan 30, 2024
@github-project-automation github-project-automation bot moved this to To do in @HEPData Jan 30, 2024
GraemeWatt added a commit that referenced this issue Dec 11, 2024
* Upgrade from Sauce Connect 4.9.1 before end-of-life on 5th May 2025.
* Add SQLALCHEMY_WARN_20 environment variable to CI and install docs.
* Also switch from OpenSearch 2.11.0 to 2.15.0 in CI and install docs.
@GraemeWatt
Copy link
Member Author

GraemeWatt commented Dec 13, 2024

Latest information from Sauce Labs regarding support for Sauce Connect 4:

As of December 31, 2024, support will be discontinued, meaning there will be no further bug fixes or improvements. Additionally, Sauce Connect 4 will officially reach its end of life on May 5, 2025, after which no tunnels will be available.

I reported the timeout issue with Sauce Connect 5 to Sauce Labs support on 21st August 2024. After several iterations and attempts to find a workaround, it looks like the problem has finally been resolved on the Sauce Labs side. The live local test is now successful and the end-to-end tests can (sometimes!) be run successfully without timing out.

I started a branch sauce-connect-5 with a commit to migrate to Sauce Connect 5 in the GitHub Actions workflow. However, the GitHub action sauce-connect-action does not currently support Sauce Connect 5 or the necessary --proxy-localhost direct option. I opened an issue saucelabs/sauce-connect-action#88 but the repository doesn't seem to be actively maintained. I'm waiting to hear from Sauce Labs support whether there will be an official GitHub action for Sauce Connect 5. Otherwise, we would need to switch to running Sauce Connect 5 via Docker in the GitHub Actions workflow.

@GraemeWatt GraemeWatt moved this from To do to On Hold in @HEPData Dec 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
complexity: medium priority: medium type: bug Indicates an unexpected problem or unintended behaviour
Projects
Status: On Hold
Development

No branches or pull requests

1 participant