#
# This file is part of vospace-transfer-service
# Copyright (C) 2021 Istituto Nazionale di Astrofisica
# SPDX-License-Identifier: GPL-3.0-or-later
#

# Use 'base' as base image
FROM git.ia2.inaf.it:5050/vospace/vospace-transfer-service/base

# Create a new user called transfer_service, create the home directory and set the default shell
RUN useradd -m -s /bin/bash transfer_service

# Test users
RUN useradd -m -s /bin/bash sonia.zorba
RUN useradd -m -s /bin/bash sara.bertocco
RUN useradd -m -s /bin/bash cristiano.urban

# Set up a workdir for the container
WORKDIR /home/transfer_service/

# Copy source code and cron files and sample config file
COPY wait-for-it.sh start.sh *.py ./
RUN  chown transfer_service wait-for-it.sh *.py && \ 
     chmod 755 wait-for-it.sh *.py
RUN mkdir -p /etc/vos_ts
COPY config/* /etc/vos_ts/
RUN chmod -R 755 /etc/vos_ts

# Configure crontab
RUN /usr/bin/crontab /etc/vos_ts/cron_cleaner

# Create directory for logs and results
RUN mkdir -p /var/log/vos_ts/results

# Copy files for import test
COPY test_import/testdir/ /home/test_import/testdir/
COPY test_import/testdir-md5sum.txt /home/test_import/
RUN chmod -R 755 /home/test_import

# Create a 'store' directory with some files for various users
RUN mkdir /home/cristiano.urban/store /home/cristiano.urban/retrieve && \
    echo "foo?!" > /home/cristiano.urban/store/foo2.txt && \
    mkdir /home/cristiano.urban/store/mydir && \
    echo "Another foo!" > /home/cristiano.urban/store/mydir/another_foo2.txt && \
    mkdir /home/cristiano.urban/store/mydir/dir2 && \
    echo "fooX" > /home/cristiano.urban/store/mydir/dir2/fooX.txt && \
    chown -R cristiano.urban:cristiano.urban /home/cristiano.urban/store && \
    chown -R cristiano.urban:cristiano.urban /home/cristiano.urban/retrieve && \
    chmod -R 755 /home/cristiano.urban/store && \ 
    chmod -R 755 /home/cristiano.urban/retrieve && \
    mkdir /home/sara.bertocco/store /home/sara.bertocco/retrieve && \
    touch /home/sara.bertocco/store/foo4.txt && \
    echo "foo4" > /home/sara.bertocco/store/foo4.txt && \
    chown -R sara.bertocco:sara.bertocco /home/sara.bertocco/store && \
    chown -R sara.bertocco:sara.bertocco /home/sara.bertocco/retrieve && \
    chmod -R 755 /home/sara.bertocco/store && \
    chmod -R 755 /home/sara.bertocco/retrieve && \
    mkdir -p /home/sonia.zorba/store/aaa/bbb && mkdir /home/sonia.zorba/retrieve && \
    touch /home/sonia.zorba/store/aaa/bbb/foo5.txt && \
    echo "foo5" > /home/sonia.zorba/store/aaa/bbb/foo5.txt && \
    chown -R sonia.zorba:sonia.zorba /home/sonia.zorba/store && \
    chown -R sonia.zorba:sonia.zorba /home/sonia.zorba/retrieve && \    
    chmod -R 755 /home/sonia.zorba/store && \
    chmod -R 755 /home/sonia.zorba/retrieve

# Run a shell
CMD /bin/bash
