Repository: dbt-labs/dbt-core
Pull request: Add logging for a file path that can't be cleaned
Closes https://github.com/fishtown-analytics/dbt/issues/2059

In a case where your `dbt_project.yml` file has:
```
source-paths: ["models"]

clean-targets:
  - "models"
  - "dbt_modules"
```

when you run `dbt clean` you'll see a message that looks like:

```
Checking models/*
Checking dbt_modules/*
 Cleaned dbt_modules/*
```

Because it doesn't tell you you did something wrong, you may not notice that the `model/*` file wasn't cleaned (rightfully so!). This MR proposes that the messaging be:
```
Checking model/*
model/* cannot be cleaned.
Checking dbt_modules/*
 Cleaned dbt_modules/*
```

No functional differences, just more details. 

Problem statement:
If you have a protected path in your clean targets, log that the file can't be cleaned. 
### Describe the feature
If I run `dbt clean` the output indicates that a file is checked and then that a file is cleaned. If it cannot clean the file, it doesn't indicate that way. 
I propose adding a simple message that says `[file] can't be cleaned`

### Describe alternatives you've considered
Technically speaking you can tell that something is wrong because you don't get the affirmation that the path is cleaned, but it seems to make sense to me to be more explicit. 

### Additional context

### Who will this benefit?
Anyone who runs `dbt clean`

Hints from issue discussion:

Commit message: add logging  for a file path that can't be cleaned

Patch to review:
diff --git a/core/dbt/task/clean.py b/core/dbt/task/clean.py
index ad4c3d1edaf..ee4a690a071 100644
--- a/core/dbt/task/clean.py
+++ b/core/dbt/task/clean.py
@@ -35,4 +35,6 @@ def run(self):
             if not self.__is_protected_path(path):
                 shutil.rmtree(path, True)
                 logger.info(" Cleaned {}/*".format(path))
+            else:
+                logger.info("{}/* cannot be cleaned".format(path))
         logger.info("Finished cleaning all paths.")


Code review comments:
diff_hunk: @@ -35,4 +35,6 @@ def run(self):
             if not self.__is_protected_path(path):
                 shutil.rmtree(path, True)
                 logger.info(" Cleaned {}/*".format(path))
+            else:
+                logger.info("{}/* cannot be cleaned".format(path))
path: core/dbt/task/clean.py
text: @author:
```suggestion
                logger.info("ERROR: not cleaning {}/* because it is protected".format(path))
```