From 27ae83eff89fc52adf675a1428e1289e2d59a5b7 Mon Sep 17 00:00:00 2001 From: Emiliano Sanchez Date: Fri, 28 Feb 2025 16:47:16 -0300 Subject: [PATCH] Update CI/CD workflows to use ubuntu-latest --- .github/workflows/ci-cd.yml | 7 +++---- .github/workflows/sonar-scan.yml | 2 +- .github/workflows/update-license-year.yml | 2 +- README.md | 1 + karma/config.js | 13 +++++++++---- package-lock.json | 12 ++++++------ 6 files changed, 21 insertions(+), 16 deletions(-) diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index c94916b..470b1d5 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -19,8 +19,7 @@ permissions: jobs: build: name: Build - # @TODO rollback to ubuntu-latest eventually. ATM, `npm run test-browser` fails when using ubuntu-latest (ubuntu-22.04) with "ERROR [launcher]: Cannot start ChromeHeadless" - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 @@ -56,7 +55,7 @@ jobs: upload-stage: name: Upload assets - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest needs: build if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/development' }} strategy: @@ -99,7 +98,7 @@ jobs: upload-prod: name: Upload assets - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest needs: build if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }} strategy: diff --git a/.github/workflows/sonar-scan.yml b/.github/workflows/sonar-scan.yml index c114c56..f10bda2 100644 --- a/.github/workflows/sonar-scan.yml +++ b/.github/workflows/sonar-scan.yml @@ -12,7 +12,7 @@ on: jobs: build: name: Build - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 diff --git a/.github/workflows/update-license-year.yml b/.github/workflows/update-license-year.yml index 199a0ef..7e0a945 100644 --- a/.github/workflows/update-license-year.yml +++ b/.github/workflows/update-license-year.yml @@ -10,7 +10,7 @@ permissions: jobs: test: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 diff --git a/README.md b/README.md index 2c68837..1ce963d 100644 --- a/README.md +++ b/README.md @@ -64,6 +64,7 @@ Split has built and maintains SDKs for: * .NET [Github](https://github.com/splitio/dotnet-client) [Docs](https://help.split.io/hc/en-us/articles/360020240172--NET-SDK) * Android [Github](https://github.com/splitio/android-client) [Docs](https://help.split.io/hc/en-us/articles/360020343291-Android-SDK) * Angular [Github](https://github.com/splitio/angular-sdk-plugin) [Docs](https://help.split.io/hc/en-us/articles/6495326064397-Angular-utilities) +* Elixir thin-client [Github](https://github.com/splitio/elixir-thin-client) [Docs](https://help.split.io/hc/en-us/articles/26988707417869-Elixir-Thin-Client-SDK) * Flutter [Github](https://github.com/splitio/flutter-sdk-plugin) [Docs](https://help.split.io/hc/en-us/articles/8096158017165-Flutter-plugin) * GO [Github](https://github.com/splitio/go-client) [Docs](https://help.split.io/hc/en-us/articles/360020093652-Go-SDK) * iOS [Github](https://github.com/splitio/ios-client) [Docs](https://help.split.io/hc/en-us/articles/360020401491-iOS-SDK) diff --git a/karma/config.js b/karma/config.js index 40cbe1c..83b3539 100644 --- a/karma/config.js +++ b/karma/config.js @@ -24,10 +24,15 @@ module.exports = { 'tap' ], - // Run on Chrome Headless. Use 'Chrome' instead to run on full browser for debugging - browsers: [ - 'ChromeHeadless' - ], + // Run on Chrome Headless + customLaunchers: { + ChromeHeadlessNoSandbox: { + base: 'ChromeHeadless', + // Flags required to run in ubuntu-22.04 or above (https://chromium.googlesource.com/chromium/src/+/master/docs/linux/suid_sandbox_development.md) + flags: ['--no-sandbox', '--disable-setuid-sandbox'] + } + }, + browsers: ['ChromeHeadlessNoSandbox'], // Continuous Integration mode // if true, it capture browsers, run tests and exit. Set false for debugging diff --git a/package-lock.json b/package-lock.json index 9b030df..7153ba4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8146,9 +8146,9 @@ "dev": true }, "node_modules/serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, "dependencies": { "randombytes": "^2.1.0" @@ -15617,9 +15617,9 @@ } }, "serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, "requires": { "randombytes": "^2.1.0"