Generate scrambled potgresql dump for rails application.
Add this line to your application's Gemfile:
gem 'pgdump_scrambler'
And then execute:
$ bundle
Genarate config file.
bundle exec rake pgdump_scrambler:config_from_db
Fix column scramble functions in config/pgdump_scrambler.yml
from:
tables:
users:
email: unspecified
name: unspecified
age: unspecified
to:
tables:
users:
email: uemail
name: sbytes
age: nop
Dump the scrambled database.
bundle exec rake pgdump_scrambler:dump
bytes
random bytes (each byte is one of0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ+-_
)sbytes
random bytes (each byte is one of0123456789abcdefghijklmnopqrstuvwxyz
)digits
random digitsemail
random email addressuemail
random unique email addressinet
random ip addressjson
string value to random bytes, number value to random digits, keep data structure and key namesnullify
NULLempty
empty stringconst[VALUE]
constant valuenop
untouched
After checking out the repo, run bin/setup
to install dependencies. Then, run rake spec
to run the tests. You can also run bin/console
for an interactive prompt that will allow you to experiment.
To install this gem onto your local machine, run bundle exec rake install
. To release a new version, update the version number in version.rb
, and then run bundle exec rake release
, which will create a git tag for the version, push git commits and tags, and push the .gem
file to rubygems.org.
Bug reports and pull requests are welcome on GitHub at https://github.com/shunichi/pgdump_scrambler.
The gem is available as open source under the terms of the MIT License.