Charm: oneiric/hadoop-mapreduce
Revision: 5
Hook: mapreduce-relation-joined
#!/bin/bash
set -ux
WORK_DIR=`config-get job_workdir`
PAYLOAD_URL=`config-get job_payload`
JOB_URL=`config-get job_source`
JOB_JAR=${WORK_DIR}/`basename ${JOB_URL}`
JOB_CLASS=`config-get job_class`
SOURCE_FILE=${WORK_DIR}/`basename ${PAYLOAD_URL}`
IN_DIR=`config-get job_data_dir`
SIZE=`config-get job_size`
NUM_MAPS=`config-get job_maps`
NUM_REDUCES=`config-get job_reduces`
OUT_DIR=`config-get job_output_dir`
mkdir -p ${WORK_DIR}
chown -R hdfs.hdfs ${WORK_DIR}
cd ${WORK_DIR}
curl -O ${PAYLOAD_URL}
curl -O ${JOB_URL}
su -c "hadoop fs -mkdir ${IN_DIR}" hdfs
su -c "hadoop fs -copyFromLocal ${SOURCE_FILE} ${IN_DIR}" hdfs
su -c "hadoop jar ${JOB_JAR} ${JOB_CLASS} ${IN_DIR} ${OUT_DIR}" hdfs &