Skip to content

Adding Beeminder datapoints from Timesheet android app XML backups stored in a Dropbox folder

License

Notifications You must be signed in to change notification settings

cmeury/timesheet-beeminder-sync

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

timesheet-beeminder-sync

Adding Beeminder datapoints from the Timesheet Android app's XML backups stored in a Dropbox folder.

Prerequisites:

Create a Dropbox App

  1. Go to: https://www.dropbox.com/developers/apps/create
  2. Choose "Dropbox API"
  3. Choose "Full Dropbox"
  4. Name your app, for example: "timesheet-beeminder-sync"
  5. Agree to conditions and click "Create app"
  6. Generate an access token as explained in this Dropbox blog post.
  7. Use the token to populate .env

Run locally

  • Copy the .env.template file to .env and fill in the variables.

    make dev

The dev target creates a Docker image and runs it in dev mode, meaning the source directory is mounted inside the container. So, any changes will be reflected - just run make run-dev afterwards, no need to build the image again.

Deploy to Heroku

Create a heroku account, then:

heroku login
heroku create
heroku config:set DROPBOX_ACCESS_TOKEN=
heroku config:set DROPBOX_FOLDER=/timesheet/backup
heroku config:set BM_USERNAME=username
heroku config:set BM_AUTH_TOKEN=auth-token
heroku config:set BM_GOAL=work

Deploy the app:

git push heroku master

Look at the logs:

heroku logs --tail

Then, open the scheduler add-on:

heroku addons:open scheduler

And create a new job with the command: python src/main.py and a frequency of hourly.

About

Adding Beeminder datapoints from Timesheet android app XML backups stored in a Dropbox folder

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published