Analytics.js Integrations
License
Released under the MIT license.
Configuration
Yarn
Use always yarn
, not npm
to install your packges.
Lint
Tests
Karma + Mocha. Supported browsers:
- Chrome headless (local and CircleCI)
- Chrome latest (CircleCI only)
- Firefox latest (CircleCI only)
- Safari 9 (CircleCI only)
- IE 9 (CircleCI only)
- IE 10 (CircleCI only)
- IE 11 (CircleCI only)
- Edge latest (CircleCI only)
- Test one integration:
$ yarn test-integration <integration-name> <browser-type>
- Test updated integrations (require Golang):
$ yarn test-updated-integrations <browser-type>
- Test all integrarions:
$ yarn test-all-integrations <browser-type>
You can ignore specific browsers from an integration tests adding the file .browserignore
to
the integration folder with one browser name per line.
Some integrations require SAUCE_USERNAME
and SAUCE_ACCESS_KEY
environment variables to be set.
This can be bypassed by using chromeHeadless
as <browser-type>
.
Releasing Changes
Follow this guide to deploy your changes.
Credentials
(Work in progress) Do not hardcode secrets, account ids or other credentials in the code. If a credential gets commited and upload, it has to be immediately removed and revoked.
Code Coverage
Code coverage reports can be found after test runs in coverage/report
. To quickly open detailed reports in your browser run yarn coverage-report
. The project uses Istanbul for coverage reporting. If you're unfamiliar with Istanbul or code coverage in general you can find an excellent summary on reading reports here.
Pull Requests and releases
Make sure your PR includes the new version in package.json
. When the PR gets
merged, it will automatically be published.
IMPORTANT: Auto-release is not activated for new integrations. If you want to publish your new, shiny integration, merge the pull request and publish the first version manually.