sitespeed.io 30.2.0 → 30.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,19 +9,19 @@ jobs:
9
9
  steps:
10
10
  -
11
11
  name: Set up QEMU
12
- uses: docker/setup-qemu-action@v2
12
+ uses: docker/setup-qemu-action@v3
13
13
  -
14
14
  name: Set up Docker Buildx
15
- uses: docker/setup-buildx-action@v2
15
+ uses: docker/setup-buildx-action@v3
16
16
  -
17
17
  name: Login to DockerHub
18
- uses: docker/login-action@v2
18
+ uses: docker/login-action@v3
19
19
  with:
20
20
  username: ${{ secrets.DOCKERHUB_USERNAME }}
21
21
  password: ${{ secrets.DOCKERHUB_TOKEN }}
22
22
  -
23
23
  name: Build and push sitespeed.io
24
- uses: docker/build-push-action@v4
24
+ uses: docker/build-push-action@v5
25
25
  with:
26
26
  platforms: linux/amd64
27
27
  push: true
@@ -9,16 +9,16 @@ jobs:
9
9
  steps:
10
10
  -
11
11
  name: Checkout
12
- uses: actions/checkout@v3
12
+ uses: actions/checkout@v4
13
13
  -
14
14
  name: Set up QEMU
15
- uses: docker/setup-qemu-action@v1
15
+ uses: docker/setup-qemu-action@v3
16
16
  -
17
17
  name: Set up Docker Buildx
18
- uses: docker/setup-buildx-action@v2
18
+ uses: docker/setup-buildx-action@v3
19
19
  -
20
20
  name: Login to DockerHub
21
- uses: docker/login-action@v2
21
+ uses: docker/login-action@v3
22
22
  with:
23
23
  username: ${{ secrets.DOCKERHUB_USERNAME }}
24
24
  password: ${{ secrets.DOCKERHUB_TOKEN }}
@@ -30,7 +30,7 @@ jobs:
30
30
  strip_v: true
31
31
  -
32
32
  name: Build and push sitespeed.io
33
- uses: docker/build-push-action@v4
33
+ uses: docker/build-push-action@v5
34
34
  with:
35
35
  context: .
36
36
  platforms: linux/amd64,linux/arm64
@@ -39,7 +39,7 @@ jobs:
39
39
  tags: sitespeedio/sitespeed.io:${{steps.tag.outputs.tag}},sitespeedio/sitespeed.io:latest
40
40
  -
41
41
  name: Build and push sitespeed.io+1
42
- uses: docker/build-push-action@v4
42
+ uses: docker/build-push-action@v5
43
43
  with:
44
44
  context: .
45
45
  platforms: linux/amd64,linux/arm64
@@ -50,7 +50,7 @@ jobs:
50
50
  tags: sitespeedio/sitespeed.io:${{steps.tag.outputs.tag}}-plus1
51
51
  -
52
52
  name: Build and push sitespeed.io+wpt
53
- uses: docker/build-push-action@v4
53
+ uses: docker/build-push-action@v5
54
54
  with:
55
55
  context: .
56
56
  platforms: linux/amd64,linux/arm64
@@ -61,7 +61,7 @@ jobs:
61
61
  tags: sitespeedio/sitespeed.io:${{steps.tag.outputs.tag}}-webpagetest
62
62
  -
63
63
  name: Build and push sitespeed.io-slim
64
- uses: docker/build-push-action@v4
64
+ uses: docker/build-push-action@v5
65
65
  with:
66
66
  context: .
67
67
  platforms: linux/amd64,linux/arm64
@@ -10,9 +10,9 @@ jobs:
10
10
  build:
11
11
  runs-on: ubuntu-latest
12
12
  steps:
13
- - uses: actions/checkout@v3
13
+ - uses: actions/checkout@v4
14
14
  - name: Use Node.js
15
- uses: actions/setup-node@v3
15
+ uses: actions/setup-node@v4
16
16
  with:
17
17
  node-version: '20.x'
18
18
  - name: Install sitespeed.io
@@ -10,7 +10,7 @@ jobs:
10
10
  runs-on: ubuntu-20.04
11
11
  steps:
12
12
  - name: Checkout code
13
- uses: actions/checkout@v3
13
+ uses: actions/checkout@v4
14
14
 
15
15
  - name: Build an image from Dockerfile
16
16
  run: |
@@ -10,7 +10,7 @@ jobs:
10
10
  build:
11
11
  runs-on: ubuntu-latest
12
12
  steps:
13
- - uses: actions/checkout@v3
13
+ - uses: actions/checkout@v4
14
14
  - name: Build Docker containers
15
15
  run: |
16
16
  docker buildx install
@@ -28,8 +28,10 @@ jobs:
28
28
  run: docker run --rm -v "$(pwd)":/sitespeed.io --network=host sitespeedio/sitespeed.io http://127.0.0.1:3001 -n 1 -b edge
29
29
  - name: Run test on slim container
30
30
  run: docker run --rm -v "$(pwd)":/sitespeed.io --network=host sitespeedio/sitespeed.io:slim http://127.0.0.1:3001 -n 1 --browsertime.firefox.preference "devtools.netmonitor.persistlog:true"
31
- - name: Test WebPageReplay with Chrome
31
+ - name: Test WebPageReplay with Chrome
32
32
  run: docker run --cap-add=NET_ADMIN --rm -v "$(pwd)":/sitespeed.io -e REPLAY=true -e LATENCY=100 sitespeedio/sitespeed.io https://www.sitespeed.io -n 3 -b chrome
