annotate patch_stringmlst.sh @ 20:4dbbf92ff30a draft default tip

planemo upload commit 936a627c4fc706080f07ec678f89e8256a7e7895-dirty
author jpayne
date Fri, 15 May 2026 17:55:16 +0000
parents 4c4899031795
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
1 #!/usr/bin/env bash
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
2
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
3 # patch stringMLST.py log path: replace dbPrefix reference with cwd.
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
4 # patches all occurrences (at line 1464 and predict section at line 1478).
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
5
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
6 set -euo pipefail
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
7
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
8 STRINGMLST="$PREFIX/bin/stringMLST.py"
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
9
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
10 if [ ! -f "$STRINGMLST" ]; then
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
11 echo "SKIP: $STRINGMLST not found"
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
12 exit 0
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
13 fi
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
14
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
15 python3 << 'PATCH_WITH_PY'
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
16 import os
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
17
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
18 p = os.path.join(os.environ["PREFIX"], "bin", "stringMLST.py")
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
19 with open(p) as f:
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
20 lines = f.readlines()
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
21
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
22 original = " log = dbPrefix+'.log'\n"
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
23 commented = " # log = dbPrefix+'.log'\n"
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
24 replacement = ' log = os.path.join(os.getcwd(), "kmer.log")\n'
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
25
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
26 # Count occurrences BEFORE modifying
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
27 occurrences = lines.count(original)
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
28
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
29 if occurrences == 0:
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
30 print("SKIP: stringMLST.py has 0 occurrences, expected at least 1")
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
31 exit(0)
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
32
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
33 out = []
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
34 for line in lines:
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
35 if line.rstrip("\n") == original.rstrip("\n"):
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
36 out.append(commented)
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
37 out.append(replacement)
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
38 else:
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
39 out.append(line)
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
40
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
41 with open(p, "w") as f:
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
42 f.writelines(out)
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
43
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
44 print("PATCHED: stringMLST.py log path fixed (%d occurrences)" % occurrences)
4c4899031795 planemo upload commit fcafae43456eb929e62b5c879ac954f75745bbf8
galaxytrakr
parents:
diff changeset
45 PATCH_WITH_PY