package main import ( "fmt" "log" "gitflame.ru/CI_VLDR/gitlabcivalidator" ) func main() { // Корректный (упрощённый) YAML validYAML := ` stages: - build - test jobs: build_job: stage: build script: - echo "Building..." test_job: stage: test dependencies: ["build_job"] script: - echo "Testing..." ` // Тип, ссылка и текст ошибки, показатели где нахоидтся ошибка... // Некорректный YAML — отсутствует видимая задача, есть только скрытая invalidYAML := ` stages: - build - test holy_cow: - ass asdasd: - sasafafasf asdasdd: - asd jobs: build_job: stage: build2 script: - echo "Building..." needs: ["test_job2"] test_job2: stage: test needs: ["build_job", "test_job2", "test_job3", "test_job4"] ` fmt.Println("=== Пример 1: Корректный YAML ===") err := gitlabcivalidator.ValidateGitLabCIFile(validYAML, gitlabcivalidator.ValidationOptions{}) if err != nil { log.Fatalf("Ожидали, что ошибок не будет, но возникли: %v\n", err) } else { fmt.Println("Валидация успешна! Ошибок не найдено.") } fmt.Println("\n=== Пример 2: Некорректный YAML ===") err2 := gitlabcivalidator.ValidateGitLabCIFile(invalidYAML, gitlabcivalidator.ValidationOptions{}) if err2 != nil { fmt.Println("Ошибка валидации (ожидаемо для данного файла):") fmt.Println(err2.Error()) } else { log.Fatal("Ожидали ошибку, но её не возникло") } }