# Dockerfile

FROM centos:centos7

ENV JAVA_HOME /usr
WORKDIR /var/liquibase

RUN yum -q -y update && \
    yum -q -y install mysql \
        make \
        nc \
        java-1.8.0-openjdk \
        java-1.8.0-openjdk-devel

# Install Dependencies
ADD https://github.com/liquibase/liquibase/releases/download/v3.8.9/liquibase-3.8.9.tar.gz .
ADD https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.16.tar.gz .

COPY db.changelog-master.xml entrypoint.sh example-migrations.sql pom.xml ./

# Update and install packages

# Install build tools
RUN yum -q -y install automake \
        curl-devel \
        expat-devel \
        gcc \
        gettext-devel \
        perl-devel \
        perl-ExtUtils-MakeMaker \
        openssl-devel \
        zlib-devel

# Build liquibase
RUN tar -xzf mysql-connector-java-8.0.16.tar.gz && \
    mkdir /opt/liquibase && \
    tar -xzf liquibase-3.8.9.tar.gz -C /opt/liquibase && \
    chmod +x /opt/liquibase/liquibase && \
    ln -s /opt/liquibase/liquibase /usr/local/bin/ && \
    rm liquibase-3.8.9.tar.gz mysql-connector-java-8.0.16.tar.gz

# Remove development libraries
RUN yum -q -y remove automake \
        curl-devel \
        expat-devel \
        gcc \
        gettext-devel \
        perl-devel \
        perl-ExtUtils-MakeMaker \
        openssl-devel \
        zlib-devel && \
    yum -q -y autoremove && \
    yum -q -y clean all && \
    rm -rf /var/cache/yum

ENTRYPOINT ["./entrypoint.sh"]
