Sha256: 008aacb7c7d3d1b6ac18ac1a3e9519723c0b6c841de1d6fccd6d81f894e0fe0d

Contents?: true

Size: 852 Bytes

Versions: 109

Compression:

Stored size: 852 Bytes

Contents

#!/usr/bin/env ruby
# WANT_JSON
# ^ i think this is something telling ansible to provide JSON args?

require 'json'
require 'shellwords'
require 'pp'

def main
  input = nil
  args = nil
  changed = false

  begin
    input = File.read ARGV[0]
    args = JSON.load input

    eval <<-END
      def in_sync?
        #{ args['pre'] || '' }
        #{ args['in_sync?'] }
      end
    END
    
    eval <<-END
      def sync
        #{ args['pre'] || '' }
        #{ args['sync'] }
      end
    END
    
    unless in_sync?
      sync
      changed = true
    end

    print JSON.dump({
      'changed' => changed,
    })
  rescue Exception => e
    print JSON.dump({
      'failed' => true,
      'msg' => e,
      # 'input' => input,
      'args' => args,
      # 'ARGV' => ARGV,
      # 'ruby' => RUBY_VERSION,
    })
  end
end

main if __FILE__ == $0

Version data entries

109 entries across 109 versions & 1 rubygems

Version Path
qb-0.1.59 roles/nrser.rb/library/sync.rb.rb
qb-0.1.58 roles/nrser.rb/library/sync.rb.rb
qb-0.1.57 roles/nrser.rb/library/sync.rb.rb
qb-0.1.56 roles/nrser.rb/library/sync.rb.rb
qb-0.1.55 roles/nrser.rb/library/sync.rb
qb-0.1.54 roles/nrser.rb/library/sync.rb
qb-0.1.53 roles/nrser.rb/library/sync.rb
qb-0.1.52 roles/nrser.rb/library/sync.rb
qb-0.1.51 roles/nrser.rb/library/sync.rb
qb-0.1.50 roles/nrser.rb/library/sync.rb
qb-0.1.49 roles/nrser.rb/library/sync.rb
qb-0.1.48 roles/nrser.rb/library/sync.rb
qb-0.1.47 roles/nrser.rb/library/sync.rb
qb-0.1.46 roles/nrser.rb/library/sync.rb
qb-0.1.45 roles/nrser.rb/library/sync.rb
qb-0.1.44 roles/nrser.rb/library/sync.rb
qb-0.1.43 roles/nrser.rb/library/sync.rb
qb-0.1.42 roles/nrser.rb/library/sync.rb
qb-0.1.41 roles/nrser.rb/library/sync.rb
qb-0.1.40 roles/nrser.rb/library/sync.rb