#!/bin/bash
# This script sets up the base docker container for use with SDP testing.
# It expects to be run as root within the container.
# Create base directories for use by SDP (see mkdirs.sh)
mkdir /hxdepots
mkdir /hxmetadata1
mkdir /hxmetadata2
mkdir /hxlogs
# Create Perforce group and user within that group, and allow them sudo privileges
groupadd perforce
useradd -d /p4 -s /bin/bash -m perforce -g perforce
echo 'perforce ALL=(ALL) NOPASSWD:ALL'> /tmp/perforce
chmod 0440 /tmp/perforce
chown root:root /tmp/perforce
mv /tmp/perforce /etc/sudoers.d
echo perforce:Password | chpasswd
#
# Helpful profile for perforce user login profile - for manual testing mainly
#
BASH_PROF=/p4/.bash_profile
echo 'export PATH=/sdp/Server/Unix/p4/common/bin:$PATH'> $BASH_PROF
echo 'export P4CONFIG=.p4config'>> $BASH_PROF
echo 'export P4P4PORT=1666'>> $BASH_PROF
chown perforce:perforce $BASH_PROF
#
# Script to reset SDP for tests in case of multiple runs.
#
RESET_SDP=/p4/reset_sdp.sh
echo '#!/bin/bash'> $RESET_SDP
echo 'sudo cp -R /sdp /hxdepots'>> $RESET_SDP
echo 'sudo chown -R perforce:perforce /hxdepots/sdp'>> $RESET_SDP
chmod +x $RESET_SDP
chown perforce:perforce $RESET_SDP
#
# Script to run SDP tests - run by Docker entry script below (or can be run
# manually).
#
RUN_SDP_TESTS=/p4/test_sdp.sh
echo '#!/bin/bash'> $RUN_SDP_TESTS
echo '/p4/reset_sdp.sh'>> $RUN_SDP_TESTS
echo 'ln -s /sdp/Server/test/test_SDP.py /p4/test_SDP.py'>> $RUN_SDP_TESTS
echo 'python3.4 /p4/test_SDP.py'>> $RUN_SDP_TESTS
echo 'result=$?'>> $RUN_SDP_TESTS
echo '[[ $result -eq 0 ]] || tail /tmp/SDPTest.log'>> $RUN_SDP_TESTS
echo 'exit $result'>> $RUN_SDP_TESTS
chmod +x $RUN_SDP_TESTS
chown perforce:perforce $RUN_SDP_TESTS
#
# The file run by docker - just runs the above script as perforce user
# Note that the output file is collected by script run_docker_tests.sh
#
DOCKER_ENTRY=/p4/docker_entry.sh
echo '#!/bin/bash'> $DOCKER_ENTRY
echo 'su -l perforce -c /p4/test_sdp.sh > /sdp/test/output/test-${TESTOS}.out 2>&1'>> $DOCKER_ENTRY
chmod +x $DOCKER_ENTRY
chown perforce:perforce $DOCKER_ENTRY
| # | Change | User | Description | Committed | |
|---|---|---|---|---|---|
| #7 | 25138 | Robert Cowham | mkrep with ha server | ||
| #6 | 25116 | Robert Cowham | Docker compose tests starting to get there... | ||
| #5 | 25113 | Robert Cowham | Merge latest changes from dev | ||
| #4 | 23433 | Robert Cowham | Got it working with basic ssh stuff if sshd run manually on a box | ||
| #3 | 22486 | Robert Cowham | Python 3.5 | ||
| #2 | 22142 | Robert Cowham | Merge in latest changes from Dev | ||
| #1 | 20726 | Robert Cowham | Catch up from dev | ||
| //guest/perforce_software/sdp/dev/test/docker/setup_container.sh | |||||
| #2 | 19130 | Robert Cowham | Added comments - no functional change | ||
| #1 | 19045 | Robert Cowham |
Add docker file for Centos7 Refactor to move common stuff to a shell script. |
||