summaryrefslogtreecommitdiff
path: root/fakelaminar
blob: 440196089e76d90476ed1f5f02257d04afcbcc86 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# vim: ft=sh
# Fake laminar environment to be able to do test run on any host

# Make sure that we are running this script with absolute path
echo "$0" | grep -q '^/' || exec "$(pwd)/$0" 

# Add path to scripts
export PATH="$(dirname "$(readlink -f "$0")")/../scripts:$PATH"

# Note: Changing home variable relly changes home directory to local laminar-fake.
# This does not work for all commands and specially for ssh it does not but we
# require this because thanks to that we don't have to setup ssh configuration
# copy.
export HOME="$PWD/laminar-fake"
mkdir -p "$HOME"

# Create link to configuration directory
rm -f "$HOME/cfg"
ln -s "$(dirname $(readlink -f "$0"))/.." "$HOME/cfg"

# Get name of the job from script name
export JOB="$(basename "$0" | sed 's/\.run$//')"

JOBDIR="$HOME/run/$JOB"
mkdir -p "$JOBDIR"

# Set run number
export RUN="$(ls "$JOBDIR" | sed -n '/^[0-9]\+$/p' | sort --numeric-sort | tail -1)"
RUN="${RUN:-0}"
RUN="$(expr "$RUN" + 1)"
# Create directory for this run
mkdir -p "$JOBDIR/$RUN"
cd "$JOBDIR/$RUN"

# Set workspace
export WORKSPACE="$JOBDIR/workspace"
mkdir -p "$WORKSPACE"

# Set archive
export ARCHIVE="$HOME/archive/$JOB/$RUN"
mkdir -p "$ARCHIVE"

# TODO missing variables: RESULT, LAST_RESULT

# Drop JOBDIR variable
JOBDIR=


# Fake laminarc command
laminarc() {
	# TODO this is currently not supported but we should implement it in future.
	false
}

echo "========== Laminar environment is faked =========="