FROM ubuntu:16.04

RUN apt-get update && apt-get install -y wget apt-transport-https git make gcc g++ rabbitmq-server

RUN wget https://github.com/Yelp/dumb-init/releases/download/v1.2.0/dumb-init_1.2.0_amd64.deb
RUN dpkg -i dumb-init_*.deb

RUN wget -q https://sensu.global.ssl.fastly.net/apt/pubkey.gpg -O- | apt-key add -
RUN echo "deb     https://sensu.global.ssl.fastly.net/apt xenial main" | tee /etc/apt/sources.list.d/sensu.list
RUN apt-get update && apt-get install -y sensu

COPY ./.git ./.git
COPY ./Gemfile ./Gemfile
COPY ./Gemfile.lock ./Gemfile.lock
COPY ./sensu-extension-tueor.gemspec ./sensu-extension-tueor.gemspec
COPY ./lib/sensu/extension/tueor/version.rb ./lib/sensu/extension/tueor/version.rb

RUN /opt/sensu/embedded/bin/gem install bundler && \
    /opt/sensu/embedded/bin/bundle

COPY ./lib ./lib
COPY ./bin ./bin
COPY ./.gitignore ./.gitignore
COPY ./.rubocop.yml ./.rubocop.yml
COPY ./.ruby-version ./.ruby-version
COPY ./README.md ./README.md
COPY ./Rakefile ./Rakefile

RUN /opt/sensu/embedded/bin/gem build ./sensu-extension-tueor.gemspec && \
    /opt/sensu/embedded/bin/gem install ./sensu-extension-tueor-*.gem

COPY ./test/docker/config/sensu.json /etc/sensu/config.json
COPY ./test/docker/extensions /etc/sensu/extensions
COPY ./test/docker/secrets /etc/sensu/secrets
COPY . .

ENTRYPOINT ["/usr/bin/dumb-init", "--"]
CMD ["./test/docker/run.sh"]