# 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.

site:
  title: Apache Hop
  url: https://hop.apache.org
  start_page: manual::index.adoc
  keys:
    google_analytics: 'UA-151580460-1'

content:
  sources:
    - url: ../
      branches:
        - HEAD
      start_path: /docs/hop-user-manual/
    - url: ../
      branches: HEAD
      start_path: /docs/hop-tech-manual/
    - url: ../
      branches: HEAD
      start_path: /docs/hop-dev-manual/

ui:
  bundle:
    url: https://gitlab.com/antora/antora-ui-default/-/jobs/artifacts/master/raw/build/ui-bundle.zip?job=bundle-stable

urls:
  redirect_facility: disabled

runtime:
  fetch: true

output:
  dir: ./content
