You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by eh...@apache.org on 2014/12/26 03:31:22 UTC
svn commit: r1647928 - /lucene/dev/trunk/solr/bin/post
Author: ehatcher
Date: Fri Dec 26 02:31:22 2014
New Revision: 1647928
URL: http://svn.apache.org/r1647928
Log:
SOLR-6435: Add script to simplify posting content to Solr
Added:
lucene/dev/trunk/solr/bin/post (with props)
Added: lucene/dev/trunk/solr/bin/post
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/bin/post?rev=1647928&view=auto
==============================================================================
--- lucene/dev/trunk/solr/bin/post (added)
+++ lucene/dev/trunk/solr/bin/post Fri Dec 26 02:31:22 2014
@@ -0,0 +1,74 @@
+#!/usr/bin/env bash
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Usage:
+# bin/post <collection> <file(s)|url> [<params to SimplePostTool>]
+# bin/post gettingstarted http://lucidworks.com [recursive=1] [delay=1]
+# bin/post tehfiles ~/Documents
+# bin/post signals LATEST-signals.csv
+# bin/post records article*.xml
+# bin/post wizbang events.json
+
+SPT_JAR=dist/solr-core-*.jar
+
+COLLECTION=$1; shift
+
+echo "Collection: " $COLLECTION
+
+PROPS="-Dc=$COLLECTION"
+PARAMS=""
+
+# TODO: Check that $COLLECTION actually exists? How to determine if user omitted collection name as first param?
+
+if [[ $1 == http* ]]; then
+ echo "WEB"
+ PROPS="$PROPS -Ddata=web"
+ PARAMS=$1; shift
+else
+ echo "PATH"
+ if [[ -d $1 ]]; then
+ # Directory
+ PROPS="$PROPS -Ddata=files -Dauto -Drecursive"
+ PARAMS=$1; shift
+ else
+ # Not a URL or existing directory, assume file(s)
+ FILE=$1; shift
+ EXTENSION="${FILE##*.}"
+
+ PARAMS=$FILE
+
+ if [[ $EXTENSION == xml || $EXTENSION == csv || $EXTENSION == json ]]; then
+ # Solr /update supported type (default being application/xml).
+ if [[ $EXTENSION == csv ]]; then
+ PROPS="$PROPS -Dtype=text/csv"
+ fi
+ if [[ $EXTENSION == json ]]; then
+ PROPS="$PROPS -Dtype=application/json"
+ fi
+ else
+ PROPS="$PROPS -Dauto=yes"
+ fi
+
+ fi
+fi
+
+while [ $# -gt 0 ]; do
+ PROPS="$PROPS -D$1"
+ shift
+done
+
+echo java -classpath $SPT_JAR $PROPS org.apache.solr.util.SimplePostTool $PARAMS
+java -classpath $SPT_JAR $PROPS org.apache.solr.util.SimplePostTool $PARAMS