Script to run continuous integration on a respec-based specification.
This Makefile can be used with the Travis CI continuous integration system (within a .travis.yml file) or locally from a Debian-based system before contributing to a specification maintained by the W3C WebRTC WG.
setup (to be used locally) - Setup dependencies on Debian-based system
update (to be used locally) - Update dependencies on Debian-based system
travissetup (to be used on Travis) - Setup dependencies on Travis CI
check - Run the following checks on your respec document:
- Check line wrapping using tidy-html5. Optional enable it with
LINEWRAP=true - respec validity
- WebIDL validity using widlproc
- HTML5 validity of the generated file using html5validator/Nu Html Checker
- Check internal links using linkchecker
tidy - Cleanup your document markup using tidy-html5
Example usage on the Media Capture and Streams specification
git clone [email protected]:w3c/mediacapture-main.git
cd mediacapture-main
make setup
make checkThe mediacapture-main/Makefile script will take care of installing and setting up webrtc-respec-ci and its dependencies automatically.
Example .travis.yml file using Travis CI's Container-based infrastructure.
language: python
python: "2.7"
dist: trusty
branches:
only:
- /.*/
sudo: false
addons:
apt:
packages:
- libwww-perl
- libcss-dom-perl
chrome: stable
cache:
directories:
- node_modules # NPM packages
before_install:
- nvm install lts/*
install:
- make travissetup
script:
- make checkThis script can help you ensure that your modifications do not break line wrapping of the original document.
Check line wrapping (using default line length of 100 characters defined in webrtc-respec-ci/tidy.config):
LINEWRAP=true make tidycheckYou can define a specific line length for your document by editing tidy.config and setting the wrap option to the desired line length eg wrap: 80.