Skip to content

Commit

Permalink
ci(browserstack): increased random wait before browserstack availabil…
Browse files Browse the repository at this point in the history
…ity polling
  • Loading branch information
tompahoward committed Jan 11, 2021
1 parent 0015bb7 commit 12e5765
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 9 deletions.
8 changes: 4 additions & 4 deletions .github/workflows/build-and-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -327,14 +327,14 @@ jobs:

- run: npm config set script-shell $(which bash)
- run: npm ci
- run: npm run wait-for-browser-stack
env:
BROWSERSTACK_USERNAME: ${{ secrets.BROWSERSTACK_USERNAME }}
BROWSERSTACK_ACCESS_KEY: ${{ secrets.BROWSERSTACK_ACCESS_KEY }}
- uses: "browserstack/github-actions/setup-env@v1.0.1"
with:
username: ${{ secrets.BROWSERSTACK_USERNAME }}
access-key: ${{ secrets.BROWSERSTACK_ACCESS_KEY }}
- run: npm run wait-for-browser-stack
env:
BROWSERSTACK_USERNAME: ${{ secrets.BROWSERSTACK_USERNAME }}
BROWSERSTACK_ACCESS_KEY: ${{ secrets.BROWSERSTACK_ACCESS_KEY }}
- uses: "browserstack/github-actions/setup-local@v1.0.1"
with:
local-testing: start
Expand Down
10 changes: 5 additions & 5 deletions scripts/wait-for-browser-stack.js
Original file line number Diff line number Diff line change
Expand Up @@ -51,17 +51,17 @@ const MAX_WAIT = 10 * 60 * 60 // 10hr
const RESERVED_SESSIONS = 1
const MIN_WAIT_TIME = 40
const MAX_WAIT_TIME = 80
const MAX_INIT_WAIT_TIME = 20
const MAX_INIT_WAIT_TIME = 120
/**
*
*/
async function waitForSpareSession () {
const start = Date.now()
// inital random sleep so all the different browserstack tests don't try to start at once
const initialWaitTime = getRandomInt(0, MAX_INIT_WAIT_TIME)
logger.info(`waiting ${initialWaitTime} before starting availability check`)
while (secondsSince(start) < MAX_WAIT) {
// inital random sleep so all the different browserstack tests don't try to start at once
await new Promise(resolve =>
setTimeout(resolve, getRandomInt(0, MAX_INIT_WAIT_TIME) * 1000)
)
await new Promise(resolve => setTimeout(resolve, initialWaitTime * 1000))
const planInfo = await getPlanInfo()
const maxAllowed =
planInfo.parallel_sessions_max_allowed - RESERVED_SESSIONS
Expand Down

0 comments on commit 12e5765

Please sign in to comment.