Module: Momoka
- Defined in:
- lib/momoka.rb,
lib/momoka/cli.rb,
lib/momoka/version.rb
Defined Under Namespace
Classes: CLI
Constant Summary collapse
- VERSION =
'1.0.4'
Class Method Summary collapse
- .encrypt(text, key_file: nil) ⇒ Object
- .load(*filenames, key_file: nil) ⇒ Object
- .load!(*filenames, key_file: nil) ⇒ Object
- .overload(*filenames, key_file: nil) ⇒ Object
- .overload!(*filenames, key_file: nil) ⇒ Object
Class Method Details
.encrypt(text, key_file: nil) ⇒ Object
34 35 36 37 38 39 40 41 42 43 |
# File 'lib/momoka.rb', line 34 def encrypt(text, key_file: nil) key = default_key(key_file: key_file) enc = OpenSSL::Cipher.new('AES-256-CBC').encrypt enc.key = key.byteslice(0, 32) enc.iv = key.byteslice(32, 16) encrypted = Base64.strict_encode64(enc.update(text) + enc.final) ":momoka:#{encrypted}:" end |
.load(*filenames, key_file: nil) ⇒ Object
10 11 12 13 14 |
# File 'lib/momoka.rb', line 10 def load(*filenames, key_file: nil) env = Dotenv.parse(*filenames) decrypt!(env, key_file: key_file) env.each {|k, v| ENV[k] ||= v} end |
.load!(*filenames, key_file: nil) ⇒ Object
16 17 18 19 20 |
# File 'lib/momoka.rb', line 16 def load!(*filenames, key_file: nil) env = Dotenv.parse(*filenames, overwrite: true) decrypt!(env, key_file: key_file) env.each {|k, v| ENV[k] ||= v} end |
.overload(*filenames, key_file: nil) ⇒ Object
22 23 24 25 26 |
# File 'lib/momoka.rb', line 22 def overload(*filenames, key_file: nil) env = Dotenv.parse(*filenames) decrypt!(env, key_file: key_file) env.each {|k, v| ENV[k] = v} end |
.overload!(*filenames, key_file: nil) ⇒ Object
28 29 30 31 32 |
# File 'lib/momoka.rb', line 28 def overload!(*filenames, key_file: nil) env = Dotenv.parse(*filenames, overwrite: true) decrypt!(env, key_file: key_file) env.each {|k, v| ENV[k] = v} end |