# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to you under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

version: '3'
services:
  dev:
    image: jekyll/jekyll:3
    command: jekyll serve --watch --force_polling
    ports:
      - 4000:4000
    volumes:
      - .:/srv/jekyll
  build-site:
    image: jekyll/jekyll:3
    command: jekyll build
    volumes:
      - .:/srv/jekyll
  generate-javadoc:
    image: maven
    working_dir: /usr/src/calcite
    command: sh -c "mvn -DskipTests site; rm -rf site/target/apidocs site/target/testapidocs; mkdir -p site/target; mv target/site/apidocs target/site/testapidocs site/target"
    volumes:
      - ../:/usr/src/calcite
      - maven-repo:/root/.m2
volumes:
  maven-repo:

# End docker-compose.yml
