#!/usr/bin/env lucicfg
# Copyright 2020 The Flutter Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""
Configurations for the plugins repository.
"""

load("//lib/ci_yaml/ci_yaml.star", "ci_yaml")
load("//lib/common.star", "common")
load("//lib/repos.star", "repos")
load("//lib/timeout.star", "timeout")

def _setup():
    """Set default configurations for builders, and setup recipes."""
    plugins_product_tagged_config_setup()
    ci_yaml.generate("plugins", "main", None, "refs/heads/main", {}, {})

def plugins_product_tagged_config_setup():
    """Builder configures for prod tasks, which were only triggered with tag changes."""
    platform_args = {
        "linux": {
            "os": "Linux",
        },
    }
    luci.recipe(
        name = "plugins/plugins_publish",
        cipd_package = "flutter/recipe_bundles/flutter.googlesource.com/recipes",
        cipd_version = "refs/heads/main",
    )

    trigger_name = "gitiles-trigger-plugins-tagged"
    ref = "refs/tags/.+"

    # poll for any tags change
    luci.gitiles_poller(
        name = trigger_name,
        bucket = "prod",
        repo = repos.PLUGINS,
        refs = [ref],
    )

    console_view_name = "plugins_tagged"
    luci.console_view(
        name = console_view_name,
        repo = repos.PLUGINS,
        refs = [ref],
    )

    publish_recipe_name = "plugins/plugins_publish"

    # Defines builders
    common.linux_prod_builder(
        name = "Linux Publish Plugins|publish",
        recipe = publish_recipe_name,
        console_view_name = console_view_name,
        triggered_by = [trigger_name],
        execution_timeout = timeout.SHORT,
        **platform_args["linux"]
    )

plugins_config = struct(setup = _setup)
