toku 0.1.0.2 → 0.1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +25 -2
- data/lib/tasks/generate_config.rake +17 -0
- data/lib/toku/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 807b82f4f96731a6608be9242124f961aac40cce
|
4
|
+
data.tar.gz: a180d4a1d099102aff7881ca02703f36de5f841f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ef78bfd7ef50ee764560ae6412004ee302a0ff5a2e8dd67e7c5651b4e938e0928d9c346d48a67eec76149cacf3b88b509f24024bf880eb7fa68bf22f5d9246c0
|
7
|
+
data.tar.gz: f126394c13afbc197d1461e7c6ba3924b5f9fceea92e47820022263475d170546ce8c397dd65f888740bb4f01aba1a9605a7eb12fb9c7c5d35c849b20bb5dd06
|
data/README.md
CHANGED
@@ -29,7 +29,7 @@ Users can define custom filters by implementing a `Toku::ColumnFilter` subclass
|
|
29
29
|
```ruby
|
30
30
|
module Toku
|
31
31
|
class NewFilter < Toku::ColumnFilter
|
32
|
-
def initialize(
|
32
|
+
def initialize(value, options)
|
33
33
|
end
|
34
34
|
|
35
35
|
def call(_)
|
@@ -43,7 +43,30 @@ Which can be then referenced in the config file using the key of the mapping has
|
|
43
43
|
|
44
44
|
## Config file specification
|
45
45
|
|
46
|
-
|
46
|
+
Config file must look like this and specifiy for each column of each table a filter to limit any potential leak of sensitive data.
|
47
|
+
|
48
|
+
```yaml
|
49
|
+
table_a:
|
50
|
+
columns:
|
51
|
+
id:
|
52
|
+
- none
|
53
|
+
first_name:
|
54
|
+
- faker_first_name:
|
55
|
+
parameter1: 'something'
|
56
|
+
parameter2: 'something_else'
|
57
|
+
last_name:
|
58
|
+
- faker_last_name
|
59
|
+
email:
|
60
|
+
- faker_email
|
61
|
+
created_at:
|
62
|
+
- none
|
63
|
+
rows:
|
64
|
+
- max_creation_date:
|
65
|
+
cutoff_date: 2017-01-15
|
66
|
+
table_b:
|
67
|
+
rows:
|
68
|
+
- drop
|
69
|
+
```
|
47
70
|
|
48
71
|
## Development
|
49
72
|
|
@@ -0,0 +1,17 @@
|
|
1
|
+
require 'yaml'
|
2
|
+
|
3
|
+
namespace :toku
|
4
|
+
desc 'Generate base config file from your base database schema in Rails'
|
5
|
+
task :genesis_rails
|
6
|
+
File.open(Rails.root.join('tmp').join('config.yml'), 'w') do |f|
|
7
|
+
hash = {}
|
8
|
+
ActiveRecord::Base.connection.tables.each do |table|
|
9
|
+
hash[table] = { 'columns' => {}, 'rows' => [nil] }
|
10
|
+
ActiveRecord::Base.connection.columns(table).map(&:name).each do |column|
|
11
|
+
hash[table]['columns'][column] = ['drop']
|
12
|
+
end
|
13
|
+
end
|
14
|
+
f.write hash.to_yaml
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
data/lib/toku/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: toku
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.0.
|
4
|
+
version: 0.1.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- PSKL
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2018-01-
|
12
|
+
date: 2018-01-03 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -98,6 +98,7 @@ files:
|
|
98
98
|
- Rakefile
|
99
99
|
- bin/console
|
100
100
|
- bin/setup
|
101
|
+
- lib/tasks/generate_config.rake
|
101
102
|
- lib/toku.rb
|
102
103
|
- lib/toku/errors/column_filter_missing_error.rb
|
103
104
|
- lib/toku/errors/schema_mismatch_error.rb
|