> For the complete documentation index, see [llms.txt](https://developer.harness.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.harness.io/security-testing-orchestration/use-sto/sto-scanner-configuration/reapsaw-scanner-reference.md).

# Reapsaw step configuration

You can ingest scan results for your code repositories from [Reapsaw](https://github.com/dowjones/reapsaw/wiki).

### Workflow description <a href="#workflow-description" id="workflow-description"></a>

This workflow applies to scanner integrations that support Ingestion mode.

1. Add a Build or Security stage to your pipeline.
2. Add a Run step and set it up to save your scan results to a shared folder.

   For more information, go to [Run an ingestion scan in an STO Pipeline](/security-testing-orchestration/new-to-sto/key-concepts/ingest-scan-results-into-an-sto-pipeline.md).
3. Add a [Custom Scan](/security-testing-orchestration/use-sto/sto-custom-scanning-and-ingestion/custom-scan-reference.md) step.
4. Review the [Important notes for Custom Scan steps](/security-testing-orchestration/use-sto/sto-custom-scanning-and-ingestion/custom-scan-reference.md#important-notes-for-custom-scan-steps) for additional requirements and relevant information.
5. Add the relevant `key:value` pairs to **Settings**.

### Custom Scan step settings for Reapsaw scans in STO <a href="#custom-scan-step-settings-for-reapsaw-scans-in-sto" id="custom-scan-step-settings-for-reapsaw-scans-in-sto"></a>

The recommended workflow is to add a Custom Scan step to a Security or Build stage and then configure it as described below.

#### Scanner settings <a href="#scanner-settings" id="scanner-settings"></a>

These settings are all required.

* [Product name](#product-name)
* [Scan type](#scan-type)
* [Policy type](#policy-type)
* [Product config name](#product-config-name)

**Product name**

The scanner name. This is required for all Custom Scan steps.

**Key**

```
product_name
```

**Value**

```
reapsaw
```

**Scan type**

The target type to scan.

**Key**

```
scan_type
```

**Value**

```
repository
```

**Policy type**

The [scan mode](/security-testing-orchestration/new-to-sto/key-concepts/sto-workflows-overview.md) to use.

**Key**

```
policy_type
```

**Value**

```
ingestionOnly
```

**Product config name**

Required for most scanner integrations.

**Key**

```
product_config_name
```

**Value**

```
default
```

#### Target and variant <a href="#target-and-variant" id="target-and-variant"></a>

Every Custom Scan step needs a [target and baseline](/security-testing-orchestration/new-to-sto/key-concepts/targets-and-baselines.md).

* [Target name](#target-name)
* [Target variant](#target-variant)

**Target name**

**Key**

```yaml
target_name
```

**Value**

A user-defined label for the code repository, container, application, or configuration to scan. Specify a unique, descriptive name. This makes it much easier to navigate your scan results in the STO UI.

**Target variant**

**Key**

```yaml
target_variant
```

**Value**

A [user-defined label](/security-testing-orchestration/new-to-sto/key-concepts/targets-and-baselines.md) for the branch, tag, or other target variant to scan.

#### Repository <a href="#repository" id="repository"></a>

Every Custom Scan step needs a [target and baseline](/security-testing-orchestration/new-to-sto/key-concepts/targets-and-baselines.md).

* [Target name](#target-name)
* [Target variant](#target-variant)

**Target name**

**Key**

```yaml
target_name
```

**Value**

A user-defined label for the code repository, container, application, or configuration to scan. Specify a unique, descriptive name. This makes it much easier to navigate your scan results in the STO UI.

**Target variant**

**Key**

```yaml
target_variant
```

**Value**

A [user-defined label](/security-testing-orchestration/new-to-sto/key-concepts/targets-and-baselines.md) for the branch, tag, or other target variant to scan.

#### Ingestion file <a href="#ingestion-file" id="ingestion-file"></a>

This setting applies to Custom Scan steps when the `policy_type` is [`ingestionOnly`](/security-testing-orchestration/new-to-sto/key-concepts/ingest-scan-results-into-an-sto-pipeline.md).

**Key**

```
ingestion_file
```

**Value**

The path to your scan results when running an [Ingestion scan](/security-testing-orchestration/new-to-sto/key-concepts/ingest-scan-results-into-an-sto-pipeline.md), for example `/shared/scan_results/myscan.latest.sarif`.

* The data file must be in a [supported format](/security-testing-orchestration/new-to-sto/sto-whats-supported/scanners.md#supported-ingestion-formats) for the scanner.
* The data file must be accessible to the scan step. It's good practice to save your scan results to a [shared path](/continuous-integration/new-to-harness-ci/key-concepts.md#stages) in your stage. In the visual editor, go to the stage where you're running the scan. Then go to **Overview** > **Shared Paths**. You can also add the path to the YAML stage definition like this:

  ```yaml
      - stage:
        spec:
          sharedPaths:
            - /shared/scan_results
  ```

#### Fail on Severity <a href="#fail-on-severity" id="fail-on-severity"></a>

If the scan finds any vulnerability with the specified [severity level](/security-testing-orchestration/new-to-sto/key-concepts/severities.md) or higher, the pipeline fails automatically. `NONE` means do not fail on severity.

For more information, go to:

* [STO workflows for blocking builds and PRs](/security-testing-orchestration/troubleshooting-and-resources/sto-use-cases/stop-builds-based-on-scan-results/stop-pipelines-overview.md).
* [Exemptions to override Fail on Severity thresholds for specific issues in STO](/security-testing-orchestration/use-sto/sto-exempt-issues/exemption-workflows.md)

**Key**

```
fail_on_severity
```

**Value**

```
CRITICAL
```

```
MEDIUM
```

```
LOW
```

```
INFO
```

```
NONE
```
