diff --git a/Dockerfile b/Dockerfile index 558383666d907561a9cb384078fbfaa569dd12c5..a0612766ad11e4d29ab1026a1928c9382e475ec8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -25,11 +25,11 @@ MAINTAINER Martin Donath <martin.donath@squidfunk.com> WORKDIR /tmp # Copy files necessary for build -COPY material . -COPY MANIFEST.in . -COPY package.json . -COPY requirements.txt . -COPY setup.py . +COPY material material +COPY MANIFEST.in MANIFEST.in +COPY package.json package.json +COPY requirements.txt requirements.txt +COPY setup.py setup.py # Perform build and cleanup artifacts RUN \ diff --git a/scripts/travis b/scripts/travis index 036994c18a6f1a62d5884bd5ce5b8bd76d903e99..348748d6c7866c4c99cddafef3ce44a8e6ffd75c 100755 --- a/scripts/travis +++ b/scripts/travis @@ -20,9 +20,11 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS # IN THE SOFTWARE. +# Exit, if one command fails +set -e + # Run build and terminate on error -yarn run build -[ $? -gt 0 ] && exit 1 +"$(yarn bin)"/gulp build --clean --optimize --revision # Deploy documentation to GitHub pages if [ "$TRAVIS_BRANCH" == "master" -a "$TRAVIS_PULL_REQUEST" == "false" ]; then @@ -41,10 +43,23 @@ echo "$TRAVIS_BRANCH" | grep -qvE "^[0-9.]+$" && exit 0; :; # Install dependencies for release build pip install wheel twine -# Build release and docker image +# Build and install theme and Docker image python setup.py build sdist bdist_wheel --universal +python setup.py install 2>/dev/null docker build -t $TRAVIS_REPO_SLUG . +# Prepare build regression test +pushd /tmp +mkdocs new test && cd test +echo "theme: material" >> mkdocs.yml + +# Test Docker image build +docker run --rm -it -v `pwd`:/docs $TRAVIS_REPO_SLUG build + +# Clean build test +rm -rf /tmp/test +popd + # Push release to PyPI twine upload -u $PYPI_USERNAME -p $PYPI_PASSWORD dist/*