diff --git a/.github/workflows/continuous-integration.md b/.github/workflows/continuous-integration.md index 1395033..873b220 100644 --- a/.github/workflows/continuous-integration.md +++ b/.github/workflows/continuous-integration.md @@ -3,7 +3,7 @@ # GitHub Reusable Workflow: Node.js Continuous Integration
{
"commands": [
"build",
"generate-artifacts"
],
"env": {
"CUSTOM_ENV_VAR": "value"
},
"artifact": [
"dist/",
"packages/package-a/build/"
]
} | | | |
-| **`checks`** | Optional flag to enable check steps. | **false** | **boolean** | `true` |
-| **`lint`** | Whether to enable linting. | **false** | **string** | `true` |
-| | Set to `null` or empty to disable. | | | |
-| | Accepts a JSON object for lint options. See [lint action](../actions/lint/README.md). | | | |
-| **`code-ql`** | Code QL analysis language. | **false** | **string** | `typescript` |
-| | See container: "node:18" | | | |
-| | JSON object format (advanced): | | | |
-| | | | | |
-| | {
"image": "node:18",
"env": {
"NODE_ENV": "production"
},
"options": "--cpus 2",
"ports": [8080, 3000],
"volumes": ["/tmp:/tmp", "/cache:/cache"],
"credentials": {
"username": "myusername"
}
} | | | |
-| | Supported properties: | | | |
-| | | | | |
-| | - `image` (required) | | | |
-| | - `env` (object) | | | |
-| | - `options` (string) | | | |
-| | - `ports` (array) | | | |
-| | - `volumes` (array) | | | |
-| | - `credentials` (object with `username`). | | | |
-| | | | | |
-| | See {
"commands": [
"build",
"generate-artifacts"
],
"env": {
"CUSTOM_ENV_VAR": "value"
},
"artifact": [
"dist/",
"packages/package-a/build/"
]
} | | | |
+| **`checks`** | Optional flag to enable check steps. | **false** | **boolean** | `true` |
+| **`lint`** | Whether to enable linting. | **false** | **string** | `true` |
+| | Set to `null` or empty to disable. | | | |
+| | Accepts a JSON object for lint options. See [lint action](../actions/lint/README.md). | | | |
+| | It should generate lint reports in standard formats. | | | |
+| | | | | |
+| | Example: | | | |
+| | | | | |
+| | {
"lint:ci": "eslint . --output-file eslint-report.json --format json"
} | | | |
+| **`code-ql`** | Code QL analysis language. | **false** | **string** | `typescript` |
+| | See {
"test:ci": "vitest run --reporter=default --reporter=junit --outputFile=junit.xml --coverage.enabled --coverage.reporter=lcov --coverage.reporter=text"
} | | | |
+| **`working-directory`** | Working directory where the dependencies are installed. | **false** | **string** | `.` |
+| **`container`** | Container configuration to run CI steps in. | **false** | **string** | - |
+| | Accepts either a string (container image name) or a JSON object with container options. | | | |
+| | | | | |
+| | String format (simple): | | | |
+| | | | | |
+| | container: "node:18" | | | |
+| | JSON object format (advanced): | | | |
+| | | | | |
+| | {
"image": "node:18",
"env": {
"NODE_ENV": "production"
},
"options": "--cpus 2",
"ports": [8080, 3000],
"volumes": ["/tmp:/tmp", "/cache:/cache"],
"credentials": {
"username": "myusername"
},
pathMapping: {
"/app": "./relative/path/to/app"
}
} | | | |
+| | Supported properties: | | | |
+| | | | | |
+| | - `image` (required) | | | |
+| | - `env` (object) | | | |
+| | - `options` (string) | | | |
+| | - `ports` (array) | | | |
+| | - `volumes` (array) | | | |
+| | - `credentials` (object with `username`). | | | |
+| | - `pathMapping` (object) path mapping from container paths to repository paths. Defaults is working directory is mapped with repository root. | | | |
+| | | | | |
+| | See