diff --git a/src/Terrabuild.Common.Tests/IO.fs b/src/Terrabuild.Common.Tests/IO.fs index e43af8db..f67062b4 100644 --- a/src/Terrabuild.Common.Tests/IO.fs +++ b/src/Terrabuild.Common.Tests/IO.fs @@ -2,6 +2,7 @@ module Terrabuild.Tests.IO open FsUnit open NUnit.Framework open System.IO +open Microsoft.Extensions.FileSystemGlobbing [] let ``Detect new files``() = @@ -15,3 +16,14 @@ let ``Detect new files``() = diff |> should equal expected + + +[] +let ``Matcher``() = + let matcher = Matcher() + matcher.AddInclude("**/*").AddExcludePatterns(["**/node_modules"; "**/.nuxt"; "**/.vscode"]) + + matcher.Match(".vscode").HasMatches |> should equal false + matcher.Match("node_modules").HasMatches |> should equal false + matcher.Match("toto/node_modules").HasMatches |> should equal false + matcher.Match("toto/tagada.txt").HasMatches |> should equal true diff --git a/src/Terrabuild/Core/Configuration.fs b/src/Terrabuild/Core/Configuration.fs index edfeefea..9d8a897b 100644 --- a/src/Terrabuild/Core/Configuration.fs +++ b/src/Terrabuild/Core/Configuration.fs @@ -455,6 +455,7 @@ let read (options: ConfigOptions.Options) = let projectFiles = let matcher = Matcher() matcher.AddInclude("**/*").AddExcludePatterns(workspaceConfig.Workspace.Ignores) + printfn $"{workspaceConfig.Workspace.Ignores}" let rec findDependencies isSubFolder dir = seq { @@ -472,11 +473,12 @@ let read (options: ConfigOptions.Options) = match projectFile with | FS.File file -> file |> FS.parentDirectory |> FS.relativePath options.Workspace - | _ -> - for subdir in dir |> IO.enumerateDirs do - let relativeDir = subdir |> FS.relativePath options.Workspace - if matcher.Match(relativeDir).HasMatches then + | FS.Directory dir -> + let relativeDir = dir |> FS.relativePath options.Workspace + if matcher.Match(relativeDir).HasMatches then + for subdir in dir |> IO.enumerateDirs do yield! findDependencies true subdir + | _ -> () } findDependencies false options.Workspace diff --git a/tests/cluster-layers/results/terrabuild-debug.build-graph.json b/tests/cluster-layers/results/terrabuild-debug.build-graph.json index 4e89a3cb..378db221 100644 --- a/tests/cluster-layers/results/terrabuild-debug.build-graph.json +++ b/tests/cluster-layers/results/terrabuild-debug.build-graph.json @@ -1,494 +1,4 @@ { - "nodes": { - "A:build": { - "id": "A:build", - "label": "build A", - "project": "A", - "target": "build", - "configurationTarget": { - "hash": "B942B51B15FA8E4F694D5CE107303EC8D5E9EED56CFF35EBC02DC4C8C195B882", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building project" - ] - } - ] - }, - { - "hash": "49C77F0CC375A791BF822BAA5F2D11EA68FC0FE0C628ACD1863BAF7ED6649BEC", - "container": null, - "containerVariables": [], - "extension": "@dotnet", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - }, - "dependencies": [], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "projectHash": "52081ACBA3AA68292E895F52D30A4916AE5F3742E44A04C119BE8F0A52DE570F", - "targetHash": "8B6A1EBD383B29E825327C536F4B0F82DB0FE2D3A6E42A2C413497001F4B3F50", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@shell echo", - "command": "echo", - "arguments": "building project" - }, - { - "container": null, - "containerVariables": [], - "metaCommand": "@dotnet build", - "command": "dotnet", - "arguments": "build --no-dependencies --configuration Debug " - } - ], - "cache": 0, - "isLeaf": true - }, - "B:build": { - "id": "B:build", - "label": "build B", - "project": "B", - "target": "build", - "configurationTarget": { - "hash": "B942B51B15FA8E4F694D5CE107303EC8D5E9EED56CFF35EBC02DC4C8C195B882", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building project" - ] - } - ] - }, - { - "hash": "49C77F0CC375A791BF822BAA5F2D11EA68FC0FE0C628ACD1863BAF7ED6649BEC", - "container": null, - "containerVariables": [], - "extension": "@dotnet", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - }, - "dependencies": [], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "projectHash": "C20F11FEA849AD53AA0FDD982A60BEB1143A591B8E3B0CDB16C1CE8D39392772", - "targetHash": "B727E5B0B25FB83A6DC4667861A728FE1C81CC9BB6F36694832E518B24D7C86A", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@shell echo", - "command": "echo", - "arguments": "building project" - }, - { - "container": null, - "containerVariables": [], - "metaCommand": "@dotnet build", - "command": "dotnet", - "arguments": "build --no-dependencies --configuration Debug " - } - ], - "cache": 0, - "isLeaf": true - }, - "C:build": { - "id": "C:build", - "label": "build C", - "project": "C", - "target": "build", - "configurationTarget": { - "hash": "7CBFCD2D010F460CED07F894949A860B35492555250E183E1BEB1C76EFB8181B", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "dist/" - ], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building project" - ] - } - ] - }, - { - "hash": "8020766CA6489DE8B88803B5BE7CBC336B9BB27FEE455F2AA4A96306A85EB557", - "container": null, - "containerVariables": [], - "extension": "@npm", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - }, - "dependencies": [ - "A:build", - "B:build" - ], - "outputs": [ - "dist/" - ], - "projectHash": "3295C61A42D31221DCB491823FD21EF9A8921B5375720F3EF8DA74ED8F4BF1EC", - "targetHash": "CFC95976B43B2742FF6C9AAFA7D28914C773D58F6815A18DBE3E8212A419BCF0", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@shell echo", - "command": "echo", - "arguments": "building project" - }, - { - "container": null, - "containerVariables": [], - "metaCommand": "@npm build", - "command": "npm", - "arguments": "ci" - }, - { - "container": null, - "containerVariables": [], - "metaCommand": "@npm build", - "command": "npm", - "arguments": "run build -- " - } - ], - "cache": 0, - "isLeaf": true - }, - "D:build": { - "id": "D:build", - "label": "build D", - "project": "D", - "target": "build", - "configurationTarget": { - "hash": "6E8C12A2191A68C0FB487801C6B0DE041AE5E838E618AC904F835885E713C1D6", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "49C77F0CC375A791BF822BAA5F2D11EA68FC0FE0C628ACD1863BAF7ED6649BEC", - "container": null, - "containerVariables": [], - "extension": "@dotnet", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - }, - "dependencies": [ - "C:build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "projectHash": "C61CB06CD3C39E1F35C4DC1774DE930DA6851583D98A4F13969456FB388FCD5C", - "targetHash": "8C82CB8976D853147EAE83624EA862924E3E826C51AEB63A750154F8C754D0B8", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@dotnet build", - "command": "dotnet", - "arguments": "build --no-dependencies --configuration Debug " - } - ], - "cache": 0, - "isLeaf": true - }, - "E:build": { - "id": "E:build", - "label": "build E", - "project": "E", - "target": "build", - "configurationTarget": { - "hash": "6E8C12A2191A68C0FB487801C6B0DE041AE5E838E618AC904F835885E713C1D6", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "49C77F0CC375A791BF822BAA5F2D11EA68FC0FE0C628ACD1863BAF7ED6649BEC", - "container": null, - "containerVariables": [], - "extension": "@dotnet", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - }, - "dependencies": [ - "C:build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "projectHash": "E1B52088E5FFFCCA0576241731FD4E4F7851EFE8522816F30BB7D8187ABF1034", - "targetHash": "2C8DEE9E27891C796FCF3AAC89FA92D98615542153C6C5FC441FF0AC786EC9AE", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@dotnet build", - "command": "dotnet", - "arguments": "build --no-dependencies --configuration Debug " - } - ], - "cache": 0, - "isLeaf": true - }, - "F:build": { - "id": "F:build", - "label": "build F", - "project": "F", - "target": "build", - "configurationTarget": { - "hash": "3E35FE4CDBC58941D9C1FD7D9ACAC561D8397441268E863F8BFDD72EC9AE1E1A", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "dist/" - ], - "cache": null, - "operations": [ - { - "hash": "8020766CA6489DE8B88803B5BE7CBC336B9BB27FEE455F2AA4A96306A85EB557", - "container": null, - "containerVariables": [], - "extension": "@npm", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - }, - "dependencies": [ - "D:build", - "E:build" - ], - "outputs": [ - "dist/" - ], - "projectHash": "7DF5934D6DBA702F44818A40C3AB95F17E489524DFD3CC6AFC9B9D0EF5C83AE0", - "targetHash": "F791A7A765E7EC7287131D29D0DD4322164DBCFC9CEB6C4E8C8E97114CE42326", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@npm build", - "command": "npm", - "arguments": "ci" - }, - { - "container": null, - "containerVariables": [], - "metaCommand": "@npm build", - "command": "npm", - "arguments": "run build -- " - } - ], - "cache": 0, - "isLeaf": true - }, - "G:build": { - "id": "G:build", - "label": "build G", - "project": "G", - "target": "build", - "configurationTarget": { - "hash": "3E35FE4CDBC58941D9C1FD7D9ACAC561D8397441268E863F8BFDD72EC9AE1E1A", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "dist/" - ], - "cache": null, - "operations": [ - { - "hash": "8020766CA6489DE8B88803B5BE7CBC336B9BB27FEE455F2AA4A96306A85EB557", - "container": null, - "containerVariables": [], - "extension": "@npm", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - }, - "dependencies": [ - "C:build" - ], - "outputs": [ - "dist/" - ], - "projectHash": "FE7CDDB9279D6FFF57CCA9D71303D9D954C2B90E93EEE27097689FBF8AA676AD", - "targetHash": "0EA45D898012A1213D8236FED768A29C31ED745E12A0115428DA3CFE3FC00955", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@npm build", - "command": "npm", - "arguments": "ci" - }, - { - "container": null, - "containerVariables": [], - "metaCommand": "@npm build", - "command": "npm", - "arguments": "run build -- " - } - ], - "cache": 0, - "isLeaf": true - } - }, - "rootNodes": [ - "A:build", - "B:build", - "C:build", - "D:build", - "E:build", - "F:build", - "G:build" - ] + "nodes": {}, + "rootNodes": [] } \ No newline at end of file diff --git a/tests/cluster-layers/results/terrabuild-debug.build-graph.mermaid b/tests/cluster-layers/results/terrabuild-debug.build-graph.mermaid index 62710855..0f01ddd7 100644 --- a/tests/cluster-layers/results/terrabuild-debug.build-graph.mermaid +++ b/tests/cluster-layers/results/terrabuild-debug.build-graph.mermaid @@ -1,32 +1,4 @@ flowchart TD classDef build stroke:red,stroke-width:3px classDef restore stroke:orange,stroke-width:3px -classDef ignore stroke:black,stroke-width:3px -A:build("A -build ") -B:build("B -build ") -C:build("C -build ") -D:build("D -build ") -E:build("E -build ") -F:build("F -build ") -G:build("G -build ") -class A:build ignore -class B:build ignore -C:build --> A:build -C:build --> B:build -class C:build ignore -D:build --> C:build -class D:build ignore -E:build --> C:build -class E:build ignore -F:build --> D:build -F:build --> E:build -class F:build ignore -G:build --> C:build -class G:build ignore \ No newline at end of file +classDef ignore stroke:black,stroke-width:3px \ No newline at end of file diff --git a/tests/cluster-layers/results/terrabuild-debug.config.json b/tests/cluster-layers/results/terrabuild-debug.config.json index dcb12980..9b396c0e 100644 --- a/tests/cluster-layers/results/terrabuild-debug.config.json +++ b/tests/cluster-layers/results/terrabuild-debug.config.json @@ -1,14 +1,6 @@ { "space": null, - "selectedProjects": [ - "A", - "B", - "C", - "D", - "E", - "F", - "G" - ], + "selectedProjects": [], "targets": { "build": { "dependsOn": [ @@ -20,348 +12,5 @@ ] } }, - "projects": { - "A": { - "id": "A", - "hash": "52081ACBA3AA68292E895F52D30A4916AE5F3742E44A04C119BE8F0A52DE570F", - "dependencies": [], - "files": [ - "A.csproj", - "packages.lock.json" - ], - "targets": { - "build": { - "hash": "B942B51B15FA8E4F694D5CE107303EC8D5E9EED56CFF35EBC02DC4C8C195B882", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building project" - ] - } - ] - }, - { - "hash": "49C77F0CC375A791BF822BAA5F2D11EA68FC0FE0C628ACD1863BAF7ED6649BEC", - "container": null, - "containerVariables": [], - "extension": "@dotnet", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - } - }, - "labels": [] - }, - "B": { - "id": "B", - "hash": "C20F11FEA849AD53AA0FDD982A60BEB1143A591B8E3B0CDB16C1CE8D39392772", - "dependencies": [], - "files": [ - "B.csproj", - "packages.lock.json" - ], - "targets": { - "build": { - "hash": "B942B51B15FA8E4F694D5CE107303EC8D5E9EED56CFF35EBC02DC4C8C195B882", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building project" - ] - } - ] - }, - { - "hash": "49C77F0CC375A791BF822BAA5F2D11EA68FC0FE0C628ACD1863BAF7ED6649BEC", - "container": null, - "containerVariables": [], - "extension": "@dotnet", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - } - }, - "labels": [] - }, - "C": { - "id": "C", - "hash": "3295C61A42D31221DCB491823FD21EF9A8921B5375720F3EF8DA74ED8F4BF1EC", - "dependencies": [ - "A", - "B" - ], - "files": [ - "package-lock.json", - "package.json" - ], - "targets": { - "build": { - "hash": "7CBFCD2D010F460CED07F894949A860B35492555250E183E1BEB1C76EFB8181B", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "dist/" - ], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building project" - ] - } - ] - }, - { - "hash": "8020766CA6489DE8B88803B5BE7CBC336B9BB27FEE455F2AA4A96306A85EB557", - "container": null, - "containerVariables": [], - "extension": "@npm", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - } - }, - "labels": [] - }, - "D": { - "id": "D", - "hash": "C61CB06CD3C39E1F35C4DC1774DE930DA6851583D98A4F13969456FB388FCD5C", - "dependencies": [ - "C" - ], - "files": [ - "D.csproj", - "packages.lock.json" - ], - "targets": { - "build": { - "hash": "6E8C12A2191A68C0FB487801C6B0DE041AE5E838E618AC904F835885E713C1D6", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "49C77F0CC375A791BF822BAA5F2D11EA68FC0FE0C628ACD1863BAF7ED6649BEC", - "container": null, - "containerVariables": [], - "extension": "@dotnet", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - } - }, - "labels": [] - }, - "E": { - "id": "E", - "hash": "E1B52088E5FFFCCA0576241731FD4E4F7851EFE8522816F30BB7D8187ABF1034", - "dependencies": [ - "C" - ], - "files": [ - "E.csproj", - "packages.lock.json" - ], - "targets": { - "build": { - "hash": "6E8C12A2191A68C0FB487801C6B0DE041AE5E838E618AC904F835885E713C1D6", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "49C77F0CC375A791BF822BAA5F2D11EA68FC0FE0C628ACD1863BAF7ED6649BEC", - "container": null, - "containerVariables": [], - "extension": "@dotnet", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - } - }, - "labels": [] - }, - "F": { - "id": "F", - "hash": "7DF5934D6DBA702F44818A40C3AB95F17E489524DFD3CC6AFC9B9D0EF5C83AE0", - "dependencies": [ - "D", - "E" - ], - "files": [ - "package-lock.json", - "package.json" - ], - "targets": { - "build": { - "hash": "3E35FE4CDBC58941D9C1FD7D9ACAC561D8397441268E863F8BFDD72EC9AE1E1A", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "dist/" - ], - "cache": null, - "operations": [ - { - "hash": "8020766CA6489DE8B88803B5BE7CBC336B9BB27FEE455F2AA4A96306A85EB557", - "container": null, - "containerVariables": [], - "extension": "@npm", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - } - }, - "labels": [] - }, - "G": { - "id": "G", - "hash": "FE7CDDB9279D6FFF57CCA9D71303D9D954C2B90E93EEE27097689FBF8AA676AD", - "dependencies": [ - "C" - ], - "files": [ - "package-lock.json", - "package.json" - ], - "targets": { - "build": { - "hash": "3E35FE4CDBC58941D9C1FD7D9ACAC561D8397441268E863F8BFDD72EC9AE1E1A", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "dist/" - ], - "cache": null, - "operations": [ - { - "hash": "8020766CA6489DE8B88803B5BE7CBC336B9BB27FEE455F2AA4A96306A85EB557", - "container": null, - "containerVariables": [], - "extension": "@npm", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - } - }, - "labels": [] - } - } + "projects": {} } \ No newline at end of file diff --git a/tests/multirefs/results/terrabuild-debug.build-graph.json b/tests/multirefs/results/terrabuild-debug.build-graph.json index fa5def81..378db221 100644 --- a/tests/multirefs/results/terrabuild-debug.build-graph.json +++ b/tests/multirefs/results/terrabuild-debug.build-graph.json @@ -1,161 +1,4 @@ { - "nodes": { - "A:build": { - "id": "A:build", - "label": "build A", - "project": "A", - "target": "build", - "configurationTarget": { - "hash": "8B56DAA76BB451252D58A9AFF5D2E5A77D0568D8681204549E53A422C9FBDBF0", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building A" - ] - } - ] - } - ] - }, - "dependencies": [ - "B:build", - "C:build" - ], - "outputs": [], - "projectHash": "765E269DCF725F998FEAF36185644037E2620A1D99ED0634F9D88098FD046B54", - "targetHash": "807EE1205C966EED62BDB85F024501CB4EDF3A0BCA57A0E6A977FAD86BE00B6A", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@shell echo", - "command": "echo", - "arguments": "building A" - } - ], - "cache": 0, - "isLeaf": true - }, - "B:build": { - "id": "B:build", - "label": "build B", - "project": "B", - "target": "build", - "configurationTarget": { - "hash": "8B56DAA76BB451252D58A9AFF5D2E5A77D0568D8681204549E53A422C9FBDBF0", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building B" - ] - } - ] - } - ] - }, - "dependencies": [ - "C:build" - ], - "outputs": [], - "projectHash": "4B3D703A03868D9124E4DF7F60CA5BE420D0A4C0188A9FE46C87F8A8C4E077DC", - "targetHash": "7C57FA8BFDE47371CEBAAB7F85D092796022D57DAC9A1472F3A820A0DB912E12", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@shell echo", - "command": "echo", - "arguments": "building B" - } - ], - "cache": 0, - "isLeaf": true - }, - "C:build": { - "id": "C:build", - "label": "build C", - "project": "C", - "target": "build", - "configurationTarget": { - "hash": "8B56DAA76BB451252D58A9AFF5D2E5A77D0568D8681204549E53A422C9FBDBF0", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building C" - ] - } - ] - } - ] - }, - "dependencies": [], - "outputs": [], - "projectHash": "286D4F1687911376819B5BF9CB07BD4B7DCF72844399A26EB2235596F5D65ABB", - "targetHash": "90669FCA8002A3BBB52B8F178D378062C5DE396B1C41A397BB79769377E8AAB0", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@shell echo", - "command": "echo", - "arguments": "building C" - } - ], - "cache": 0, - "isLeaf": true - } - }, - "rootNodes": [ - "A:build", - "B:build", - "C:build" - ] + "nodes": {}, + "rootNodes": [] } \ No newline at end of file diff --git a/tests/multirefs/results/terrabuild-debug.build-graph.mermaid b/tests/multirefs/results/terrabuild-debug.build-graph.mermaid index a0841498..0f01ddd7 100644 --- a/tests/multirefs/results/terrabuild-debug.build-graph.mermaid +++ b/tests/multirefs/results/terrabuild-debug.build-graph.mermaid @@ -1,16 +1,4 @@ flowchart TD classDef build stroke:red,stroke-width:3px classDef restore stroke:orange,stroke-width:3px -classDef ignore stroke:black,stroke-width:3px -A:build("A -build ") -B:build("B -build ") -C:build("C -build ") -A:build --> B:build -A:build --> C:build -class A:build ignore -B:build --> C:build -class B:build ignore -class C:build ignore \ No newline at end of file +classDef ignore stroke:black,stroke-width:3px \ No newline at end of file diff --git a/tests/multirefs/results/terrabuild-debug.config.json b/tests/multirefs/results/terrabuild-debug.config.json index c34c6a70..d4ffa9fc 100644 --- a/tests/multirefs/results/terrabuild-debug.config.json +++ b/tests/multirefs/results/terrabuild-debug.config.json @@ -1,10 +1,6 @@ { "space": null, - "selectedProjects": [ - "A", - "B", - "C" - ], + "selectedProjects": [], "targets": { "build": { "dependsOn": [ @@ -44,122 +40,5 @@ ] } }, - "projects": { - "A": { - "id": "A", - "hash": "765E269DCF725F998FEAF36185644037E2620A1D99ED0634F9D88098FD046B54", - "dependencies": [ - "B", - "C" - ], - "files": [], - "targets": { - "build": { - "hash": "8B56DAA76BB451252D58A9AFF5D2E5A77D0568D8681204549E53A422C9FBDBF0", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building A" - ] - } - ] - } - ] - } - }, - "labels": [] - }, - "B": { - "id": "B", - "hash": "4B3D703A03868D9124E4DF7F60CA5BE420D0A4C0188A9FE46C87F8A8C4E077DC", - "dependencies": [ - "C" - ], - "files": [], - "targets": { - "build": { - "hash": "8B56DAA76BB451252D58A9AFF5D2E5A77D0568D8681204549E53A422C9FBDBF0", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building B" - ] - } - ] - } - ] - } - }, - "labels": [] - }, - "C": { - "id": "C", - "hash": "286D4F1687911376819B5BF9CB07BD4B7DCF72844399A26EB2235596F5D65ABB", - "dependencies": [], - "files": [], - "targets": { - "build": { - "hash": "8B56DAA76BB451252D58A9AFF5D2E5A77D0568D8681204549E53A422C9FBDBF0", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building C" - ] - } - ] - } - ] - } - }, - "labels": [] - } - } + "projects": {} } \ No newline at end of file diff --git a/tests/simple/results/terrabuild-debug.build-graph.json b/tests/simple/results/terrabuild-debug.build-graph.json index 40bd5e47..378db221 100644 --- a/tests/simple/results/terrabuild-debug.build-graph.json +++ b/tests/simple/results/terrabuild-debug.build-graph.json @@ -1,520 +1,4 @@ { - "nodes": { - "deployments/terraform-deploy:build": { - "id": "deployments/terraform-deploy:build", - "label": "build deployments/terraform-deploy", - "project": "deployments/terraform-deploy", - "target": "build", - "configurationTarget": { - "hash": "FD4E492BBC14063F951BD573395F7044BB64448F0CCA60851019067618B27C70", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "*.planfile" - ], - "cache": null, - "operations": [ - { - "hash": "8BA1A0F5EC354F7CA3A6E46BAD0B652F6767230BC5323A1AB1841ED9EF7B0AC2", - "container": null, - "containerVariables": [], - "extension": "@terraform", - "command": "plan", - "script": {}, - "context": [ - "map", - { - "variables": [ - "map", - { - "dotnet_app_version": [ - "string", - "7AFACF3AFB85FF8AD7433C5AA8FFAD5C4BF62333D184CD03DE62984692F3BBCC" - ], - "npm_app_version": [ - "string", - "84DFD1B132F2D433231EF2345DB2CF32D7D3867BB5C1795B3DCFE0F0304A7353" - ] - } - ], - "workspace": [ - "string", - "default" - ] - } - ] - } - ] - }, - "dependencies": [ - "projects/dotnet-app:build", - "projects/npm-app:build" - ], - "outputs": [ - "*.planfile" - ], - "projectHash": "9FA318E272735D841D292D7D78A58E7AF5BDFAF96DDD745761807419308C8BC5", - "targetHash": "5FECAE3D3D34E9893748175B100279E8FDED03C090FA30A352C9A5C1CFBFBA6C", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@terraform plan", - "command": "terraform", - "arguments": "init" - }, - { - "container": null, - "containerVariables": [], - "metaCommand": "@terraform plan", - "command": "terraform", - "arguments": "workspace select default" - }, - { - "container": null, - "containerVariables": [], - "metaCommand": "@terraform plan", - "command": "terraform", - "arguments": "plan -out=terrabuild.planfile -var=\u0022dotnet_app_version=7AFACF3AFB85FF8AD7433C5AA8FFAD5C4BF62333D184CD03DE62984692F3BBCC\u0022 -var=\u0022npm_app_version=84DFD1B132F2D433231EF2345DB2CF32D7D3867BB5C1795B3DCFE0F0304A7353\u0022" - } - ], - "cache": 0, - "isLeaf": true - }, - "libraries/dotnet-lib:build": { - "id": "libraries/dotnet-lib:build", - "label": "build libraries/dotnet-lib", - "project": "libraries/dotnet-lib", - "target": "build", - "configurationTarget": { - "hash": "A649F97242CEFE0737701431018990998E0849E9CB990AB8B9C0B1CA39FD9C6F", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "F3D3F187F94C685E6C8F336F181B75DAE61F04FFE23AF4E7F5B858CAA1D5DFC6", - "container": null, - "containerVariables": [], - "extension": "@dotnet", - "command": "build", - "script": {}, - "context": [ - "map", - { - "configuration": [ - "string", - "Debug" - ] - } - ] - } - ] - }, - "dependencies": [], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "projectHash": "D40B341C32470C5A405E452ACD05D8D0F0A82650915F0DF14C697EACA0759F33", - "targetHash": "72A5E853C9554DDB8D62428E826D04BB30D383D78D972553C21BF667EF20C71B", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@dotnet build", - "command": "dotnet", - "arguments": "build --no-dependencies --configuration Debug " - } - ], - "cache": 0, - "isLeaf": true - }, - "libraries/npm-lib:build": { - "id": "libraries/npm-lib:build", - "label": "build libraries/npm-lib", - "project": "libraries/npm-lib", - "target": "build", - "configurationTarget": { - "hash": "6FF9DA1627A7C747024ACB388F9EDE0C888DB6279C1741C21CE10925AC7B8271", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "dist/" - ], - "cache": null, - "operations": [ - { - "hash": "D9D320BB6A8CAFCC2A18FEC98A30C89D0D1526D887C5A7626CBF0E8E066A4AE0", - "container": "node:20", - "containerVariables": [], - "extension": "npmext", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - }, - "dependencies": [], - "outputs": [ - "dist/" - ], - "projectHash": "813635EFA9D98FB042EF8A761A4433B34B95BA40E1D1231B79CBDC4D29E21AF6", - "targetHash": "DFB9E748B9E41C783059F0629CBE81D0348FBA319600D20BA0496D318CC9A031", - "operations": [ - { - "container": "node:20", - "containerVariables": [], - "metaCommand": "npmext build", - "command": "npm", - "arguments": "ci" - }, - { - "container": "node:20", - "containerVariables": [], - "metaCommand": "npmext build", - "command": "npm", - "arguments": "run build -- " - } - ], - "cache": 0, - "isLeaf": true - }, - "libraries/shell-lib:build": { - "id": "libraries/shell-lib:build", - "label": "build libraries/shell-lib", - "project": "libraries/shell-lib", - "target": "build", - "configurationTarget": { - "hash": "8B56DAA76BB451252D58A9AFF5D2E5A77D0568D8681204549E53A422C9FBDBF0", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building library1" - ] - } - ] - } - ] - }, - "dependencies": [], - "outputs": [], - "projectHash": "90DBBB67F0EB0EEBCC7BEB1929682796805120FF8AE0C26C7FF742190F9A469A", - "targetHash": "9945949FD73F21E4DA4B2EE81CE33F504699F23D99742A6253BBBD01024C4FC2", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@shell echo", - "command": "echo", - "arguments": "building library1" - } - ], - "cache": 0, - "isLeaf": true - }, - "projects/dotnet-app:build": { - "id": "projects/dotnet-app:build", - "label": "build projects/dotnet-app", - "project": "projects/dotnet-app", - "target": "build", - "configurationTarget": { - "hash": "A649F97242CEFE0737701431018990998E0849E9CB990AB8B9C0B1CA39FD9C6F", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "F3D3F187F94C685E6C8F336F181B75DAE61F04FFE23AF4E7F5B858CAA1D5DFC6", - "container": null, - "containerVariables": [], - "extension": "@dotnet", - "command": "build", - "script": {}, - "context": [ - "map", - { - "configuration": [ - "string", - "Debug" - ] - } - ] - } - ] - }, - "dependencies": [ - "libraries/dotnet-lib:build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "projectHash": "7AFACF3AFB85FF8AD7433C5AA8FFAD5C4BF62333D184CD03DE62984692F3BBCC", - "targetHash": "73C1D1C43B92EA7D473975B9D91CC0F5E85ECAE3613315FF3CB7DEBE28CDE1A4", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@dotnet build", - "command": "dotnet", - "arguments": "build --no-dependencies --configuration Debug " - } - ], - "cache": 0, - "isLeaf": true - }, - "projects/make-app:build": { - "id": "projects/make-app:build", - "label": "build projects/make-app", - "project": "projects/make-app", - "target": "build", - "configurationTarget": { - "hash": "D75E1B5F09A68010CF5A342EF04AB73E0FDE53F31E8A83B5DF5FF248DE965D24", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "dist" - ], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building project1" - ] - } - ] - }, - { - "hash": "60078A7AEF8007B4B5DC060CE7889241884A0FDE6A440EB5732A3FD31ED2D857", - "container": null, - "containerVariables": [], - "extension": "@make", - "command": "build", - "script": {}, - "context": [ - "map", - { - "variables": [ - "map", - { - "secret": [ - "string", - "tagada" - ] - } - ] - } - ] - } - ] - }, - "dependencies": [ - "libraries/shell-lib:build" - ], - "outputs": [ - "dist" - ], - "projectHash": "A5BD059BA569E96AFE6AEC3BA05C405B454A3483F1A702D11CA978F318516307", - "targetHash": "37FDB0C457BA2EDD198F090B99C96A27040E39C8AD8CBBD50739E271D1BC05F0", - "operations": [ - { - "container": null, - "containerVariables": [], - "metaCommand": "@shell echo", - "command": "echo", - "arguments": "building project1" - }, - { - "container": null, - "containerVariables": [], - "metaCommand": "@make build", - "command": "make", - "arguments": "build secret=\u0022tagada\u0022" - } - ], - "cache": 0, - "isLeaf": true - }, - "projects/npm-app:build": { - "id": "projects/npm-app:build", - "label": "build projects/npm-app", - "project": "projects/npm-app", - "target": "build", - "configurationTarget": { - "hash": "6FF9DA1627A7C747024ACB388F9EDE0C888DB6279C1741C21CE10925AC7B8271", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "dist/" - ], - "cache": null, - "operations": [ - { - "hash": "D9D320BB6A8CAFCC2A18FEC98A30C89D0D1526D887C5A7626CBF0E8E066A4AE0", - "container": "node:20", - "containerVariables": [], - "extension": "npmext", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - }, - "dependencies": [ - "libraries/npm-lib:build" - ], - "outputs": [ - "dist/" - ], - "projectHash": "84DFD1B132F2D433231EF2345DB2CF32D7D3867BB5C1795B3DCFE0F0304A7353", - "targetHash": "504FCB25A46AC48E00ACBCE1E7B526B375192991C331D7F898AF6AEDBB678141", - "operations": [ - { - "container": "node:20", - "containerVariables": [], - "metaCommand": "npmext build", - "command": "npm", - "arguments": "ci" - }, - { - "container": "node:20", - "containerVariables": [], - "metaCommand": "npmext build", - "command": "npm", - "arguments": "run build -- " - } - ], - "cache": 0, - "isLeaf": true - }, - "projects/rust-app:build": { - "id": "projects/rust-app:build", - "label": "build projects/rust-app", - "project": "projects/rust-app", - "target": "build", - "configurationTarget": { - "hash": "CE4486607AE6F79467FD036FE99464F3A22629A41144375622171E10A8E901B2", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "target/debug/", - "target/release/" - ], - "cache": null, - "operations": [ - { - "hash": "70B1806A1714857ABE6C8D946A9B08BEF1069B8BD6B3AC12AF84ABF24096A390", - "container": "rust:1.81.0-slim", - "containerVariables": [], - "extension": "@cargo", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - }, - "dependencies": [], - "outputs": [ - "target/debug/", - "target/release/" - ], - "projectHash": "ABBB61CBAB614EB12FDCBC22A5549A851128357CCA09CB57D74A2D2390E4A043", - "targetHash": "65D283F2B28A4A595920AE4955F064DD34CC256E3601F367D75D6B05FD39D348", - "operations": [ - { - "container": "rust:1.81.0-slim", - "containerVariables": [], - "metaCommand": "@cargo build", - "command": "cargo", - "arguments": "build --profile dev " - } - ], - "cache": 0, - "isLeaf": true - } - }, - "rootNodes": [ - "deployments/terraform-deploy:build", - "libraries/dotnet-lib:build", - "libraries/npm-lib:build", - "libraries/shell-lib:build", - "projects/dotnet-app:build", - "projects/make-app:build", - "projects/npm-app:build", - "projects/rust-app:build" - ] + "nodes": {}, + "rootNodes": [] } \ No newline at end of file diff --git a/tests/simple/results/terrabuild-debug.build-graph.mermaid b/tests/simple/results/terrabuild-debug.build-graph.mermaid index e9340079..0f01ddd7 100644 --- a/tests/simple/results/terrabuild-debug.build-graph.mermaid +++ b/tests/simple/results/terrabuild-debug.build-graph.mermaid @@ -1,33 +1,4 @@ flowchart TD classDef build stroke:red,stroke-width:3px classDef restore stroke:orange,stroke-width:3px -classDef ignore stroke:black,stroke-width:3px -deployments/terraform-deploy:build("deployments/terraform-deploy -build ") -libraries/dotnet-lib:build("libraries/dotnet-lib -build ") -libraries/npm-lib:build("libraries/npm-lib -build ") -libraries/shell-lib:build("libraries/shell-lib -build ") -projects/dotnet-app:build("projects/dotnet-app -build ") -projects/make-app:build("projects/make-app -build ") -projects/npm-app:build("projects/npm-app -build ") -projects/rust-app:build("projects/rust-app -build ") -deployments/terraform-deploy:build --> projects/dotnet-app:build -deployments/terraform-deploy:build --> projects/npm-app:build -class deployments/terraform-deploy:build ignore -class libraries/dotnet-lib:build ignore -class libraries/npm-lib:build ignore -class libraries/shell-lib:build ignore -projects/dotnet-app:build --> libraries/dotnet-lib:build -class projects/dotnet-app:build ignore -projects/make-app:build --> libraries/shell-lib:build -class projects/make-app:build ignore -projects/npm-app:build --> libraries/npm-lib:build -class projects/npm-app:build ignore -class projects/rust-app:build ignore \ No newline at end of file +classDef ignore stroke:black,stroke-width:3px \ No newline at end of file diff --git a/tests/simple/results/terrabuild-debug.config.json b/tests/simple/results/terrabuild-debug.config.json index 96394989..d7b242a0 100644 --- a/tests/simple/results/terrabuild-debug.config.json +++ b/tests/simple/results/terrabuild-debug.config.json @@ -1,15 +1,6 @@ { "space": null, - "selectedProjects": [ - "deployments/terraform-deploy", - "libraries/dotnet-lib", - "libraries/npm-lib", - "libraries/shell-lib", - "projects/dotnet-app", - "projects/make-app", - "projects/npm-app", - "projects/rust-app" - ], + "selectedProjects": [], "targets": { "build": { "dependsOn": [ @@ -57,517 +48,5 @@ ] } }, - "projects": { - "deployments/terraform-deploy": { - "id": "deployments/terraform-deploy", - "hash": "9FA318E272735D841D292D7D78A58E7AF5BDFAF96DDD745761807419308C8BC5", - "dependencies": [ - "projects/dotnet-app", - "projects/npm-app" - ], - "files": [ - ".terraform.lock.hcl", - "backend.tf", - "test_res.tf", - "variables.tf" - ], - "targets": { - "build": { - "hash": "FD4E492BBC14063F951BD573395F7044BB64448F0CCA60851019067618B27C70", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "*.planfile" - ], - "cache": null, - "operations": [ - { - "hash": "8BA1A0F5EC354F7CA3A6E46BAD0B652F6767230BC5323A1AB1841ED9EF7B0AC2", - "container": null, - "containerVariables": [], - "extension": "@terraform", - "command": "plan", - "script": {}, - "context": [ - "map", - { - "variables": [ - "map", - { - "dotnet_app_version": [ - "string", - "7AFACF3AFB85FF8AD7433C5AA8FFAD5C4BF62333D184CD03DE62984692F3BBCC" - ], - "npm_app_version": [ - "string", - "84DFD1B132F2D433231EF2345DB2CF32D7D3867BB5C1795B3DCFE0F0304A7353" - ] - } - ], - "workspace": [ - "string", - "default" - ] - } - ] - } - ] - }, - "deploy": { - "hash": "43974ADCF2902200291242CF6A7E94FC3FED2764DFC627CF410BCDA6283AD8AF", - "rebuild": false, - "dependsOn": [ - "push" - ], - "outputs": [ - "*.planfile" - ], - "cache": null, - "operations": [ - { - "hash": "84DDD67346617D06E275A0B16955228851AFA5211E0262DF72EB4CD8D9917092", - "container": null, - "containerVariables": [], - "extension": "@terraform", - "command": "apply", - "script": {}, - "context": [ - "map", - { - "workspace": [ - "string", - "default" - ] - } - ] - } - ] - } - }, - "labels": [ - "infra" - ] - }, - "libraries/dotnet-lib": { - "id": "libraries/dotnet-lib", - "hash": "D40B341C32470C5A405E452ACD05D8D0F0A82650915F0DF14C697EACA0759F33", - "dependencies": [], - "files": [ - "Class1.cs", - "dotnet-lib.csproj" - ], - "targets": { - "build": { - "hash": "A649F97242CEFE0737701431018990998E0849E9CB990AB8B9C0B1CA39FD9C6F", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "F3D3F187F94C685E6C8F336F181B75DAE61F04FFE23AF4E7F5B858CAA1D5DFC6", - "container": null, - "containerVariables": [], - "extension": "@dotnet", - "command": "build", - "script": {}, - "context": [ - "map", - { - "configuration": [ - "string", - "Debug" - ] - } - ] - } - ] - } - }, - "labels": [] - }, - "libraries/npm-lib": { - "id": "libraries/npm-lib", - "hash": "813635EFA9D98FB042EF8A761A4433B34B95BA40E1D1231B79CBDC4D29E21AF6", - "dependencies": [], - "files": [ - "package-lock.json", - "package.json", - "src/index.ts", - "src/logger.ts", - "src/say-hello.ts", - "tsconfig.json" - ], - "targets": { - "build": { - "hash": "6FF9DA1627A7C747024ACB388F9EDE0C888DB6279C1741C21CE10925AC7B8271", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "dist/" - ], - "cache": null, - "operations": [ - { - "hash": "D9D320BB6A8CAFCC2A18FEC98A30C89D0D1526D887C5A7626CBF0E8E066A4AE0", - "container": "node:20", - "containerVariables": [], - "extension": "npmext", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - } - }, - "labels": [ - "app" - ] - }, - "libraries/shell-lib": { - "id": "libraries/shell-lib", - "hash": "90DBBB67F0EB0EEBCC7BEB1929682796805120FF8AE0C26C7FF742190F9A469A", - "dependencies": [], - "files": [], - "targets": { - "build": { - "hash": "8B56DAA76BB451252D58A9AFF5D2E5A77D0568D8681204549E53A422C9FBDBF0", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building library1" - ] - } - ] - } - ] - } - }, - "labels": [] - }, - "projects/dotnet-app": { - "id": "projects/dotnet-app", - "hash": "7AFACF3AFB85FF8AD7433C5AA8FFAD5C4BF62333D184CD03DE62984692F3BBCC", - "dependencies": [ - "libraries/dotnet-lib" - ], - "files": [ - "../shared-folder/Terminal.cs", - "Dockerfile", - "Program.cs", - "dotnet-app.csproj" - ], - "targets": { - "build": { - "hash": "A649F97242CEFE0737701431018990998E0849E9CB990AB8B9C0B1CA39FD9C6F", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "F3D3F187F94C685E6C8F336F181B75DAE61F04FFE23AF4E7F5B858CAA1D5DFC6", - "container": null, - "containerVariables": [], - "extension": "@dotnet", - "command": "build", - "script": {}, - "context": [ - "map", - { - "configuration": [ - "string", - "Debug" - ] - } - ] - } - ] - }, - "dist": { - "hash": "1C058F7AEE7F28E71B314DFF9426988F723EC1420B6EC2E39F5320CABC15CAB4", - "rebuild": false, - "dependsOn": [ - "build" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "1311F62C9C27453F0B03B878877FCB24E63B6EB246A8B3696689DB068197846E", - "container": null, - "containerVariables": [], - "extension": "@dotnet", - "command": "publish", - "script": {}, - "context": [ - "map", - { - "configuration": [ - "string", - "Debug" - ] - } - ] - } - ] - }, - "docker": { - "hash": "B2968AD5F493351AE9DDBE6B6349DAF6CA18C306DCE1DE55C51BEBA430CD3A78", - "rebuild": false, - "dependsOn": [ - "dist" - ], - "outputs": [ - "**/*.binlog", - "bin/", - "obj/", - "obj/*.json", - "obj/*.props", - "obj/*.targets" - ], - "cache": null, - "operations": [ - { - "hash": "2FBDD2F2C31193CA71F958A6F4B9A9579FB1AFB4D5075063C3826EF9C5F1BE28", - "container": null, - "containerVariables": [], - "extension": "@docker", - "command": "build", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "map", - { - "configuration": [ - "string", - "Debug" - ] - } - ], - "image": [ - "string", - "ghcr.io/magnusopera/dotnet-app" - ] - } - ] - } - ] - } - }, - "labels": [ - "app", - "dotnet" - ] - }, - "projects/make-app": { - "id": "projects/make-app", - "hash": "A5BD059BA569E96AFE6AEC3BA05C405B454A3483F1A702D11CA978F318516307", - "dependencies": [ - "libraries/shell-lib" - ], - "files": [ - "Makefile" - ], - "targets": { - "build": { - "hash": "D75E1B5F09A68010CF5A342EF04AB73E0FDE53F31E8A83B5DF5FF248DE965D24", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "dist" - ], - "cache": null, - "operations": [ - { - "hash": "9A6077978162678FAB571475352B8B0AF63E6C2EED1A61094BCBDD35D8BDCCB2", - "container": null, - "containerVariables": [], - "extension": "@shell", - "command": "echo", - "script": {}, - "context": [ - "map", - { - "arguments": [ - "string", - "building project1" - ] - } - ] - }, - { - "hash": "60078A7AEF8007B4B5DC060CE7889241884A0FDE6A440EB5732A3FD31ED2D857", - "container": null, - "containerVariables": [], - "extension": "@make", - "command": "build", - "script": {}, - "context": [ - "map", - { - "variables": [ - "map", - { - "secret": [ - "string", - "tagada" - ] - } - ] - } - ] - } - ] - } - }, - "labels": [ - "app" - ] - }, - "projects/npm-app": { - "id": "projects/npm-app", - "hash": "84DFD1B132F2D433231EF2345DB2CF32D7D3867BB5C1795B3DCFE0F0304A7353", - "dependencies": [ - "libraries/npm-lib" - ], - "files": [ - ".gitignore", - "index.html", - "package-lock.json", - "package.json", - "public/vite.svg", - "src/counter.ts", - "src/main.ts", - "src/style.css", - "src/typescript.svg", - "src/vite-env.d.ts", - "tsconfig.json" - ], - "targets": { - "build": { - "hash": "6FF9DA1627A7C747024ACB388F9EDE0C888DB6279C1741C21CE10925AC7B8271", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "dist/" - ], - "cache": null, - "operations": [ - { - "hash": "D9D320BB6A8CAFCC2A18FEC98A30C89D0D1526D887C5A7626CBF0E8E066A4AE0", - "container": "node:20", - "containerVariables": [], - "extension": "npmext", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - } - }, - "labels": [ - "app" - ] - }, - "projects/rust-app": { - "id": "projects/rust-app", - "hash": "ABBB61CBAB614EB12FDCBC22A5549A851128357CCA09CB57D74A2D2390E4A043", - "dependencies": [], - "files": [ - "Cargo.lock", - "Cargo.toml", - "src/main.rs" - ], - "targets": { - "build": { - "hash": "CE4486607AE6F79467FD036FE99464F3A22629A41144375622171E10A8E901B2", - "rebuild": false, - "dependsOn": [ - "^build" - ], - "outputs": [ - "target/debug/", - "target/release/" - ], - "cache": null, - "operations": [ - { - "hash": "70B1806A1714857ABE6C8D946A9B08BEF1069B8BD6B3AC12AF84ABF24096A390", - "container": "rust:1.81.0-slim", - "containerVariables": [], - "extension": "@cargo", - "command": "build", - "script": {}, - "context": [ - "map", - {} - ] - } - ] - } - }, - "labels": [ - "app", - "rust" - ] - } - } + "projects": {} } \ No newline at end of file