# sshd
#
# VERSION               0.0.3

FROM	ubuntu:12.04
MAINTAINER Vishanth Balasubramaniam "vishantb@wso2.com"

ENV DEBIAN_FRONTEND noninteractive

###########################################################
### updating the package with missing archives
###########################################################
RUN apt-get -y update --fix-missing

###########################################################
### ssh
###########################################################
RUN apt-get install -y openssh-server
RUN echo 'root:password' |chpasswd
RUN mkdir -p /var/run/sshd

###########################################################
### Install Cassandra
### Download the latest apache mirror and Run
###########################################################
RUN echo "deb http://us.archive.ubuntu.com/ubuntu/ precise universe" >> /etc/apt/sources.list
RUN apt-get install -y apt-utils g++ 
RUN apt-get install -y git curl build-essential make gcc wget

# Cassandra Mirror
#RUN cd /opt && wget http://mirrors.advancedhosters.com/apache/cassandra/2.0.10/apache-cassandra-2.0.10-bin.tar.gz
#RUN cd /opt && wget http://supergsego.com/apache/cassandra/1.2.19/apache-cassandra-1.2.19-src.tar.gz
#RUN cd /opt && wget http://supergsego.com/apache/cassandra/2.1.0/apache-cassandra-2.1.0-src.tar.gz
RUN cd /opt && wget http://supergsego.com/apache/cassandra/2.1.0/apache-cassandra-2.1.0-bin.tar.gz

#RUN cd /opt && wget http://supergsego.com/apache/cassandra/2.1.0/apache-cassandra-2.1.0-src.tar.gz

#RUN cd /root && wget http://www.apache.org/dyn/closer.cgi?path=/cassandra/2.1.0/apache-cassandra-2.1.0-bin.tar.gz

#ADD apache-cassandra-2.1.0.tar.gz /root/apache-cassandra-2.1.0.tar.gz

RUN cd /opt && tar zxf apache-cassandra-*.tar.gz
RUN rm /opt/*.tar.gz
RUN mv /opt/apache-cassandra-* /opt/cassandra

RUN apt-get install -y lsof

#ADD cassandra.yaml /opt/cassandra/conf/cassandra.yaml
#ADD cassandra-env.sh /opt/cassandra/conf/cassandra-env.sh
#ADD log4j-server.properties /opt/cassandra/conf/log4j-server.properties
ADD start.sh /opt/cassandra/bin/start.sh
#ADD cassandra-topology.properties /opt/cassandra/conf/cassandra-topology.properties
RUN chmod 755 /opt/cassandra/bin/start.sh
RUN chmod +x /opt/cassandra/bin/cassandra.in.sh
RUN mkdir /data
RUN mkdir /logs
RUN mkdir /init

VOLUME [ "/init" ]
VOLUME [ "/logs" ]
VOLUME [ "/data" ]

###########################################################
### Installing the prerequisite
###########################################################
RUN apt-get install -y apache2
RUN apt-get install -q -y zip unzip
RUN apt-get install -q -y telnet iputils-ping curl
RUN apt-get install -q -y curl facter nano vim
#RUN apt-get install -q -y puppet


###########################################################
### Installing JDK and Apache Stratos Cartridge Agent
###########################################################
#ADD jdk1.6.0_24.tar.gz /opt/
ADD jdk1.7.0_60.tar.gz /opt/
RUN ln -s /opt/jdk1.7.0_60 /opt/java
ADD apache-stratos-cartridge-agent-4.0.0.tgz /mnt/

RUN echo "export JAVA_HOME=/opt/java" >> /root/.bashrc
#RUN echo "export PATH=$PATH:/opt/java/bin" >> /root/.bashrc

RUN echo "export CASSANDRA_HOME=/opt/cassandra" >> /root/.bashrc
RUN echo "export PATH=$PATH:/opt/cassandra/bin:/opt/java/bin" >> /root/.bashrc

RUN echo "export CASSANDRA_CONF=/opt/cassandra/conf" >> /root/.bashrc
RUN echo "export CLASSPATH=/opt/cassandra/lib/*.jar" >> /root/.bashrc


###########################################################
### ActiveMQ
###########################################################
ADD packs/activemq/activemq-broker-5.10.0.jar /mnt/apache-stratos-cartridge-agent-4.0.0/lib/activemq-broker-5.10.0.jar
ADD packs/activemq/activemq-client-5.10.0.jar /mnt/apache-stratos-cartridge-agent-4.0.0/lib/activemq-client-5.10.0.jar
ADD packs/activemq/geronimo-j2ee-management_1.1_spec-1.0.1.jar /mnt/apache-stratos-cartridge-agent-4.0.0/lib/geronimo-j2ee-management_1.1_spec-1.0.1.jar
ADD packs/activemq/geronimo-jms_1.1_spec-1.1.1.jar /mnt/apache-stratos-cartridge-agent-4.0.0/lib/geronimo-jms_1.1_spec-1.1.1.jar
ADD packs/activemq/hawtbuf-1.10.jar /mnt/apache-stratos-cartridge-agent-4.0.0/lib/hawtbuf-1.10.jar

###########################################################
### Scripts
###########################################################
RUN mkdir /root/bin
ADD scripts/init.sh /root/bin/
RUN chmod +x /root/bin/init.sh
ADD scripts/stratos_sendinfo.rb /usr/lib/ruby/1.8/facter/
ADD scripts/metadata_svc_bugfix.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/metadata_svc_bugfix.sh
ADD scripts/run_scripts.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/run_scripts.sh
RUN chmod +x /opt/cassandra/bin/cassandra.in.sh

###########################################################
### Setting up the Library
###########################################################
RUN mkdir p - /root/lib
RUN cp /lib/x86_64-linux-gnu/libnss_files.so.2 /root/lib
RUN perl -pi -e 's:/etc/hosts:/tmp/hosts:g' /root/lib/libnss_files.so.2
RUN cp /etc/hosts /tmp/hosts
ENV LD_LIBRARY_PATH /root/lib
RUN locale-gen en_US.UTF-8


###########################################################
### Opening ports
###########################################################
EXPOSE 22
EXPOSE 80

EXPOSE 7000
EXPOSE 7001
EXPOSE 7199
EXPOSE 9160
EXPOSE 9042

###########################################################
### Run
###########################################################

#CMD "/opt/cassandra/bin/start.sh"
ENTRYPOINT /usr/local/bin/run_scripts.sh | /usr/sbin/sshd -D
