В Java я бы использовал Paths для сравнения двух путей к файлам, чтобы убедиться, что path1 может быть дочерним по отношению к path2.
Path path1 = Paths.get("/path/to/jenkins/workspace1").normalize();
Path path2 = Paths.get("/path/to/jenkins/workspace1/some/dir").normalize();
path2.startsWith(path1);
Я не могу использовать класс Path в конвейере.Как бы вы сравнили это в groovy?
Похоже, нет другого способа, кроме как разбить две строки на списки и убедиться, что элемент i из path1 совпадает с элементом i из path2.
То, что я пытаюсь сделать, это добавить проверку к моей работе по сборке, которая проверяет, что path2 (именованная, смонтированная зависимость сборки) действительно находится внутри path1 (мой корень рабочей области).
Например, если path1 = "/ some / path / to / jenkins / workspace1" и path2 = "/ some / path / to / jenkins / workspace2 / some / dir", я должен завершить сборку какотказоустойчивый.