#!/usr/local/bin/perl -w
###########################################
# fs-index
# Mike Schilli, 2014 (m@perlmeister.com)
###########################################
use strict;
use Elasticsearch;
use File::Find;
use Sysadm::Install qw( slurp );

my $idx = "fs";

my( $base ) = @ARGV;
die "usage: $0 basedir" if !defined $base;

my $es = Elasticsearch->new( );
eval { $es->indices->delete( index => $idx ) };

find sub {
  my $file = $File::Find::name;
  return if ! -f $file;
  return if ! -T $file;
  return if -s $file > 100_000;
  my $content = slurp $file;

  $es->index(
    index => $idx,
    type  => 'text',
    body  => {
      content => $content,
      file    => $file,
    }
  );
  print "Added $file\n";
}, $base;
