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
linewrap
- Line wrapping. Defaults to 100 chars lines, set desired length with LINEWRAPLENGTH=xx
cd WebRTC
git clone git@github.com:w3c/webrtc-respec-ci.git
git clone git@github.com:w3c/mediacapture-main.git
cd mediacapture-main
make -f ../webrtc-respec-ci/Makefile setup
make -f ../webrtc-respec-ci/Makefile check
Example .travis.yml
file using Travis CI's new container-based infrastructure.
language: python
python:
- "2.7_with_system_site_packages"
sudo: false
addons:
apt:
sources:
- george-edison55-precise-backports
packages:
- libwww-perl
- libcss-dom-perl
- python-lxml
- cmake
- cmake-data
install:
- git clone https://github.com/w3c/webrtc-respec-ci.git
- make -f webrtc-respec-ci/Makefile travissetup
script:
- make -f webrtc-respec-ci/Makefile check
This script can help you ensure that your modifications do not break line wrapping of the original document.
Line wrapping using default line length:
make -f ../webrtc-respec-ci/Makefile linewrap
Line wrapping using custom line length:
make -f ../webrtc-respec-ci/Makefile linewrap LINEWRAPLENGTH=80