# Bulk Restore Tool (BRT)

The `brt` command-line tool enables efficient restoring of the contents of a Code42 preservation archive without the
need to install a Code42 agent on the target machine.

# Developer Setup

The BRT project uses [hatch](https://hatch.pypa.io/latest/install/) for project management, this includes defining
dependencies, running tests, producing build artifacts, and publishing the package to a Python Package Index (PyPI or
in this case our local Artifactory).

Once `hatch` is installed, from this repository root, run: 

```bash
hatch env create
```

This will create the `default` virtual environment and install the `brt` package in "development" mode (meaning any 
changes to the source will apply in the environment).

To run tests without coverage report:

```bash
hatch run test
```

To run linters:

```bash
hatch run lint
```

To run `mypy` (static type analyzer):

```bash
hatch run typecheck
```

To run tests against _all_ supported python versions (python3.7 through python3.11) that are installed on your system:

```bash
hatch run matrix:test
```

To build `pip` installable artifacts:

```bash
hatch build
```