33
+ - name: Test WebPageReplay user journey with Chrome
34
+ run: docker run --cap-add=NET_ADMIN --rm -v "$(pwd)":/sitespeed.io -e REPLAY=true -e LATENCY=100 sitespeedio/sitespeed.io test/prepostscripts/multiWindows.cjs -n 1 -b chrome --multi
33
35
  - name: Test WebPageReplay with Firefox
34
36
  run: docker run --cap-add=NET_ADMIN --rm -v "$(pwd)":/sitespeed.io --network=host -e REPLAY=true -e LATENCY=100 sitespeedio/sitespeed.io https://www.sitespeed.io -n 3 -b firefox --browsertime.firefox.acceptInsecureCerts true
35
37
  - name: Run Chrome test with config
@@ -10,9 +10,9 @@ jobs:
10
10
  build:
11
11
  runs-on: ubuntu-latest
12
12
  steps:
13
- - uses: actions/checkout@v3
13
+ - uses: actions/checkout@v4
14
14
  - name: Use Node.js
15
- uses: actions/setup-node@v3
15
+ uses: actions/setup-node@v4
16
16
  with:
17
17
  node-version: '20.x'
18
18
  - name: Install sitespeed.io
@@ -10,9 +10,9 @@ jobs:
10
10
  build:
11
11
  runs-on: macos-latest
12
12
  steps:
13
- - uses: actions/checkout@v3
13
+ - uses: actions/checkout@v4
14
14
  - name: Use Node.js
15
- uses: actions/setup-node@v3
15
+ uses: actions/setup-node@v4
16
16
  with:
17
17
  node-version: '20.x'
18
18
  - name: Install dependencies
@@ -9,7 +9,7 @@ jobs:
9
9
  name: running sitespeed.io
10
10
  steps:
11
11
  - name: code checkout
12
- uses: actions/checkout@v3
12
+ uses: actions/checkout@v4
13
13
  # Here we build our own container to make sure we test against our latest code
14
14
  # but YOU can just used the latest version by specifying
15
15
  # sitespeedio/sitespeed.io:VERSION
@@ -13,9 +13,9 @@ jobs:
13
13
  matrix:
14
14
  node-version: [18.x, 20.x]
15
15
  steps:
16
- - uses: actions/checkout@v3
16
+ - uses: actions/checkout@v4
17
17
  - name: Use Node.js ${{ matrix.node-version }}
18
- uses: actions/setup-node@v3
18
+ uses: actions/setup-node@v4
19
19
  with:
20
20
  node-version: ${{ matrix.node-version }}
21
21
  - name: Install dependencies and Chrome
@@ -10,9 +10,9 @@ jobs:
10
10
  build:
11
11
  runs-on: windows-latest
12
12
  steps:
13
- - uses: actions/checkout@v3
13
+ - uses: actions/checkout@v4
14
14
  - name: Use Node.js
15
- uses: actions/setup-node@v3
15
+ uses: actions/setup-node@v4
16
16
  with:
17
17
  node-version: '20.x'
18
18
  - name: Install sitespeed.io
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # CHANGELOG - sitespeed.io (we use [semantic versioning](https://semver.org))
2
2
 
3
+ ## 30.3.0 - 2023-11-09
4
+
5
+ ### Added
6
+ * Upgrade to Browsertime 18.0.0.
7
+ * Added suupport to run user journeys with WebPageReplay [#4005](https://github.com/sitespeedio/sitespeed.io/pull/4005).
8
+
9
+ ### Fixed
10
+ * Downgrade puppeteer in the +1 container for Lighthouse, thank you [bairov pavel](https://github.com/Amerousful) for PR [#123](https://github.com/sitespeedio/plugin-lighthouse/pull/123).
11
+
12
+ ## 30.2.1 - 2023-11-03
13
+ ### Fixed
14
+ * The Docker+1 container got a fix for Lighthouse that didn't work in 30.2.0 (adding dev-shm when starting Chrome).
15
+
3
16
  ## 30.2.0 - 2023-11-03
4
17
 
5
18
  ### Added
@@ -36,9 +36,18 @@ try {
36
36
  throw e;
37
37
  }
38
38
 
39
- async function testURLs(engine, urls) {
39
+ async function testURLs(engine, urls, isMulti) {
40
40
  try {
41
41
  await engine.start();
42
+
43
+ if(isMulti) {
44
+ const result = await engine.runMultiple(urls);
45
+ for (let errors of result[0].errors) {
46
+ if (errors.length > 0) {
47
+ process.exitCode = 1;
48
+ }
49
+ }
50
+ } else {
42
51
  for (let url of urls) {
43
52
  const result = await engine.run(url);
44
53
  for (let errors of result[0].errors) {
@@ -47,6 +56,7 @@ async function testURLs(engine, urls) {
47
56
  }
48
57
  }
49
58
  }
59
+ }
50
60
  } finally {
51
61
  engine.stop();
52
62
  }
@@ -203,11 +213,12 @@ async function runBrowsertime() {
203
213
  );
204
214
  }
205
215
  }
216
+
206
217
  const engine = new BrowsertimeEngine(btOptions);
207
- const urls = getURLs(parsed.argv._);
218
+ const urls = parsed.argv.multi ? parsed.argv._ : getURLs(parsed.argv._);
208
219
 
209
220
  try {
210
- await testURLs(engine, urls);
221
+ await testURLs(engine, urls, parsed.argv.multi);
211
222
  } catch (e) {
212
223
  console.error('Could not run ' + e);
213
224
  process.exit(1);