grafana/scripts/drone/pipelines/lint_backend.star
Dave Henderson 3a8b59f5e8
chore(ci): Run golangci-lint in GitHub Actions (#88916)
* chore(ci): Run golangci-lint in GitHub Actions

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>

* chore(ci): Remove lint-backend step from Drone

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>

---------

Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
2024-06-07 12:30:31 -04:00

61 lines
1.4 KiB
Plaintext

"""
This module returns the pipeline used for linting backend code.
"""
load(
"scripts/drone/steps/lib.star",
"compile_build_cmd",
"enterprise_setup_step",
"identify_runner_step",
"lint_drone_step",
"validate_modfile_step",
"validate_openapi_spec_step",
"wire_install_step",
)
load(
"scripts/drone/utils/utils.star",
"pipeline",
)
def lint_backend_pipeline(trigger, ver_mode):
"""Generates the pipelines used linting backend code.
Args:
trigger: controls which events can trigger the pipeline execution.
ver_mode: used in the naming of the pipeline.
Returns:
Drone pipeline.
"""
environment = {"EDITION": "oss"}
wire_step = wire_install_step()
wire_step.update({"depends_on": []})
init_steps = [
identify_runner_step(),
compile_build_cmd(),
]
if ver_mode == "pr":
# In pull requests, attempt to clone grafana enterprise.
init_steps.append(enterprise_setup_step())
init_steps.append(wire_step)
test_steps = [
validate_modfile_step(),
validate_openapi_spec_step(),
]
if ver_mode == "main":
test_steps.append(lint_drone_step())
return pipeline(
name = "{}-lint-backend".format(ver_mode),
trigger = trigger,
services = [],
steps = init_steps + test_steps,
environment = environment,
)