mkdocs-material/.travis.yml

115 lines
3.4 KiB
YAML
Raw Permalink Normal View History

2017-01-06 21:11:18 +03:00
# Copyright (c) 2016-2017 Martin Donath <martin.donath@squidfunk.com>
2016-02-11 12:44:42 +03:00
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
# IN THE SOFTWARE.
language: node_js
sudo: false
2016-02-11 12:44:42 +03:00
# -----------------------------------------------------------------------------
# Regular builds
# -----------------------------------------------------------------------------
# Node.js versions
node_js:
- 5
- 6
- 7
2017-02-09 02:45:01 +03:00
# Limit clone depth to 5, to speed up build
git:
depth: 5
2016-12-31 20:05:31 +03:00
# Cache dependencies
2016-12-31 20:01:59 +03:00
cache:
pip: true
2017-02-24 20:51:18 +03:00
yarn: true
2016-12-31 20:01:59 +03:00
directories:
- node_modules
2017-02-10 12:36:20 +03:00
# Install yarn as Travis doesn't support it out of the box
2017-02-24 22:57:19 +03:00
before_install:
2017-02-24 23:04:23 +03:00
- npm install -g yarn
2017-02-09 20:10:27 +03:00
2016-02-11 12:44:42 +03:00
# Install dependencies
install:
- yarn install --ignore-optional
- pip install --user -r requirements.txt
2016-02-11 12:44:42 +03:00
# Perform build and tests
2017-02-24 22:57:19 +03:00
script:
- yarn run build
# -----------------------------------------------------------------------------
# Additional builds
# -----------------------------------------------------------------------------
2017-02-24 22:57:19 +03:00
# Matrix for additional builds
matrix:
include:
# Build release and docker image and send to PyPI and Docker Hub.
2017-02-24 20:45:48 +03:00
- node_js: 5
services:
- docker
2017-02-24 22:57:19 +03:00
env:
- __TASK=RELEASE
# If we're not on a release branch, exit early and indicate success
2017-02-24 22:59:40 +03:00
before_install:
- echo "$TRAVIS_BRANCH" | grep -qvE "^[0-9.]+$" && exit 0; :;
# Install wheel for build
install:
- pip install wheel
# Perform build
script:
- python setup.py build sdist bdist_wheel --universal
- docker build -t $TRAVIS_REPO_SLUG .
# If build was successful, publish
after_success:
# Install twine and push release to PyPI
- pip install twine
2017-02-24 22:57:19 +03:00
- twine upload -u $PYPI_USERNAME -p $PYPI_PASSWORD dist/*
# Push to Docker Hub
- docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
2017-02-24 22:57:19 +03:00
- docker tag $TRAVIS_REPO_SLUG $TRAVIS_REPO_SLUG:$TRAVIS_BRANCH
- docker tag $TRAVIS_REPO_SLUG $TRAVIS_REPO_SLUG:latest
- docker push $TRAVIS_REPO_SLUG
2017-02-24 22:57:19 +03:00
# # Build visual tests separately - temporary disabled until tests stable
# - node_js: 5
# addons:
# artifacts:
# paths:
# - gemini-report
# apt:
# sources:
# - ubuntu-toolchain-r-test
# packages:
# - gcc-4.8
# - g++-4.8
# env:
# - CXX=g++-4.8
# install: yarn install
# script: yarn run test:visual:run