fleet/ee/fleetd-chrome
dependabot[bot] 3d799e0f1c
Bump webpack from 5.76.1 to 5.94.0 in /ee/fleetd-chrome (#21614)
Bumps [webpack](https://github.com/webpack/webpack) from 5.76.1 to
5.94.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/webpack/webpack/releases">webpack's
releases</a>.</em></p>
<blockquote>
<h2>v5.94.0</h2>
<h2>Bug Fixes</h2>
<ul>
<li>Added runtime condition for harmony reexport checked</li>
<li>Handle properly
<code>data</code>/<code>http</code>/<code>https</code> protocols in
source maps</li>
<li>Make <code>bigint</code> optimistic when browserslist not found</li>
<li>Move <code>@​types/eslint-scope</code> to dev deps</li>
<li>Related in asset stats is now always an array when no related
found</li>
<li>Handle ASI for export declarations</li>
<li>Mangle destruction incorrect with export named default properly</li>
<li>Fixed unexpected asi generation with sequence expression</li>
<li>Fixed a lot of types</li>
</ul>
<h2>New Features</h2>
<ul>
<li>Added new external type &quot;module-import&quot;</li>
<li>Support <code>webpackIgnore</code> for <code>new URL()</code>
construction</li>
<li>[CSS] <code>@import</code> pathinfo support</li>
</ul>
<h2>Security</h2>
<ul>
<li>Fixed DOM clobbering in auto public path</li>
</ul>
<h2>v5.93.0</h2>
<h2>Bug Fixes</h2>
<ul>
<li>Generate correct relative path to runtime chunks</li>
<li>Makes <code>DefinePlugin</code> quieter under default log level</li>
<li>Fixed mangle destructuring default in namespace import</li>
<li>Fixed consumption of eager shared modules for module federation</li>
<li>Strip slash for pretty regexp</li>
<li>Calculate correct contenthash for CSS generator options</li>
</ul>
<h2>New Features</h2>
<ul>
<li>Added the <code>binary</code> generator option for asset modules to
explicitly keep source maps produced by loaders</li>
<li>Added the <code>modern-module</code> library value for tree shakable
output</li>
<li>Added the <code>overrideStrict</code> option to override strict or
non-strict mode for javascript modules</li>
</ul>
<h2>v5.92.1</h2>
<h2>Bug Fixes</h2>
<ul>
<li>Doesn't crash with an error when the css experiment is enabled and
contenthash is used</li>
</ul>
<h2>v5.92.0</h2>
<h2>Bug Fixes</h2>
<ul>
<li>Correct tidle range's comutation for module federation</li>
<li>Consider runtime for pure expression dependency update hash</li>
<li>Return value in the <code>subtractRuntime</code> function for
runtime logic</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="eabf85d858"><code>eabf85d</code></a>
chore(release): 5.94.0</li>
<li><a
href="955e057abc"><code>955e057</code></a>
security: fix DOM clobbering in auto public path</li>
<li><a
href="9822387362"><code>9822387</code></a>
test: fix</li>
<li><a
href="cbb86ede32"><code>cbb86ed</code></a>
test: fix</li>
<li><a
href="5ac3d7f2cd"><code>5ac3d7f</code></a>
fix: unexpected asi generation with sequence expression</li>
<li><a
href="2411661bd1"><code>2411661</code></a>
security: fix DOM clobbering in auto public path</li>
<li><a
href="b8c03d4772"><code>b8c03d4</code></a>
fix: unexpected asi generation with sequence expression</li>
<li><a
href="f46a03ccbc"><code>f46a03c</code></a>
revert: do not use heuristic fallback for &quot;module-import&quot;</li>
<li><a
href="60f189871a"><code>60f1898</code></a>
fix: do not use heuristic fallback for &quot;module-import&quot;</li>
<li><a
href="66306aa456"><code>66306aa</code></a>
Revert &quot;fix: module-import get fallback from
externalsPresets&quot;</li>
<li>Additional commits viewable in <a
href="https://github.com/webpack/webpack/compare/v5.76.1...v5.94.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=webpack&package-manager=npm_and_yarn&previous-version=5.76.1&new-version=5.94.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts page](https://github.com/fleetdm/fleet/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-28 17:17:15 -05:00
..
changes fleetd-chrome v1.3.1 release (#19087) 2024-05-16 16:39:36 -05:00
src Improved console log output messages when Fleet server is down. (#18942) 2024-05-13 16:38:36 -05:00
.gitignore ChromeOS support for Fleet dashboard (#11953) 2023-05-26 14:32:01 -04:00
CHANGELOG.md fleetd-chrome v1.3.1 release (#19087) 2024-05-16 16:39:36 -05:00
jest.config.ts ChromeOS Tables: Integration test for 3 tables (#12844) 2023-08-02 11:31:22 -04:00
jest.setup.ts Fleetd for Chrome (#10281) 2023-03-16 09:01:10 -03:00
jsdomwithfetch.ts Fleetd for Chrome (#10281) 2023-03-16 09:01:10 -03:00
package-lock.json Bump webpack from 5.76.1 to 5.94.0 in /ee/fleetd-chrome (#21614) 2024-08-28 17:17:15 -05:00
package.json Bump webpack from 5.76.1 to 5.94.0 in /ee/fleetd-chrome (#21614) 2024-08-28 17:17:15 -05:00
README.md fleetd-chrome v1.3.1 release (#19087) 2024-05-16 16:39:36 -05:00
server.go Fleetd for Chrome (#10281) 2023-03-16 09:01:10 -03:00
tsconfig.json Fleetd for Chrome (#10281) 2023-03-16 09:01:10 -03:00
updates-beta.xml fleetd-chrome v1.3.1 release (#19087) 2024-05-16 16:39:36 -05:00
updates.xml fleetd-chrome v1.3.1 release (#19087) 2024-05-16 16:39:36 -05:00
webpack.common.js fleetd-chrome release workflows (#16020) 2024-01-16 11:56:43 -08:00
webpack.dev.js Fleetd for Chrome (#10281) 2023-03-16 09:01:10 -03:00
webpack.prod.js Fleetd for Chrome (#10281) 2023-03-16 09:01:10 -03:00

Fleetd Chrome Extension

Packaging the extension locally

Generate a .pem file to be the key for the chrome extension.

(In parent dir) Run the following command to generate an extension.

/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --pack-extension=./fleetd-chrome --pack-extension-key=path/to/chrome.pem

Adding Chrome to Fleet

To learn how to package and add hosts to Fleet, visit: https://fleetdm.com/docs/using-fleet/enroll-hosts#enroll-chromebooks.

Debugging

Service worker

View service worker logs in chrome://serviceworker-internals/?devtools (in production), or in chrome://extensions (only during development).

Manual Enroll

Steps 1 and 2 can be performed on your workstation. Step 3 and 4 are to be executed on the target Chromebook.

  1. Create your .env file:

IMPORTANT: The address in FLEET_URL must have a valid TLS certificate.

echo 'FLEET_URL="https://your-fleet-server.example.com"' >> .env
echo 'FLEET_ENROLL_SECRET="<your enroll secret>"' >> .env

To test with your local Fleet server, you can use Tunnelmole or ngrok.

Tunnelmole:

tmole 8080

ngrok:

ngrok http https://localhost:8080
  1. Build the "unpacked extension":
npm install && npm run build

The above command will generate an unpacked extension in ./dist.

  1. Send the ./dist folder to the target Chromebook.

  2. In the target Chromebook, go to chrome://extensions, toggle Developer mode and click on Load unpacked and select the dist folder.

Testing

Run tests

npm run test

Release

  1. At the top of the repo, update CHANGELOG.md by running version="X.X.X" make changelog-chrome
  2. Review CHANGELOG.md
  3. At ee/fleetd-chrome, run npm version X.X.X to update the version in package.json and package-lock.json
  4. Commit the changes and tag the commit with fleetd-chrome-vX.X.X-beta. This will trigger the beta release workflow.
  5. Once the beta release is tested and PR merged, tag the commit with fleetd-chrome-vX.X.X. This will trigger the release workflow.
  6. Announce the release in the #help-engineering channel in Slack.

Using GitHub Actions, the build is automatically uploaded to R2 and properly configured clients should be able to update immediately when the job completes. Note that automatic updates seem to only happen about once a day in Chrome -- Hit the "Update" button in chrome://extensions to trigger the update manually.

Beta releases

Beta releases are pushed to https://chrome-beta.fleetdm.com/updates.xml with the extension ID bfleegjcoffelppfmadimianphbcdjkb.

Kick off a beta release by updating the package.json, then tag a commit with fleetd-chrome-vX.X.X-beta to kick off the build and deploy.