diff --git a/.travis.yml b/.travis.yml
index 87b32afb84cb1b8aff62ace3030b27027946d10b..ade23ad18b127d14c9988b46791de0c498cd80fd 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -25,11 +25,10 @@ sudo: false
 # Regular builds
 # -----------------------------------------------------------------------------
 
-# Node.js versions
-node_js:
-  - 5
-  - 6
-  - 7
+# Node.js version and necessary services
+node_js: 5
+services:
+  - docker
 
 # Limit clone depth to 5, to speed up build
 git:
@@ -51,64 +50,6 @@ install:
   - yarn install --ignore-optional
   - pip install --user -r requirements.txt
 
-# Perform build and tests
+# Perform build, tests and release
 script:
-  - yarn run build
-
-# -----------------------------------------------------------------------------
-# Additional builds
-# -----------------------------------------------------------------------------
-
-# Matrix for additional builds
-matrix:
-  include:
-
-    # Build release and docker image and send to PyPI and Docker Hub.
-    - node_js: 5
-      services:
-        - docker
-      env:
-        - __TASK=RELEASE
-
-      # If we're not on a release branch, exit early and indicate success
-      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
-        - twine upload -u $PYPI_USERNAME -p $PYPI_PASSWORD dist/*
-
-        # Push to Docker Hub
-        - docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
-        - docker tag $TRAVIS_REPO_SLUG $TRAVIS_REPO_SLUG:$TRAVIS_BRANCH
-        - docker tag $TRAVIS_REPO_SLUG $TRAVIS_REPO_SLUG:latest
-        - docker push $TRAVIS_REPO_SLUG
-
-#      # 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
+  - yarn run travis
diff --git a/CHANGELOG b/CHANGELOG
index 09a893615222bf8f20a30be96cd9214c420ca480..da2fa89cd370df104072ab8184bbff2ed1b05d97 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,7 @@
+mkdocs-material-1.x.x (2017-xx-xx)
+
+  * Fixed deprecated calls for template variables
+
 mkdocs-material-1.5.2 (2017-04-05)
 
   * Added requirements as explicit dependencies in setup.py
diff --git a/mkdocs.yml b/mkdocs.yml
index b2cb57ef9f63e1cca99141277b6d5c5696d02a3e..b52dd74c2b15b7f6ac1eda5d07901189f020a236 100755
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -89,3 +89,8 @@ pages:
   - Release notes: release-notes.md
   - Contributing: contributing.md
   - License: license.md
+
+# Google Analytics
+google_analytics:
+  - !!python/object/apply:os.getenv ["GOOGLE_ANALYTICS_KEY"]
+  - auto
diff --git a/scripts/travis b/scripts/travis
new file mode 100755
index 0000000000000000000000000000000000000000..ef63c5c9d870ed827650e8ad5f4dab642d329d8e
--- /dev/null
+++ b/scripts/travis
@@ -0,0 +1,47 @@
+#!/bin/bash
+
+# Copyright (c) 2016-2017 Martin Donath <martin.donath@squidfunk.com>
+
+# 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.
+
+# Run build and terminate on error
+yarn run build
+[ $? -gt 0 ] && exit 1
+
+# Deploy documentation to GitHub pages
+mkdocs gh-deploy
+
+# Terminate if we're not on a release branch
+echo "$TRAVIS_BRANCH" | grep -qvE "^[0-9.]+$" && exit 0; :;
+
+# Install dependencies for release build
+pip install wheel twine
+
+# Build release and docker image
+python setup.py build sdist bdist_wheel --universal
+docker build -t $TRAVIS_REPO_SLUG .
+
+# Push release to PyPI
+twine upload -u $PYPI_USERNAME -p $PYPI_PASSWORD dist/*
+
+# Push image to Docker Hub
+docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
+docker tag $TRAVIS_REPO_SLUG $TRAVIS_REPO_SLUG:$TRAVIS_BRANCH
+docker tag $TRAVIS_REPO_SLUG $TRAVIS_REPO_SLUG:latest
+docker push $TRAVIS_REPO_SLUG