# pwc-p (orchestration)

`pwc-p` is a command-line executable that implements Currents Orchestration for Playwright. See [playwright-parallelization](https://docs.currents.dev/guides/ci-optimization/playwright-parallelization "mention") and [playwright-orchestration](https://docs.currents.dev/guides/ci-optimization/playwright-orchestration "mention").

`pwc-p` allows providing [configuration](https://docs.currents.dev/resources/reporters/currents-playwright/configuration "mention") options via CLI flags. Additionally, is passes down CLI flags to the underlying `playwright` command.

{% hint style="success" %}
We recommended using `currents.config.ts` file. See [#configuration-sources](https://docs.currents.dev/resources/reporters/configuration#configuration-sources "mention").
{% endhint %}

```bash
> pwc-p [options] [playwright arguments and flags]

✨ Orchestrate 🎭 Playwright tests on CI using https://currents.dev

----------------------------------------------------
📖 Documentation: https://docs.currents.dev
🤙 Support:       support@currents.dev
----------------------------------------------------
```

## **Examples**

Orchestrate all tests in the current directory:

```
pwc-p --key --project-id --ci-build-id
```

Add additional playwright arguments and flags:

```
pwc-p --key --project-id --ci-build-id -- --workers 2 --timeout 10000
```

## **Options**

### **`--ci-build-id`**

The unique identifier for a run. See [#cibuildid](https://docs.currents.dev/resources/reporters/configuration#cibuildid "mention")

***

### **`-k, --key`**

Your secret Record Key obtained from Currents. See [#recordkey](https://docs.currents.dev/resources/reporters/configuration#recordkey "mention").

***

### **`-p, --project-id`**

The project ID for results reporting obtained from Currents. See [#projectid](https://docs.currents.dev/resources/reporters/configuration#projectid "mention").

***

### **`-t, --tag`**

Comma-separated tag(s) for recorded runs in Currents. See [#tag](https://docs.currents.dev/resources/reporters/configuration#tag "mention").

***

### **`--pwc-config <path>`**

Path to currents config file `currents.config.[ts|js]`. See [#configuration-sources](https://docs.currents.dev/resources/reporters/configuration#configuration-sources "mention").

***

### **`--pwc-remove-title-tags`**

Remove tags from test names in Currents, e.g. `Test name @smoke` becomes `Test name` in the dashboard (default: false). See [#removetitletags](https://docs.currents.dev/resources/reporters/configuration#removetitletags "mention").

***

### **`--pwc-disable-title-tags`**

Disable parsing tags from test title, e.g. `Test name @smoke` would **not** have tag `smoke` in the dashboard (default: false). See [#disabletitletags](https://docs.currents.dev/resources/reporters/configuration#disabletitletags "mention").

***

### **`--pwc-disable-test-tags`**

Prevent reporting tags defined in the test title or by test annotations (default: false). See [#disabletesttags](https://docs.currents.dev/resources/reporters/configuration#disabletesttags "mention").

***

### **`--pwc-cancel-after-failures <number | false>`**

Abort the cloud run after the specified number of failed tests detected. Overrides the default Currents Project settings. See [#cancelafterfailures](https://docs.currents.dev/resources/reporters/configuration#cancelafterfailures "mention").

***

### **`--pwc-debug [boolean | "remote" | "full"]`**

Enable collecting debug logs for the reporter (default: false).

* `true` will print the debug logs to stdout
* `remote` will upload the debug logs to Currents servers.
* `full` will print the logs to stdout and also upload to Currents.

Environment variable: `CURRENTS_DEBUG=true | "remote" | "full"` . See [troubleshooting-playwright](https://docs.currents.dev/guides/troubleshooting-playwright "mention").

***

### **`--pwc-output-file <path>`**

File path for run summary output in JSON format. See [#outputfile](https://docs.currents.dev/resources/reporters/configuration#outputfile "mention").

***

### **`--pwc-coverage <project-name>`**

List of projects to collect coverage for, e.g. `--pwc-coverage chromium --pwc-coverage firefox`. If no projects are specified, coverage will be collected for all projects. See [#coverage.projects](https://docs.currents.dev/resources/reporters/configuration#coverage.projects "mention").

***

### **`--pwc-coverage-dir <path>`**

Coverage reports directory path. See [#coverage.dir](https://docs.currents.dev/resources/reporters/configuration#coverage.dir "mention").

***

### **`--pwc-console-output <preset>`**

Reporter console output. See [#consoleoutput](https://docs.currents.dev/resources/reporters/configuration#consoleoutput "mention").

***

### **`--pwc-test-suite-file <path>`**

Path to the full test suite file for orchestration and reporting. See [#testsuitefile](https://docs.currents.dev/resources/reporters/configuration#testsuitefile "mention").

***

### **`--pwc-machine-id <string>`**

Unique identifier of the machine running the tests. Mostly used internally. If not provided, it will be generated automatically. See [#machineid](https://docs.currents.dev/resources/reporters/configuration#machineid "mention").

***

### **`--pwc-orchestration-id <string>`**

Unique identifier of the orchestration session this run belongs to. See [#orchestrationid](https://docs.currents.dev/resources/reporters/configuration#orchestrationid "mention") .

***

### **`--pwc-batch-size <auto|number>`**

Defines how many Playwright workers are available for orchestration. See [#orchestration.batchsize](https://docs.currents.dev/resources/reporters/configuration#orchestration.batchsize "mention") .

***

### **`--pwc-reset-signal SIGUSR1 | SIGUSR2`**

Specify a process signal to listen for to trigger a reset of the current in progress tests. Only available on OS with POSIX signal support. See [#orchestration.resetsignal](https://docs.currents.dev/resources/reporters/configuration#orchestration.resetsignal "mention").

***

### **`--pwc-skip-reporter-injection`**

Do not inject `@currents/playwright` . If set, you must add Currents reporter manually. See [#orchestration.skipreporterinjection](https://docs.currents.dev/resources/reporters/configuration#orchestration.skipreporterinjection "mention")

***

### **`-V, --version`**

Show package version

***

### **`-h, --help`**

Show help
