Skip to content

Commit

Permalink
drive: implement cleanup (empty trash) - addresses #575
Browse files Browse the repository at this point in the history
  • Loading branch information
ishuah authored and ncw committed Sep 6, 2017
1 parent 2944f76 commit dd975ab
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 8 deletions.
18 changes: 12 additions & 6 deletions docs/content/drive.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,9 @@ Choose a number from below, or type in your own value
\ "yandex"
Storage> 8
Google Application Client Id - leave blank normally.
client_id>
client_id>
Google Application Client Secret - leave blank normally.
client_secret>
client_secret>
Remote config
Use auto config?
* Say Y if not sure
Expand All @@ -82,8 +82,8 @@ n) No
y/n> n
--------------------
[remote]
client_id =
client_secret =
client_id =
client_secret =
token = {"AccessToken":"xxxx.x.xxxxx_xxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","RefreshToken":"1/xxxxxxxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxx","Expiry":"2014-03-16T13:57:58.955387075Z","Extra":null}
--------------------
y) Yes this is OK
Expand Down Expand Up @@ -140,8 +140,8 @@ Choose a number from below, or type in your own value
Enter a Team Drive ID> 1
--------------------
[remote]
client_id =
client_secret =
client_id =
client_secret =
token = {"AccessToken":"xxxx.x.xxxxx_xxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","RefreshToken":"1/xxxxxxxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxx","Expiry":"2014-03-16T13:57:58.955387075Z","Extra":null}
team_drive = xxxxxxxxxxxxxxxxxxxx
--------------------
Expand Down Expand Up @@ -173,6 +173,12 @@ By default rclone will delete files permanently when requested. If
sending them to the trash is required instead then use the
`--drive-use-trash` flag.

### Emptying trash ###

If you wish to empty your trash you can use the `rclone cleanup remote:`
command which will permanently delete all your trashed files. This command
does not take any path arguments.

### Specific options ###

Here are the command line options specific to this cloud storage
Expand Down
2 changes: 1 addition & 1 deletion docs/content/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ operations more efficient.
| Dropbox | Yes | Yes | Yes | Yes | No [#575](https://github.com/ncw/rclone/issues/575) | No | Yes |
| FTP | No | No | Yes | Yes | No | No | Yes |
| Google Cloud Storage | Yes | Yes | No | No | No | Yes | No [#1614](https://github.com/ncw/rclone/issues/1614) |
| Google Drive | Yes | Yes | Yes | Yes | No [#575](https://github.com/ncw/rclone/issues/575) | No | Yes |
| Google Drive | Yes | Yes | Yes | Yes | Yes | No | Yes |
| HTTP | No | No | No | No | No | No | No |
| Hubic | Yes † | Yes | No | No | No | Yes | No [#1614](https://github.com/ncw/rclone/issues/1614) |
| Microsoft Azure Blob Storage | Yes | Yes | No | No | No | Yes | No |
Expand Down
13 changes: 13 additions & 0 deletions drive/drive.go
Original file line number Diff line number Diff line change
Expand Up @@ -905,6 +905,19 @@ func (f *Fs) Purge() error {
return nil
}

// CleanUp empties the trash
func (f *Fs) CleanUp() error {
err := f.pacer.Call(func() (bool, error) {
err := f.svc.Files.EmptyTrash().Do()
return shouldRetry(err)
})

if err != nil {
return err
}
return nil
}

// Move src to this remote using server side move operations.
//
// This is stored with the remote path given
Expand Down
3 changes: 2 additions & 1 deletion drive/drive_internal_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@ package drive
import (
"testing"

"google.golang.org/api/drive/v2"

"github.com/pkg/errors"
"github.com/stretchr/testify/assert"
"google.golang.org/api/drive/v2"
)

func TestInternalParseExtensions(t *testing.T) {
Expand Down

0 comments on commit dd975ab

Please sign in to comment.