Clean the yml script
CI / Export Windows (push) Failing after 43s
CI / Export Linux (push) Failing after 1m4s
CI / Export Android (push) Failing after 55s
Test Suite / Unit Tests (GUT) (push) Failing after 39s
Test Suite / Integration Tests (push) Failing after 46s
Test Suite / Code Style Check (push) Failing after 46s
CI / Create Release (push) Has been skipped
Test Suite / Security Scan (push) Failing after 1m1s
CI / Export Windows (push) Failing after 43s
CI / Export Linux (push) Failing after 1m4s
CI / Export Android (push) Failing after 55s
Test Suite / Unit Tests (GUT) (push) Failing after 39s
Test Suite / Integration Tests (push) Failing after 46s
Test Suite / Code Style Check (push) Failing after 46s
CI / Create Release (push) Has been skipped
Test Suite / Security Scan (push) Failing after 1m1s
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
extends SceneTree
|
||||
|
||||
const SKIP_DIRS := [".git", ".godot", "addons"]
|
||||
|
||||
func _initialize() -> void:
|
||||
var errors: Array[String] = []
|
||||
_scan_dir("res://", errors)
|
||||
if errors.is_empty():
|
||||
print("Lint passed: no GDScript syntax errors found")
|
||||
quit(0)
|
||||
else:
|
||||
for e in errors:
|
||||
printerr(e)
|
||||
printerr("Lint failed: %d file(s) with syntax errors" % errors.size())
|
||||
quit(1)
|
||||
|
||||
func _scan_dir(path: String, errors: Array[String]) -> void:
|
||||
var dir := DirAccess.open(path)
|
||||
if dir == null:
|
||||
return
|
||||
dir.list_dir_begin()
|
||||
var entry := dir.get_next()
|
||||
while entry != "":
|
||||
if entry == "." or entry == "..":
|
||||
entry = dir.get_next()
|
||||
continue
|
||||
var full_path := path.path_join(entry)
|
||||
if dir.current_is_dir():
|
||||
if not SKIP_DIRS.has(entry):
|
||||
_scan_dir(full_path, errors)
|
||||
elif entry.ends_with(".gd"):
|
||||
var script := GDScript.new()
|
||||
script.source_code = FileAccess.get_file_as_string(full_path)
|
||||
if script.reload() != OK:
|
||||
errors.append("%s: syntax error" % full_path)
|
||||
entry = dir.get_next()
|
||||
Reference in New Issue
Block a user