envl 0.0.4 → 0.0.5
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/lib/envl.rb +11 -2
 - metadata +1 -1
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 341a20c85eafb1226918c713ea9861e29b6a3063430fee8abb8d5d75b6eb101a
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 497f8f7ec3c0ab0c9da219c98f2007ec5a761655b88482cb7b3397016b690e59
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: aae876744e38e3a1623cbbe83173365764efe784766a56651cad928ca2d85d73ba156d624b876b80ec3d5a1797f807e6ae443d19e4df13cd23de1aee42261468
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 79440f6dbf9021128a3167c196c8e76e5e47707a1497d980cf0cbe4489ea524cd4dd5d40ed38cb73956c6ece969773b0ee43f714880af5b616fc9446d02a4c26
         
     | 
    
        data/lib/envl.rb
    CHANGED
    
    | 
         @@ -1,14 +1,21 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # A simple environment variable loader that reads .env files.
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
3 
     | 
    
         
             
            class Envl
         
     | 
| 
      
 4 
     | 
    
         
            +
                @@loaded_vars = []
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
       4 
6 
     | 
    
         
             
                # automatically finds all .env files and loads them into ENV.
         
     | 
| 
       5 
7 
     | 
    
         
             
                def self.auto_load
         
     | 
| 
       6 
8 
     | 
    
         
             
                    files = ['*.env', '*.env.*'].map { |s| Dir.glob(s, File::FNM_CASEFOLD) }.flatten.uniq
         
     | 
| 
       7 
9 
     | 
    
         
             
                    self.load(files)
         
     | 
| 
       8 
10 
     | 
    
         
             
                end
         
     | 
| 
       9 
11 
     | 
    
         | 
| 
      
 12 
     | 
    
         
            +
                def self.get_loaded_vars
         
     | 
| 
      
 13 
     | 
    
         
            +
                    @@loaded_vars
         
     | 
| 
      
 14 
     | 
    
         
            +
                end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
       10 
16 
     | 
    
         
             
                # accepts an array of .env files and load thems into ENV.
         
     | 
| 
       11 
17 
     | 
    
         
             
                def self.load(files)
         
     | 
| 
      
 18 
     | 
    
         
            +
                    @@loaded_vars = []
         
     | 
| 
       12 
19 
     | 
    
         
             
                    files.each do |f|
         
     | 
| 
       13 
20 
     | 
    
         
             
                        self.load_file(f)
         
     | 
| 
       14 
21 
     | 
    
         
             
                    end
         
     | 
| 
         @@ -19,12 +26,14 @@ class Envl 
     | 
|
| 
       19 
26 
     | 
    
         
             
                def self.load_file(file)
         
     | 
| 
       20 
27 
     | 
    
         
             
                    begin
         
     | 
| 
       21 
28 
     | 
    
         
             
                        return if not ['.env'].include? File.extname(file).downcase 
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
       22 
30 
     | 
    
         
             
                        File.readlines(file).each do |line|
         
     | 
| 
       23 
     | 
    
         
            -
                            tokens = line.split('=')
         
     | 
| 
      
 31 
     | 
    
         
            +
                            tokens = line.split('=').map {|s| s.strip }
         
     | 
| 
       24 
32 
     | 
    
         
             
                            if tokens.size > 1 and not tokens[0].nil? and not tokens[1].nil?
         
     | 
| 
       25 
33 
     | 
    
         
             
                                key = tokens[0].strip
         
     | 
| 
       26 
     | 
    
         
            -
                                value = tokens[1].gsub("'", '') 
     | 
| 
      
 34 
     | 
    
         
            +
                                value = tokens[1].gsub("'", '')
         
     | 
| 
       27 
35 
     | 
    
         
             
                                ENV[key] = value
         
     | 
| 
      
 36 
     | 
    
         
            +
                                @@loaded_vars << key
         
     | 
| 
       28 
37 
     | 
    
         
             
                            end
         
     | 
| 
       29 
38 
     | 
    
         
             
                        end
         
     | 
| 
       30 
39 
     | 
    
         
             
                    rescue => error
         
     |