Skip to content
Snippets Groups Projects
Commit c67e5c8e authored by Adrian Sevcenco's avatar Adrian Sevcenco
Browse files

alienpy commands update

parent b950fc0f
No related branches found
No related tags found
1 merge request!28alienpy commands update
......@@ -4,47 +4,63 @@ import shutil
import os
import sys
# import alienpy functions
try:
from alienpy import alien
except Exception as e:
from alienpy.wb_api import PrintDict, retf_print
from alienpy.alien import * # nosec PYL-W0614
except Exception:
try:
from xjalienfs import alien
except Exception as e:
from xjalienfs.wb_api import PrintDict, retf_print
from xjalienfs.alien import * # nosec PYL-W0614
except Exception:
print("Can't load alienpy, exiting...")
sys.exit(1)
# enable automatic pretty printing
from rich import print
alien.setup_logging()
j = alien.AliEn()
########################################
## REQUIRED INITIAILZATION
f_client_nowb = {**alien.AlienSessionInfo['cmd2func_map_nowb']}
f_client_wb = {**alien.AlienSessionInfo['cmd2func_map_client']}
f_server_wb = {**alien.AlienSessionInfo['cmd2func_map_srv']}
# Enable and setup logging
setup_logging() # type: ignore
# Create connection to JAliEn services
wb = InitConnection(cmdlist_func = constructCmdList) # type: ignore
## END OF INITIALIZATION
########################################
f_client_nowb = set(AlienSessionInfo['cmd2func_map_nowb'])
f_client_wb = set(AlienSessionInfo['cmd2func_map_client'])
f_server_wb = set(AlienSessionInfo['cmd2func_map_srv'])
def help2markup(cmd: str):
if not cmd: return
if cmd in f_client_nowb: # these commands do NOT need wb connection
result = f_client_nowb[cmd](['-h'])
if cmd in f_client_wb: # lookup in clien-side implementations list
result = f_client_wb[cmd](j.wb(), ['-h'])
elif cmd in f_server_wb: # lookup in server-side list
result = f_server_wb[cmd](j.wb(), cmd, ['-h'])
else:
result = None
if cmd in AlienSessionInfo['cmd2func_map_nowb']:
result = AlienSessionInfo['cmd2func_map_nowb'][cmd](['-h'])
elif cmd in AlienSessionInfo['cmd2func_map_client']:
result = AlienSessionInfo['cmd2func_map_client'][cmd](wb, ['-h'])
elif cmd in AlienSessionInfo['cmd2func_map_srv']:
result = AlienSessionInfo['cmd2func_map_srv'][cmd](wb, cmd, ['-h'], 'nokeys')
if not result or not result.out:
print_err(result)
print_err(f'FAILED!! : {cmd}')
return
if not result.out: return
help_txt = result.out
help_txt = help_txt.replace(' ', '')
alien.print_out(f'\n### {cmd}\n```\n{help_txt}\n```\n')
if cmd in alien.AlienSessionInfo['cmd2func_map_nowb']:
alien.print_out('!!! warning "client-side implementation"\n\n!!! note "No connection to central servers needed"\n')
if cmd in alien.AlienSessionInfo['cmd2func_map_client']:
alien.print_out('!!! warning "client-side implementation"\n')
alien.print_out('---')
print_out(f'\n### {cmd}\n```\n{help_txt}\n```\n')
if cmd in AlienSessionInfo['cmd2func_map_client']:
print_out('!!! warning "client-side implementation or improvement of the central servers version"\n')
if cmd in AlienSessionInfo['cmd2func_map_nowb']:
print_out('!!! warning "client-side implementation"\n\n!!! note "No connection to central servers needed"\n')
print_out('---')
alien.print_out('# alien.py Command reference guide')
for cmd in alien.AlienSessionInfo['commandlist']: help2markup(cmd)
print_out('# alien.py Command reference guide')
for cmd in AlienSessionInfo['commandlist']: help2markup(cmd)
print()
......@@ -6,7 +6,7 @@ Command format: SEqos <SE name>
Return the QOS tags for the specified SE (ALICE:: can be ommited and capitalization does not matter)
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -22,20 +22,47 @@ usage: access [options] <read|write> <lfn> [<specs>]
---
### archiveList
```
usage: archiveList <filename1> [<or uuid>] ...
```
---
### cat
```
cat <LFN>
Download specified LFN as temporary and pass it to system cat command.
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### ccdb
```
ccdb [-host FQDN] [-history] [-nicetime] QUERY
where query has the form of:
task name / detector name / start time [ / UUID]
or
task name / detector name / [ / time [ / key = value]* ]
-run RUN_NR : filter for a specific run (converts to /runNumber=RUN_NR})
-host : specify other ccdb server than alice-ccdb.cern.ch
-history : use browse to list the whole history of the object
-limit N : limit the history to latest N elements; default = 10
-unixtime : print the unixtime instead of human time
-header "STRING" : add header declarations/filters to the requests sent to CCDB server
-get : download the specified object/objects - full path will be kept
-dst DST_DIR : set a specific destination for download
-mirror : create CCDB snapshot as per specifications of CCDB server
Command format: shell_command arguments lfn
N.B.!! the lfn must be the last element of the command!!
N.B.! The output and error streams will be captured and printed at the end of execution!
for working within application use <edit> or -noout argument
additiona arguments recognized independent of the shell command:
-force : will re-download the lfn even if already present
-noout : will not capture output, the actual application can be used
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### cd
......@@ -43,8 +70,41 @@ additiona arguments recognized independent of the shell command:
usage: cd [dir]
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### cert-info
```
Print user certificate information
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### cert-verify
```
Verify the user cert against the found CA stores (file or directory)
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### certkey-match
```
Check match of user cert with key cert
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### changeDiff
......@@ -57,6 +117,19 @@ options:
---
### checkAddr
```
checkAddr [reference] fqdn/ip port
defaults are: alice-jcentral.cern.ch 8097
reference arg will check connection to google dns and www.cern.ch
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### chmod
```
Usage: chmod -R <octal mode> <path> [<path>...]
......@@ -97,42 +170,57 @@ Command format is of the form of (with the strict order of arguments):
cp <options> src dst
or
cp <options> -input input_file
or
cp <options> -dst dest_dir file1 file2 ... fileN
where src|dst are local files if prefixed with file:// or file: or grid files otherwise
and -input argument is a file with >src dst< pairs
after each src,dst can be added comma separated specifiers in the form of: @disk:N,SE1,SE2,!SE3
where disk selects the number of replicas and the following specifiers add (or remove) storage endpoints from the received list
after each src,dst can be added comma separated specifiers list in the form of: @<QOS>:N,SE1,SE2,!SE3
QOS is a tag of the storage element (usually "disk") followed by the N requested replicas
Additional replicas can be requested by the name of storage elements. (additional to QOS specifications),
or exclusion of storages (prefixing with exclamation mark).
%ALIEN alias have the special meaning of AliEn user home directory
options are the following :
-h : print help
-f : replace destination file (if destination is local it will be replaced only if integrity check fails)
-P : enable persist on successful close semantic
-cksum : check hash sum of the file; for downloads the central catalogue md5 will be verified
-y <nr_sources> : use up to the number of sources specified in parallel (N.B. Ignored as it breaks download of files stored in archives)
-S <aditional TPC streams> : uses num additional parallel streams to do the transfer. (max = 15)
-chunks <nr chunks> : number of chunks that should be requested in parallel
-chunksz <bytes> : chunk size (bytes)
-T <nr_copy_jobs> : number of parralel copy jobs from a set (for recursive copy); defaults to 8 for downloads
-timeout <seconds> : the job will fail if did not finish in this nr of seconds
-retry <times> : retry N times the copy process if failed
-dryrun : just print the src,dst pairs that would have been transfered without actually doing so
-f : No longer used flag! md5 verification of already present destination is default; disable with -fastcheck
-fastcheck : When already present destination is check for validity, check only size not also md5
-S <aditional streams> : uses num additional parallel streams to do the transfer. (max = 15)
-chunks <nr chunks> : number of chunks that should be requested in parallel
-chunksz <bytes> : chunk size (bytes)
-T <nr_copy_jobs> : number of parralel copy jobs from a set (for recursive copy); defaults to 8 for downloads
-timeout <seconds> : the job will fail if did not finish in this nr of seconds
-retry <times> : retry N times the copy process if failed
-ratethreshold <bytes/s> : fail the job if the speed is lower than specified bytes/s
-noxrdzip: circumvent the XRootD mechanism of zip member copy and download the archive and locally extract the intended member.
N.B.!!! for recursive copy (all files) the same archive will be downloaded for each member.
If there are problems with native XRootD zip mechanism, download only the zip archive and locally extract the contents
for the recursive copy of directories the following options (of the find command) can be used:
-glob <globbing pattern> : this is the usual AliEn globbing format; N.B. this is NOT a REGEX!!! defaults to all "*"
-select <pattern> : select only these files to be copied; N.B. this is a REGEX applied to full path!!!
-name <pattern> : select only these files to be copied; N.B. this is a REGEX applied to a directory or file name!!!
-name <verb>_string : where verb = begin|contain|ends|ext and string is the text selection criteria.
verbs are aditive : -name begin_myf_contain_run1_ends_bla_ext_root
N.B. the text to be filtered cannont have underline <_> within!!!
-parent <parent depth> : in destination use this <parent depth> to add to destination ; defaults to 0
-a : copy also the hidden files .* (for recursive copy)
-j <queue_id> : select only the files created by the job with <queue_id> (for recursive copy)
-l <count> : copy only <count> nr of files (for recursive copy)
-o <offset> : skip first <offset> files found in the src directory (for recursive copy)
For the recursive copy of directories the following options (of the find command) can be used:
-j jobid : select only the files created by the job with jobid (for recursive copy)
-l int : copy only <count> nr of files (for recursive copy)
-o int : skip first <offset> files found in the src directory (for recursive copy)
-e exclude_pattern : exclude files that match this pattern (for recursive copy)
Further filtering of the files can be applied with the following options:
-glob <globbing pattern> : this is the usual AliEn globbing format; N.B. this is NOT a REGEX!!! defaults to all "*"
-select <pattern> : select only these files to be copied; N.B. this is a REGEX applied to full path!!!
-name <pattern> : select only these files to be copied; N.B. this is a REGEX applied to a directory or file name!!!
-name <verb>_string : where verb = begin|contain|ends|ext and string is the text selection criteria.
verbs are aditive e.g. -name begin_myf_contain_run1_ends_bla_ext_root
N.B. the text to be filtered cannont have underline i.e >_< within!!!
-exclude string : (client-side) exclude result containing this string
-exclude_re pattern : (client-side) exclude result matching this regex
-user string : (client-side) match the user
-group string : (client-side) match the group
-jobid string : (client-side) match the jobid
-minsize / -maxsize int : (client-side) restrict results to min/max bytes (inclusive)
-mindepth / -maxdepth int : (client-side) restrict results to min/max depth
-min-ctime / -max-ctime int(unix time) : (client-side) restrict results age to min/max unix-time
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -156,6 +244,18 @@ Usage: df
---
### dirs
```
Directory stacking implementation (as in Linux shell):
dirs [-clpv] [+N | -N]
popd [-n] [+N | -N]
pushd [-n] [+N | -N | dir]
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### du
```
Gives the disk space usage of one or more directories
......@@ -169,6 +269,13 @@ options:
---
### echo
```
usage: echo [text]
```
---
### edit
```
Command format: edit lfn
......@@ -177,7 +284,7 @@ After editor termination the file will be uploaded if md5 differs
N.B. EDITOR env var must be set or fallback will be mcedit (not checking if exists)
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -188,8 +295,30 @@ N.B.! The output and error streams will be captured and printed at the end of ex
for working within application use <edit>
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### exit
```
Command format: exit [code] [stderr|err] [message]
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### exitcode | $?
```
return last command exitcode
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### find
......@@ -201,7 +330,7 @@ options:
-a : show hidden .* files
-s : no sorting
-c : print the number of matching files
-x <target LFN> : create the indicated XML collection with the results of the find operation
-x <target LFN> : create the indicated XML collection with the results of the find operation. Use '-' for screen output of the XML content.
-d : return also the directories
-w[h] : long format, optionally human readable file sizes
-j <queueid> : filter files created by a certain job ID
......@@ -210,6 +339,8 @@ options:
-r : pattern is a regular expression
-f : return all LFN data as JSON fields (API flag only)
-y : (FOR THE OCDB) return only the biggest version of each file
-S <site name> : Sort the returned list by the distance to the given site
-e <pattern> : Exclude pattern
```
---
......@@ -218,11 +349,22 @@ options:
```
Client-side implementation of find, it contain the following helpers.
Command formant: find2 <options> <directory>
-select <pattern> : select only these files; N.B. this is a REGEX applied to full path!!! defaults to all ".*"
-name <pattern> : select only these files; N.B. this is a REGEX applied to a directory or file name!!! defaults to all ".*"
-name <verb>_string : where verb = begin|contain|ends|ext and string is the text selection criteria. verbs are aditive e.g.:
-name begin_myf_contain_run1_ends_bla_ext_root
N.B. the text to be filtered cannont have underline <_> within!!!
N.B. directory to be search for must be last element of command
-glob <globbing pattern> : this is the usual AliEn globbing format; N.B. this is NOT a REGEX!!! defaults to all "*"
-select <pattern> : select only these files to be copied; N.B. this is a REGEX applied to full path!!!
-name <pattern> : select only these files to be copied; N.B. this is a REGEX applied to a directory or file name!!!
-name <verb>_string : where verb = begin|contain|ends|ext and string is the text selection criteria.
verbs are aditive e.g. -name begin_myf_contain_run1_ends_bla_ext_root
N.B. the text to be filtered cannont have underline i.e >_< within!!!
-exclude string : (client-side) exclude result containing this string
-exclude_re pattern : (client-side) exclude result matching this regex
-user string: (client-side) match the user
-group string: (client-side) match the group
-jobid string: (client-side) match the jobid
-minsize / -maxsize int : (client-side) restrict results to min/max bytes (inclusive)
-mindepth / -maxdepth int : (client-side) restrict results to min/max depth
-min-ctime / -max-ctime int(unix time) : (client-side) restrict results age to min/max unix-time
The server options:
usage: find [flags] <path> <pattern>
......@@ -232,7 +374,7 @@ options:
-a : show hidden .* files
-s : no sorting
-c : print the number of matching files
-x <target LFN> : create the indicated XML collection with the results of the find operation
-x <target LFN> : create the indicated XML collection with the results of the find operation. Use '-' for screen output of the XML content.
-d : return also the directories
-w[h] : long format, optionally human readable file sizes
-j <queueid> : filter files created by a certain job ID
......@@ -241,10 +383,49 @@ options:
-r : pattern is a regular expression
-f : return all LFN data as JSON fields (API flag only)
-y : (FOR THE OCDB) return only the biggest version of each file
-S <site name> : Sort the returned list by the distance to the given site
-e <pattern> : Exclude pattern
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### fquota
```
fquota: Displays information about File Quotas.
usage: fquota list [-<options>]
Options:
-unit = B|K|M|G: unit of file size
```
---
### getCAcerts
```
Download CA certificates from ALICE alien-cas repository in ~/.globus/certificates
-h/-help : this help information
1st argument string will be taken as destination for certificates directory
to use them preferentially do:
export X509_CERT_DIR=$HOME/.globus/certificates
or just
export ALIENPY_USE_LOCAL_CAS=1
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### getCE
```
Command format: getCE [-name string] [-host string] [-part string]>
Return the informations for the selection
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### getSE
......@@ -253,7 +434,7 @@ Command format: getSE <-id | -name | -srv> identifier_string
Return the specified property for the SE specified label
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -288,6 +469,64 @@ usage: guidinfo <uuid> ...
---
### help | ?
```
Project documentation can be found at:
https://jalien.docs.cern.ch/
https://gitlab.cern.ch/jalien/xjalienfs/blob/master/README.md
the following commands are available:
$? ? SEqos access archiveList
cat ccdb cd cert-info cert-verify
certkey-match changeDiff checkAddr chmod chown
commandlist commit cp deleteMirror df
dirs du echo edit exec
exit exitcodefind find2 fquota
getCAcerts getCE getSE grep groups
guid2lfnguidinfohelp home jobInfo
jobListMatch jquota kill la less
lfn2guidlfn2uri lfnexpiretime listCEs listFilesFromCollection
listSEDistance listSEs listTransfer listpartitions ll
lla logout ls masterjob mcedit
md5sum mirror mkdir more motd
mv nano optimiserLogs packagespfn
pfn-status ping popd prompt ps
pushd pwd queryML quit quota
registerOutput resubmitresyncLDAP rm rmdir
run setCEstatus setSite showTagValue siteJobs
stat submit testSE time timing
toXml token token-destroy token-info token-init
token-verify tokenkey-match top touch type
uptime user uuid version vi
vim w whereis whoami whois
xrd_config xrd_pingxrd_stats xrdstat
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### home
```
Return user home
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### jobInfo
```
Command format: jobInfo id1,id2,.. [ -trace ] [ -proc ]
Print job information for specified ID(s)
-trace will show the trace messages
-proc will show the proc messages
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### jobListMatch
```
jobListMatch: print all the CEs that can run a certain job
......@@ -298,6 +537,17 @@ options:
---
### jquota
```
usage: jquota Displays information about Job Quotas.
options:
list [username]* : get job quota information for the current account, or the indicated ones
set <user> <field> <value> : to set quota fileds (one of maxUnfinishedJobs, maxTotalCpuCost, maxTotalRunningTime)
```
---
### kill
```
usage: kill <jobId> [<jobId>[,<jobId>]]
......@@ -307,17 +557,11 @@ usage: kill <jobId> [<jobId>[,<jobId>]]
### less
```
Command format: shell_command arguments lfn
N.B.!! the lfn must be the last element of the command!!
N.B.! The output and error streams will be captured and printed at the end of execution!
for working within application use <edit> or -noout argument
additiona arguments recognized independent of the shell command:
-force : will re-download the lfn even if already present
-noout : will not capture output, the actual application can be used
less <LFN>
Download specified LFN as temporary and pass it to system less command.
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -340,7 +584,7 @@ http : URIs will be for http end-points of enabled SEs
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -428,7 +672,18 @@ options:
---
### ls
### logout
```
Command format: exit [code] [stderr|err] [message]
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### ls | la | ll | lla
```
usage: ls [-options] [<directory>]
......@@ -441,11 +696,13 @@ options:
-H : human readable file sizes (1024-based); implies '-l'
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### masterjob
```
usage: masterjob <jobId> [-options] [merge|kill|resubmit|expunge]
usage: masterjob <jobIDs> [-options]
options:
-status <status> : display only the subjobs with that status
......@@ -453,15 +710,6 @@ options:
-site <id> : display only the subjobs on that site
-printid : print also the id of all the subjobs
-printsite : split the number of jobs according to the execution site
merge : collect the output of all the subjobs that have already finished
kill : kill all the subjobs
resubmit : resubmit all the subjobs selected
expunge: delete completely the subjobs
You can combine kill and resubmit with '-status <status>' and '-id <id>'.
For instance, if you do something like 'masterjob <jobId> -status ERROR_IB resubmit',
all the subjobs with status ERROR_IB will be resubmitted
```
---
......@@ -474,7 +722,7 @@ After editor termination the file will be uploaded if md5 differs
N.B. EDITOR env var must be set or fallback will be mcedit (not checking if exists)
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -487,12 +735,13 @@ usage: md5sum <filename1> [<or guid>] ...
### mirror
```
mirror Copies a file into another SE
mirror Copies/moves a file to one or more other SEs
Usage:
mirror [-g] [-try <number>] [-S [se[,se2[,!se3[,qos:count]]]]] <lfn> [<SE>]
-g: Use the lfn as a guid
-S: specifies the destination SEs to be used
-try <NumOfAttempts> Specifies the number of attempts to try and mirror the file
mirror [-g] [-try <number>] [-r SE] [-S [se[,se2[,!se3[,qos:count]]]]] <lfn> [<SE>]
-g: Use the lfn as a guid
-S: specifies the destination SEs/tags to be used
-r: remove this source replica after a successful transfer (a `move` operation)
-try <attempts> Specifies the number of attempts to try and mirror the file (default 5)
```
---
......@@ -510,38 +759,11 @@ options:
### more
```
Usage:
more [options] <file>...
A file perusal filter for CRT viewing.
Options:
-d, --silent display help instead of ringing bell
-f, --logical count logical rather than screen lines
-l, --no-pause suppress pause after form feed
-c, --print-over do not scroll, display text and clean line ends
-p, --clean-print do not scroll, clean screen and display text
-s, --squeeze squeeze multiple blank lines into one
-u, --plain suppress underlining and bold
-n, --lines <number> the number of lines per screenful
-<number> same as --lines
+<number> display file beginning from line number
+/<pattern> display file beginning from pattern match
-h, --help display this help
-V, --version display version
For more details see more(1).
Command format: shell_command arguments lfn
N.B.!! the lfn must be the last element of the command!!
N.B.! The output and error streams will be captured and printed at the end of execution!
for working within application use <edit> or -noout argument
additiona arguments recognized independent of the shell command:
-force : will re-download the lfn even if already present
-noout : will not capture output, the actual application can be used
more <LFN>
Download specified LFN as temporary and pass it to system more command.
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -567,7 +789,7 @@ After editor termination the file will be uploaded if md5 differs
N.B. EDITOR env var must be set or fallback will be mcedit (not checking if exists)
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -586,6 +808,8 @@ Usage: lastOptimiserLog [-l] [-v] [-f <frequency>] <classnames or metanames>
### packages
```
usage: packages list available packages
-platform : Platform name, default Linux-x86_64
-all : List packages on all platforms. Equivalent to '-p all'
```
---
......@@ -593,10 +817,21 @@ usage: packages list available packages
### pfn
```
Command format : pfn [lfn]
It will print only the list of associtated pfns (simplified form of whereis)
It will print only the list of associated pfns (simplified form of whereis)
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
### pfn-status
```
Command format: pfn_status <pfn>|<lfn>
It will return all flags reported by the xrootd server - this is direct access to server
pfn is identified by prefix root://; if missing the argument will be taken to be a lfn
```
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -606,8 +841,31 @@ ping <count>
where count is integer
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### popd
```
Directory stacking implementation (as in Linux shell):
dirs [-clpv] [+N | -N]
popd [-n] [+N | -N]
pushd [-n] [+N | -N | dir]
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### prompt
```
Toggle the following in the command prompt : <date> for date information and <pwd> for local directory
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### ps
......@@ -633,12 +891,61 @@ options:
-a : select jobs of all users
-b : do only black-white output
-jdl <jobid> : display the job jdl
-trace <jobid> <tag>* : display the job trace information
-trace <jobid> : display the job trace information
-id : only list the matching job IDs, for batch processing (implies -b)
-q : quiet, no user printable output, API function only
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### pushd
```
Directory stacking implementation (as in Linux shell):
dirs [-clpv] [+N | -N]
popd [-n] [+N | -N]
pushd [-n] [+N | -N | dir]
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### pwd
```
pwd : print/return the current work directory
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### queryML
```
usage: queryML <ML node>
time range can be specified for a parameter:
/[starting time spec]/[ending time spec]/parameter
where the two time specs can be given in absolute epoch timestamp (in milliseconds), as positive values,
or relative timestamp to `now`, when they are negative.
For example `-60000` would be "1 minute ago" and effectively `-1` means "now".
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### quit
```
Command format: exit [code] [stderr|err] [message]
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### quota
......@@ -648,7 +955,7 @@ Command format: quota [user]
if [user] is not provided, it will be assumed the current user
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -717,18 +1024,7 @@ additiona arguments recognized independent of the shell command:
-noout : will not capture output, the actual application can be used
```
!!! warning "client-side implementation"
---
### setCEstatus
```
setCEstatus: Sets the status of a set of Computing Elements
usage: setCEstatus [-status status] [CE name] [CE name] ...
options:
-status: Status to be set for the CEs (open / locked)
```
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -753,6 +1049,16 @@ options:
---
### siteJobs
```
Command format: siteJobs <SITE ID> [ -id ] [ -running ] [ -status string] [ -user string ]
Print jobs id or information for jobs associated with a site; use getCE command to identify site names
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### stat
```
usage: stat [-v] <filename1> [<or uuid>] ...
......@@ -769,7 +1075,7 @@ usage: submit <URL>
<URL> => file:///<local path>
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -817,7 +1123,7 @@ for -x (output file) and -l (file with lfns) the file: and alien: represent the
the inferred defaults are that the target files and the output files are of the same type
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -834,12 +1140,35 @@ options:
-hostname <FQDN> : required for a host certificate
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### token-destroy
```
Delete the token{cert,key}.pem files
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### token-info
```
Print token certificate information
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### token-init
```
INFO: token is automatically created, use this for token customization
usage: token-init [-options]
options:
......@@ -850,8 +1179,30 @@ options:
-hostname <FQDN> : required for a host certificate
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### token-verify
```
Print token certificate information
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### tokenkey-match
```
Check match of user token with key token
```
!!! warning "client-side implementation"
!!! note "No connection to central servers needed"
---
### top
......@@ -892,7 +1243,7 @@ usage: user <user name>
Change effective role as specified.
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -907,9 +1258,15 @@ usage: uuid <uuid|filename> [<uuid|filename> ...]
### version
```
usage: version
Get information about the JAliEn version that answers your requests
alien.py version: 1.5.2
alien.py version date: 20231012_203723
alien.py version hash: 1b66960
alien.py location: /home/adrian/work-ALICE/jalien_py/alienpy/alien.py
script location:
Interpreter: /usr/bin/python3.11
Python version: 3.11.5 (main, Aug 28 2023, 00:00:00) [GCC 13.2.1 20230728 (Red Hat 13.2.1-1)]
XRootD version: 5.5.3
XRootD path: /home/adrian/.local/lib/python3.11/site-packages/XRootD/client/__init__.py
```
!!! warning "client-side implementation"
......@@ -926,7 +1283,7 @@ After editor termination the file will be uploaded if md5 differs
N.B. EDITOR env var must be set or fallback will be mcedit (not checking if exists)
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
......@@ -938,13 +1295,18 @@ After editor termination the file will be uploaded if md5 differs
N.B. EDITOR env var must be set or fallback will be mcedit (not checking if exists)
```
!!! warning "client-side implementation"
!!! warning "client-side implementation or improvement of the central servers version"
---
### w
```
usage: w Show currently active users on the Grid
options:
-a : Sort by the number of active jobs
-w : Sort by the number of waiting jobs
-r : Reverse sorting order
```
---
......@@ -985,6 +1347,41 @@ options:
---
### xrd_config
```
Command format: xrd_config [-v | -verbose] fqdn[:port] | SE name | SE id
It will use the XRootD query config to get the current server properties
verbose mode will print more about the server configuration
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### xrd_ping
```
Command format: xrd_ping [-c count] fqdn[:port] | SE name | SE id
It will use the XRootD connect/ping option to connect and return a RTT
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### xrd_stats
```
Command format: xrd_stats [ -xml | -xmlraw | -compact ] fqdn[:port] | SE name | SE id
It will use the XRootD query stats option to get the server metrics
-xml : print xml output (native to xrootd)
-xmlraw : print rawxml output without any indentation
-compact : print the most compact version of the output, with minimal white space
```
!!! warning "client-side implementation or improvement of the central servers version"
---
### xrdstat
```
usage: xrdstat [-d [-i]] [-v] [-p PID,PID,...] [-s SE1,SE2,...] [-c] <filename1> [<or UUID>] ...
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment