Add some task definitions to run mach from VSCode (bug 1323308). r=gps
authorPanos Astithas <past@mozilla.com>
Thu, 04 May 2017 18:03:54 +0300
changeset 358049 4b3970c598da76e637448083ce6dd2d972205d57
parent 358048 a7d409e112724e2a9865efb8ac74c61d4b7192b7
child 358050 43c3f5bc92eeaceeb1d6e46400c461cbb4565024
push id90256
push userryanvm@gmail.com
push dateFri, 12 May 2017 16:11:50 +0000
treeherdermozilla-inbound@823615e72783 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersgps
bugs1323308
milestone55.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Add some task definitions to run mach from VSCode (bug 1323308). r=gps MozReview-Commit-ID: EVFFHmgHRL2
.gitignore
.hgignore
.vscode/tasks.json
--- a/.gitignore
+++ b/.gitignore
@@ -123,10 +123,11 @@ testing/talos/talos/tests/devtools/damp.
 
 # Ignore files created when running a reftest.
 lextab.py
 
 # tup database
 /.tup
 
 # Ignore Visual Studio Code workspace files.
-.vscode/
+.vscode/*
 !.vscode/extensions.json
+!.vscode/tasks.json
--- a/.hgignore
+++ b/.hgignore
@@ -136,14 +136,14 @@ GPATH
 
 # Ignore files created when running a reftest.
 ^lextab.py$
 
 # tup database
 ^\.tup
 
 # Ignore Visual Studio Code workspace files.
-\.vscode/(?!extensions.json$)
+\.vscode/(?!extensions\.json|tasks\.json)
 
 subinclude:servo/.hgignore
 
 # Ignore Infer output
-^infer-out/
\ No newline at end of file
+^infer-out/
new file mode 100644
--- /dev/null
+++ b/.vscode/tasks.json
@@ -0,0 +1,129 @@
+{
+    // See https://go.microsoft.com/fwlink/?LinkId=733558
+    // for the documentation about the tasks.json format
+    "version": "2.0.0",
+    "command": "${workspaceRoot}/mach",
+    "isShellCommand": true,
+    "args": ["--log-no-times"],
+    "showOutput": "silent",
+    "echoCommand": true,
+    "suppressTaskName": false,
+    "tasks": [
+      {
+        "taskName": "clobber"
+      },
+      {
+        "taskName": "configure"
+      },
+      {
+        "taskName": "build",
+        "isBuildCommand": true,
+        "problemMatcher": {
+          "owner": "cpp",
+          "fileLocation": "absolute",
+          "pattern": {
+            "regexp": "^.*?tools([^\\s]*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
+            "file": 1,
+            "line": 2,
+            "column": 3,
+            "severity": 4,
+            "message": 5
+          }
+        }
+      },
+      {
+        "taskName": "build binaries",
+        "problemMatcher": {
+          "owner": "cpp",
+          "fileLocation": "absolute",
+          "pattern": {
+            "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
+            "file": 1,
+            "line": 2,
+            "column": 3,
+            "severity": 4,
+            "message": 5
+          }
+        }
+      },
+      {
+        "taskName": "build faster",
+        "problemMatcher": {
+          "owner": "cpp",
+          "fileLocation": "absolute",
+          "pattern": {
+            "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
+            "file": 1,
+            "line": 2,
+            "column": 3,
+            "severity": 4,
+            "message": 5
+          }
+        }
+      },
+      {
+        "taskName": "run",
+        "args": ["-purgecaches"],
+        "showOutput": "always"
+      },
+      {
+        "taskName": "eslint",
+        "problemMatcher": ["$eslint-stylish"]
+      },
+      {
+        "taskName": "eslint fix",
+        "suppressTaskName": true,
+        "args": ["eslint", "--fix", "${file}"],
+        "problemMatcher": ["$eslint-stylish"]
+      },
+      {
+        "taskName": "test",
+        "args": ["${relativeFile}"],
+        "isTestCommand": true,
+        "showOutput": "always"
+      },
+      {
+        "taskName": "mochitest",
+        "args": ["${relativeFile}"],
+        "showOutput": "always",
+        "problemMatcher": {
+          "fileLocation": ["relative", "${workspaceRoot}"],
+          "pattern": {
+              "regexp": "^.*\\s+(TEST-UNEXPECTED-FAIL|TEST-UNEXPECTED-PASS)\\s+\\|\\s+([^\\s]*)\\s+\\|\\s+(.*)$",
+              "severity": 1,
+              "file": 2,
+              "message": 3
+          }
+        }
+      },
+      {
+        "taskName": "reftest",
+        "args": ["${relativeFile}"],
+        "showOutput": "always",
+        "problemMatcher": {
+          "fileLocation": ["absolute"],
+          "pattern": {
+              "regexp": "^.*\\s+(TEST-UNEXPECTED-FAIL|TEST-UNEXPECTED-PASS)\\s+\\|\\s+file:\/\/([^\\s]*)\\s+==\\s+[^\\s]*\\s+\\|\\s+(.*)$",
+              "severity": 1,
+              "file": 2,
+              "message": 3
+          }
+        }
+      },
+      {
+        "taskName": "xpcshell-test",
+        "args": ["${relativeFile}", "--sequential"],
+        "showOutput": "always",
+        "problemMatcher": {
+          "fileLocation": ["relative", "${workspaceRoot}"],
+          "pattern": {
+              "regexp": "^.*\\s+(FAIL|ERROR)\\s+\\[([^\\s]*)\\s+:\\s+(\\d+)\\]\\s+(.*)$",
+              "severity": 1,
+              "file": 2,
+              "location": 3,
+              "message": 4
+          }
+        }
+      }
+    ]
+}