Add-on: Home Assistant Google Drive Backup

Home Assistant Google Drive Backup

About

I’ve authored an add-on to serve as a complete solution for creating backups in Home Assistant and synchronizing them in Google Drive. In particular it:

  • Automatically creates new backups on a configurable schedule.
  • Uploads any backups it finds to Google Drive.
  • Automatically cleans up old backups in Home Assistant and Google Drive.
  • Integrates with Home Assistant Notifications, and provides sensors you can trigger off of if something goes wrong.
  • Provides a web interface for you to watch or control what its doing.

I’ve written this with a focus on reliability, ease of use, configurability, and thorough documentation. The effort was born out of the frustration I had trying to get the existing solutions to work reliably, and my aim is to create something that literally anyone can use.

Quickstart

Detailed instructions are at my repository:

  • Add my repository, install the add-on.
  • Check to see the default settings are to your liking, particularly the number of backups kept locally and in Google Drive.
  • Start the add-on, then visit the web UI.
  • Click the button to link your Google Drive account. Backups should start getting uploaded or created immediately.
  • Optionally, check out some of the sensor integrations on the github instructions.

I’m going for a “polished” feel with this, something that “just works”. Any feedback or criticism you guys have is appreciated.

Post here and I’ll get back to you, or you can file an issue in GitHub

101 Likes

This looks great, but I’m running HassOS 2.8 - HA .90.1, installed the repository, installed all good.
Setting at default and tried to start but get this error - Starts then Stops
“[FATAL tini (6)] exec python3 failed: Exec format error”

1 Like

Bummer. That looks to me like there is a problem with at least one of my Docker images. If you’re willing to help me sort it out, could you tell me what the Hass.io system logs tells you when you try to start the add-on?
You should see something like:
19-03-27 18:46:38 INFO (SyncWorker_18) [hassio.docker.addon] Start Docker add-on sabeechen/hassio-google-drive-backup-armv7 with version 0.5

In Hass.io > System > System Log when you start the add-on. Would also be useful to know hardware you’re running Hass.io on. Thanks for trying it out!

Will do, just need to restart and enable full logger

Sorry did not read fully19-03-27 18:59:39 INFO (SyncWorker_1) [hassio.docker.interface] Clean sabeechen/hassio-google-drive-backup-amd64 Docker application
19-03-27 18:59:41 INFO (SyncWorker_1) [hassio.docker.addon] Start Docker add-on sabeechen/hassio-google-drive-backup-amd64 with version 0.5
19-03-27 18:59:52 INFO (SyncWorker_1) [hassio.docker.interface] Clean sabeechen/hassio-google-drive-backup-amd64 Docker application
19-03-27 18:59:54 INFO (SyncWorker_1) [hassio.docker.addon] Start Docker add-on sabeechen/hassio-google-drive-backup-amd64 with version 0.5

Running as virtual machine on virtualbox using VM from Hassio

Thanks for the detail, its got to be something related to your environment since I’m able to run the arm version of the add-on on a few different RaspberryPi’s and I can run the amd64 version outside of virtualbox. I’ll take a crack at setting up VirtualBox and see if I can reproduce what you’re seeing.

Great thank you

Admittedly, my first thought when I saw this was whether we really needed yet another Google Drive add-on, and what this one would do that the others don’t. I must say, though, that I like the extremely polished, set-it-and-forget-it look of your implementation. While I’m pretty happy with what I’ve already got set up, I think this will really help streamline the process for a lot of people. Great work!

I am also getting the fatal error. I also have this running in a VM environment on a docker. My fatal error has a 8 in it.

[FATAL tini (8)] exec python3 failed: Exec format error

I’m getting the same error…
[FATAL tini (6)] exec python3 failed:Exec format error

looking forward to trying out the addon.

[FATAL tini (7)] exec python3 failed: Exec format error

Home Assistant 0.90.2

HassOS installed on NUC

I had misconfigured all of the non-arm docker images, which is why you guys saw errors running in a VM, NUC, etc.
I’ve released another version just now (0.51) that fixes it, so if you update you should be on your way.
Thanks for bearing with me!

Thanks but still only 0.5 hopefully will show soon
Thanks for all the work

You probably already know, but make sure you press the refresh icon in the upper right of the add-on store page to force a check for updates.

Well you would have thought so, working great now
Thanks we really appreciate the work you guys do

Thanks for the addon! It’s working great!

I got another feature request: can we get the option to use a " Grandfather-father-son" backup method?
If I choose to backup frequently and don’t want to have 20 copys, I will have the situation where I only have recent backups stored. An issue that occured 3 weeks ago, which I didn’t notice until now will be in all snapshots I have.

With Grandfather-father-son, we could get the option to have eg., 4 snapshots that get changed every 3 days, 1 update that gets changed every month and one that gets updated every 3 month.
More info, here

Hey that looks pretty cool, never heard of it before. I created an issue for it in GitHub and I’ll get to it if bugs don’t get in the way. I still want to keep the default behavior simple and straightforward but I don’t see why I couldn’t include this behind a config option. I’ll need to do some thinking about how it would interact with backups that aren’t part of the schedule.

Yeah, sure. Nothing that has to be adressed in the near future.

Once more: I just love how easy this Add-On was to set up!

Thats great to hear. I tried every trigger based/nodered/gdrive/dropbox/add-on backup solution out there before deciding to do the work to write this. If I can save anyone the trouble of spending hours parsing through logs and enabling developer APIs only to find it it doesn’t quite do enough then it was worth it.

2 Likes