Skip to content
The Badgerodon Stack
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
archive
service
storage
sync
vendor
.gitignore
Gopkg.lock
Gopkg.toml
LICENSE
README.md
apply.go
config.go
lock.go
main.go
watch.go

README.md

The Badgerodon Stack

A simple, cross-platform, open-source, pull-based deployment tool. An overview and walkthrough is available at badgerodon.com/stack.

Features

  • auth provider: for providers that need it can be used to generate oauth credentials
  • rm url: remove a file
  • ls url: list folder contents
  • cp source destination: copy a file
  • apply source: run all the applications defined in a configuration file (in YAML format)
  • watch source: run apply source whenever the configuration file is updated

Archive Formats

  • .tar
  • .tar.gz, .tgz
  • .tar.bz2, .tbz, .tbz2, .tb2
  • .tar.lz, .tar.lzma, .tlz
  • .tar.xz, .txz
  • .zip

Service Runners

  • local
  • FreeBSD
    • rc.d
  • Linux
    • systemd
    • sysv
    • upstart
  • OSX
    • launchd
  • Windows
    • service

Storage Providers

  • Azure
    • azure://[{account}[.blob.core.windows.net]/]{container}/{path}
 type: azure
 account: ...
 key: ...
 container: ...
 path: ...
  • if not provided
    • account defaults to AZURE_ACCOUNT
    • key defaults to AZURE_KEY
    • container defaults to AZURE_CONTAINER
  • Copy
    • copy://[username:password@][api.copy.com/]{path}
 type: copy
 username: ...
 password: ...
 path: ...
  • if not provided:
    • username defaults to COPY_USERNAME
    • password defaults to COPY_PASSWORD
  • Dropbox
  • Local
    • local://{path}
    • file://{path}
    • {path}
 type: file
 path: ...
 type: gdrive
 client_id: ...
 client_secret: ...
 access_token: ...
 token_type: ...
 refresh_token: ...
 expiry: ...
 path: ...
  • if not provided
    • access_token defaults to GOOGLE_DRIVE_ACCESS_TOKEN
    • token_type defaults to GOOGLE_DRIVE_TOKEN_TYPE
    • expiry defaults to GOOGLE_DRIVE_EXPIRY (in RFC3339 format)
    • refresh_token defaults to GOOGLE_DRIVE_REFRESH_TOKEN
    • client_id defaults to GOOGLE_DRIVE_CLIENT_ID or 304359942533-ra5badnhb5f1umi5vj4p5oohfhdiq8v8.apps.googleusercontent.com
    • client_secret defaults to GOOGLE_DRIVE_CLIENT_SECRET or 2ORaxB_WysnMlfeYW5yZsBgH
    • credentials can also be generated using stack auth gdrive, stored in a file and passed via GOOGLE_DRIVE_CREDENTIALS_FILE
  • Google Cloud Storage
    • gs://{bucket}/{path}
  • HTTP
    • http://[{user}:{password}@]{host}/{path}[?{query}]
    • https://[{user}:{password}@]{host}/{path}[?{query}]
 type: http    # or https
 user: ...
 password: ...
 host: ...
 path: ...
 query: ...
  • Mega
    • mega://[{email}:{password}@][mega.co.nz/]{path}
 type: mega
 email: ...
 password: ...
 path: ...
  • if not provided
    • email defaults to MEGA_EMAIL
    • password defaults to MEGA_PASSWORD
  • OneDrive
  • Rackspace Cloud Files
  • S3
  • SFTP
  • SCP
  • Swift
You can’t perform that action at this time.