import java.util.regex.Matcher

/*
 * Copyright 2022 Google LLC
 *
 * Licensed 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
 *
 *     https://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.
 */

plugins {
    id 'com.gradle.enterprise' version '3.10.1'
}

gradleEnterprise {
    buildScan {
        termsOfServiceUrl = 'https://gradle.com/terms-of-service'
        termsOfServiceAgree = 'yes'
    }
}

include ':app-catalog:app'
include ':framework:base'
include ':framework:ui'
include ':framework:annotations'
include ':framework:processor'

// Dynamically include samples under /app-catalog/samples/ folder
def samples = []

// Find all build.gradle files under samples folder
settingsDir.traverse(nameFilter: "build.gradle") {
    def path = it.parent.substring(rootDir.path.length())
    def separator = File.separator
    if (path.contains("${separator}app-catalog${separator}samples${separator}")) {
        // convert the module path into gradle module notation
        samples.add(path.replaceAll(Matcher.quoteReplacement(separator), ":"))
    }
}

// include all available samples and store it in the global variable.
println("Included samples: $samples")
include(*samples)
gradle.ext.samples = samples
