load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")

go_library(
    name = "workflow",
    srcs = [
        "autocreate_advisory.go",
        "collect_cve_data.go",
        "common.go",
        "downstream_check.go",
        "poll_mirror_cve.go",
        "poll_mirror_errata.go",
        "update_cve_state.go",
        "workflow.go",
    ],
    importpath = "peridot.resf.org/apollo/workflow",
    visibility = ["//visibility:public"],
    deps = [
        "//apollo/db",
        "//apollo/proto/v1:pb",
        "//apollo/rherrata",
        "//apollo/rhsecurity",
        "//apollo/rpmutils",
        "//koji",
        "//utils",
        "//vendor/github.com/gobwas/glob",
        "//vendor/github.com/jmoiron/sqlx/types",
        "//vendor/github.com/pkg/errors",
        "//vendor/github.com/sirupsen/logrus",
        "//vendor/github.com/spf13/viper",
        "//vendor/go.temporal.io/sdk/activity",
        "//vendor/go.temporal.io/sdk/client",
        "//vendor/go.temporal.io/sdk/workflow",
    ],
)

go_test(
    name = "workflow_test",
    srcs = [
        "autocreate_advisory_test.go",
        "downstream_check_test.go",
        "poll_mirror_cve_test.go",
        "poll_mirror_errata_test.go",
        "update_cve_state_test.go",
        "workflow_test.go",
    ],
    data = glob(["testdata/**"]),
    embed = [":workflow"],
    deps = [
        "//apollo/db",
        "//apollo/db/mock",
        "//apollo/proto/v1:pb",
        "//apollo/rherrata",
        "//apollo/rhsecurity",
        "//apollo/rhsecuritymock",
        "//koji",
        "//vendor/github.com/stretchr/testify/require",
        "//vendor/go.temporal.io/sdk/testsuite",
    ],
)