Sha256: 96bba88b0787197bb1f6594fecdfa52ebc27fd2dc87fd56d91a685110d8e89e2

Contents?: true

Size: 353 Bytes

Versions: 4

Compression:

Stored size: 353 Bytes

Contents

# frozen_string_literal: true

class Dotcrypt::Serializers::ENV < Dotcrypt::Serializers::Serializer
  def call
    # TODO: validate variable names
    Dotcrypt::Flattener.call(@config).reduce("") do |result, (k, v)|
      result + (v.nil? ? "" : "export #{k}='#{escape(v)}'\n")
    end
  end

  private

  def escape(val) = val.gsub("'", %q('"'"'))
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
dotcrypt-0.2.0 lib/dotcrypt/serializers/env.rb
dotcrypt-0.1.3 lib/dotcrypt/serializers/env.rb
dotcrypt-0.1.2 lib/dotcrypt/serializers/env.rb
dotcrypt-0.1.0 lib/dotcrypt/serializers/env.rb