Skip to content

rezzza/vaultage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Vaultage

Securize your files easily by defining a key on local machine. A passphrase can increase security.

You'll be able to version files containing critical data.

Fits well with automated deployment tools.

Installation

wget --no-check-certificate https://github.com/rezzza/vaultage/raw/master/vaultage.phar

or

curl -O -sL https://github.com/rezzza/vaultage/raw/master/vaultage.phar

via composer

composer global require "rezzza/vaultage=~1.0"

Vaultage binary path: ~/.composer/vendor/bin/vaultage

Commands

$ ./vaultage.phar init
$ ./vaultage.phar self-update

$ ./vaultage.phar encrypt
$ ./vaultage.phar encrypt --files=myfile.yml
$ ./vaultage.phar decrypt
$ ./vaultage.phar decrypt --files=myfile.yml.gpg

$ ./vaultage.phar diff --files=a.gpg,b.gpg
$ ./vaultage.phar diff --files=a.yml,a.gpg

Options

  • configuration-file: define a specific configuration file (default is .vaultage.json).
  • files: apply encryption or decryption on defined file(s), you can define many file by using comma separator.
  • verbose: output the encrypted/decrypted data.
  • write: write on the output file.

Crypto Backends

  • Basic: packed by default, without any requirements.
  • GPG: for serious guys ;)

Capifony integration

Just hook in the right place with this kind of recipe:

before "deploy:share_childs" do
    origin_file = "app/config/parameters/"+rails_env+".yml"
    system "vaultage decrypt --write"

    destination_file = latest_release + "/app/config/parameters.yml" # Notice the
    latest_release
    top.upload(origin_file, destination_file)
end