Skip to content

Commit 63571e3

Browse files
committed
feat: setting /DIRAC/PreferredURLPatterns if it is in pilot.json
1 parent 3268f4b commit 63571e3

4 files changed

Lines changed: 14 additions & 3 deletions

File tree

.github/workflows/integration.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ jobs:
5353
sed -i "s#VAR_CS#https://lbcertifdirac70.cern.ch:9135/Configuration/Server#g" pilot.json
5454
sed -i "s#VAR_USERDN#/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=alboyer/CN=819281/CN=Alexandre Franck Boyer#g" pilot.json
5555
sed -i "s#VAR_USERDN_GRIDPP#${DIRACUSERDN_GRIDPP}#g" pilot.json
56+
sed -i "s#VAR_PREF_URL_PATTERN#.*\.cern\.ch/.*#g" pilot.json
5657
g_job="testintegrationworkflow${GITHUB_JOB//-/}"
5758
pilotUUID="${g_job//_/}""$(shuf -i 2000-65000 -n 1)"
5859
pilotUUID=$(echo $pilotUUID | rev | cut -c 1-32 | rev)
@@ -115,6 +116,7 @@ jobs:
115116
sed -i "s#VAR_CS#https://lbcertifdirac70.cern.ch:9135/Configuration/Server#g" pilot.json
116117
sed -i "s#VAR_USERDN#/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=alboyer/CN=819281/CN=Alexandre Franck Boyer#g" pilot.json
117118
sed -i "s#VAR_USERDN_GRIDPP#${DIRACUSERDN_GRIDPP}#g" pilot.json
119+
sed -i "s#VAR_PREF_URL_PATTERN#.*\.cern\.ch/.*#g" pilot.json
118120
g_job="testintegrationworkflow${GITHUB_JOB//-/}"
119121
pilotUUID="${g_job//_/}""$(shuf -i 2000-65000 -n 1)"
120122
pilotUUID=$(echo $pilotUUID | rev | cut -c 1-32 | rev)
@@ -164,6 +166,7 @@ jobs:
164166
sed -i "s#VAR_CS#https://lbcertifdirac70.cern.ch:9135/Configuration/Server#g" pilot.json
165167
sed -i "s#VAR_USERDN#/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=alboyer/CN=819281/CN=Alexandre Franck Boyer#g" pilot.json
166168
sed -i "s#VAR_USERDN_GRIDPP#${DIRACUSERDN_GRIDPP}#g" pilot.json
169+
sed -i "s#VAR_PREF_URL_PATTERN#.*\.cern\.ch/.*#g" pilot.json
167170
g_job="testintegrationworkflow${GITHUB_JOB//-/}"
168171
pilotUUID="${g_job//_/}""$(shuf -i 2000-65000 -n 1)"
169172
pilotUUID=$(echo $pilotUUID | rev | cut -c 1-32 | rev)
@@ -221,6 +224,7 @@ jobs:
221224
sed -i "s#VAR_CS#https://lbcertifdirac70.cern.ch:9135/Configuration/Server#g" pilot.json
222225
sed -i "s#VAR_USERDN#/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=alboyer/CN=819281/CN=Alexandre Franck Boyer#g" pilot.json
223226
sed -i "s#VAR_USERDN_GRIDPP#${DIRACUSERDN_GRIDPP}#g" pilot.json
227+
sed -i "s#VAR_PREF_URL_PATTERN#.*\.cern\.ch/.*#g" pilot.json
224228
g_job="testintegrationworkflow${GITHUB_JOB//-/}"
225229
pilotUUID="${g_job//_/}""$(shuf -i 2000-65000 -n 1)"
226230
pilotUUID=$(echo $pilotUUID | rev | cut -c 1-32 | rev)
@@ -273,6 +277,7 @@ jobs:
273277
sed -i "s#VAR_CS#https://lbcertifdirac70.cern.ch:9135/Configuration/Server#g" pilot.json
274278
sed -i "s#VAR_USERDN#/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=alboyer/CN=819281/CN=Alexandre Franck Boyer#g" pilot.json
275279
sed -i "s#VAR_USERDN_GRIDPP#${DIRACUSERDN_GRIDPP}#g" pilot.json
280+
sed -i "s#VAR_PREF_URL_PATTERN#.*\.cern\.ch/.*#g" pilot.json
276281
g_job="testintegrationworkflow${GITHUB_JOB//-/}"
277282
pilotUUID="${g_job//_/}""$(shuf -i 2000-65000 -n 1)"
278283
pilotUUID=$(echo $pilotUUID | rev | cut -c 1-32 | rev)
@@ -334,6 +339,7 @@ jobs:
334339
sed -i "s#VAR_CS#https://lbcertifdirac70.cern.ch:9135/Configuration/Server#g" pilot.json
335340
sed -i "s#VAR_USERDN#/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=alboyer/CN=819281/CN=Alexandre Franck Boyer#g" pilot.json
336341
sed -i "s#VAR_USERDN_GRIDPP#${DIRACUSERDN_GRIDPP}#g" pilot.json
342+
sed -i "s#VAR_PREF_URL_PATTERN#.*\.cern\.ch/.*#g" pilot.json
337343
g_job="testintegrationworkflow${GITHUB_JOB//-/}"
338344
pilotUUID="${g_job//_/}""$(shuf -i 2000-65000 -n 1)"
339345
pilotUUID=$(echo $pilotUUID | rev | cut -c 1-32 | rev)

