From e7debf81691ecc85816b2dcf1fa1d1f72720071d Mon Sep 17 00:00:00 2001 From: Andrey Belyaev Date: Thu, 3 Oct 2024 22:18:23 +0200 Subject: [PATCH] [github] IJPL-72839 Updated inspection and intention for reusable workflows GitOrigin-RevId: d12f406adcc018a1a7c203fa88a2239e4bdb5d58 --- .../plugins/github/extensions/githubYamlFileDetection.kt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/plugins/github/src/org/jetbrains/plugins/github/extensions/githubYamlFileDetection.kt b/plugins/github/src/org/jetbrains/plugins/github/extensions/githubYamlFileDetection.kt index 03731f8f4fab..f042c6d3ee6c 100644 --- a/plugins/github/src/org/jetbrains/plugins/github/extensions/githubYamlFileDetection.kt +++ b/plugins/github/src/org/jetbrains/plugins/github/extensions/githubYamlFileDetection.kt @@ -5,6 +5,7 @@ import com.intellij.openapi.util.io.FileUtilRt import com.intellij.openapi.vfs.VirtualFile import com.intellij.openapi.vfs.isFile import com.intellij.psi.PsiFile +import java.io.File fun isGithubActionsFile(psiFile: PsiFile?): Boolean { val virtualFile = psiFile?.originalFile?.virtualFile ?: return false @@ -29,8 +30,12 @@ private fun isGithubActionsActionFile(virtualFile: VirtualFile): Boolean { private fun isGithubWorkflowFile(virtualFile: VirtualFile): Boolean { val fileName = virtualFile.name + val filePath = virtualFile.path + val workflowDirIndex = filePath.indexOf("${File.separator}workflows") + val githubDirIndex = filePath.indexOf(".github${File.separator}") return virtualFile.isFile && (FileUtilRt.extensionEquals(fileName, "yml") || FileUtilRt.extensionEquals(fileName, "yaml")) - && virtualFile.parent?.name == "workflows" - && virtualFile.parent?.parent?.name == ".github" + && workflowDirIndex != -1 + && githubDirIndex != -1 + && workflowDirIndex > githubDirIndex }