github.com/munnerz/test-infra@v0.0.0-20190108210205-ce3d181dc989/prow/cmd/peribolos/BUILD.bazel (about) 1 load("//def:configmap.bzl", "k8s_configmap") 2 load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library", "go_test") 3 load("@io_bazel_rules_k8s//k8s:object.bzl", "k8s_object") 4 load("@io_bazel_rules_k8s//k8s:objects.bzl", "k8s_objects") 5 load("//prow:def.bzl", "prow_image") 6 7 go_library( 8 name = "go_default_library", 9 srcs = ["main.go"], 10 importpath = "k8s.io/test-infra/prow/cmd/peribolos", 11 visibility = ["//visibility:private"], 12 deps = [ 13 "//prow/config:go_default_library", 14 "//prow/config/org:go_default_library", 15 "//prow/config/secret:go_default_library", 16 "//prow/flagutil:go_default_library", 17 "//prow/github:go_default_library", 18 "//prow/logrusutil:go_default_library", 19 "//vendor/github.com/sirupsen/logrus:go_default_library", 20 "//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library", 21 "//vendor/sigs.k8s.io/yaml:go_default_library", 22 ], 23 ) 24 25 go_binary( 26 name = "peribolos", 27 embed = [":go_default_library"], 28 pure = "on", 29 visibility = ["//visibility:public"], 30 ) 31 32 filegroup( 33 name = "package-srcs", 34 srcs = glob(["**"]), 35 tags = ["automanaged"], 36 visibility = ["//visibility:private"], 37 ) 38 39 filegroup( 40 name = "all-srcs", 41 srcs = [":package-srcs"], 42 tags = ["automanaged"], 43 visibility = ["//visibility:public"], 44 ) 45 46 go_test( 47 name = "go_default_test", 48 srcs = ["main_test.go"], 49 embed = [":go_default_library"], 50 deps = [ 51 "//prow/config/org:go_default_library", 52 "//prow/flagutil:go_default_library", 53 "//prow/github:go_default_library", 54 "//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library", 55 "//vendor/sigs.k8s.io/yaml:go_default_library", 56 ], 57 ) 58 59 # Usage: 60 # bazel run :e2e-dump -- --github-token-path ~/whatever # --dump=whatever etc 61 go_binary( 62 name = "e2e", 63 args = [ 64 "--tokens=0", 65 ], 66 data = [":test-config.yaml"], 67 embed = [":go_default_library"], 68 ) 69 70 go_binary( 71 name = "e2e-dump", 72 args = [ 73 "--tokens=0", 74 "--dump=fejtaverse", 75 ], 76 embed = [":go_default_library"], 77 ) 78 79 go_binary( 80 name = "e2e-change", 81 args = [ 82 "--tokens=0", 83 "--config-path=prow/cmd/peribolos/test-config.yaml", 84 "--min-admins=2", 85 "--fix-org", 86 "--fix-org-members", 87 "--fix-teams", 88 "--fix-team-members", 89 ], 90 data = [":test-config.yaml"], 91 embed = [":go_default_library"], 92 ) 93 94 # Usage: 95 # bazel run :dev-job.{create,delete,describe} 96 CLUSTER = "gke_fejta-prod_us-central1-f_erick" # TODO(fejta): fix 97 98 k8s_object( 99 name = "peribolos-job", 100 cluster = CLUSTER, 101 image_chroot = "{STABLE_DOCKER_REPO}", 102 images = {"gcr.io/k8s-testimages/peribolos:latest": ":image"}, 103 kind = "Job", 104 template = ":dev.yaml", 105 ) 106 107 k8s_configmap( 108 name = "peribolos-test-config", 109 cluster = CLUSTER, 110 data = { 111 "config.yaml": ":test-config.yaml", 112 }, 113 ) 114 115 k8s_objects( 116 name = "dev", 117 objects = [ 118 ":peribolos-job", 119 ":peribolos-test-config", 120 ], 121 ) 122 123 prow_image( 124 name = "image", 125 base = "@alpine-base//image", 126 visibility = ["//visibility:public"], 127 )