Pilot/pilotCommands.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -508,6 +508,8 @@ def _getBasicsCFG(self):
508508
self.cfg.append('-S "%s"' % self.pp.setup)
509509
if self.pp.configServer:
510510
self.cfg.append('-C "%s"' % self.pp.configServer)
511+
if self.pp.preferredURLPatterns:
512+
self.cfg.append("-o /DIRAC/PreferredURLPatterns=%s" % quote(",".join(self.pp.preferredURLPatterns)))
511513
if self.pp.releaseProject:
512514
self.cfg.append('-e "%s"' % self.pp.releaseProject)
513515
self.cfg.append("-o /LocalSite/ReleaseProject=%s" % self.pp.releaseProject)

Pilot/pilotTools.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -908,6 +908,7 @@ def __init__(self):
908908
self.site = ""
909909
self.setup = ""
910910
self.configServer = ""
911+
self.preferredURLPatterns = ""
911912
self.ceName = ""
912913
self.ceType = ""
913914
self.queueName = ""
@@ -1306,6 +1307,8 @@ def __initJSON2(self):
13061307
# the generic one (a list):
13071308
self.configServer = ",".join([str(pv).strip() for pv in self.pilotJSON["ConfigurationServers"]])
13081309

1310+
self.preferredURLPatterns = self.pilotJSON.get("PreferredURLPatterns", self.preferredURLPatterns)
1311+
13091312
# version(a comma separated values in a string). We take the first one. (the default value defined in the code)
13101313
dVersion = pilotOptions.get("Version", self.releaseVersion)
13111314
if dVersion:

Pilot/proxyTools.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
VOMS_FQANS_OID = b"1.3.6.1.4.1.8005.100.100.4"
1010
VOMS_EXTENSION_OID = b"1.3.6.1.4.1.8005.100.100.5"
1111

12-
RE_OPENSSL_ANS1_FORMAT = re.compile(rb"^\s*\d+:d=(\d+)\s+hl=")
12+
RE_OPENSSL_ANS1_FORMAT = re.compile(br"^\s*\d+:d=(\d+)\s+hl=")
1313

1414

1515
def parseASN1(data):
@@ -41,7 +41,7 @@ def getVO(proxy_data):
4141
str: A VO
4242
"""
4343

44-
chain = re.findall(rb"-----BEGIN CERTIFICATE-----\n.+?\n-----END CERTIFICATE-----", proxy_data, flags=re.DOTALL)
44+
chain = re.findall(br"-----BEGIN CERTIFICATE-----\n.+?\n-----END CERTIFICATE-----", proxy_data, flags=re.DOTALL)
4545
for cert in chain:
4646
proc = Popen(["openssl", "x509", "-outform", "der"], stdin=PIPE, stdout=PIPE)
4747
out, _ = proc.communicate(cert)
@@ -61,7 +61,7 @@ def getVO(proxy_data):
6161
if depth <= initial_depth:
6262
break
6363
# Look for a role, if it exists the VO is the first element
64-
match = re.search(rb"OCTET STRING\s+:/([a-zA-Z0-9]+)/Role=", line)
64+
match = re.search(br"OCTET STRING\s+:/([a-zA-Z0-9]+)/Role=", line)
6565
if match:
6666
return match.groups()[0].decode()
6767
raise NotImplementedError("Something went very wrong")

0 commit comments

Comments
 (0)