.TH "parrot_package_create" 1 "" "CCTools 7.1.2 FINAL" "Cooperative Computing Tools" .SH NAME .LP \fBparrot_package_create\fP - generate a package based on the accessed files and the preserved environment variables .SH SYNOPSIS .LP \FC\fBparrot_package_create [options]\fP\FT .SH DESCRIPTION .LP After recording the accessed files and environment variables of one program with the help of the \FC--name-list\FT parameter and the \FC--env-list\FT of \FCparrot_run\FT, \FCparrot_package_create\FT can generate a package containing all the accessed files. You can also add the dependencies recorded in a new namelist file into an existing package. .SH OPTIONS .LP .LP .TP \fB-a\fP, \fB-\-add\fP=\fI\fP . The path of an existing package. .TP \fB-e\fP, \fB-\-env-list\fP=\fI\fP . The path of the environment variables. .TP .B \ --new-env . The relative path of the environment variable file under the package. .TP \fB-n\fP, \fB-\-name-list\fP=\fI\fP . The path of the namelist list. .TP \fB-p\fP, \fB-\-package-path\fP=\fI\fP . The path of the package. .TP \fB-d\fP, \fB-\-debug\fP=\fI\fP . Enable debugging for this sub-system. .TP \fB-o\fP, \fB-\-debug-file\fP=\fI\fP . Write debugging output to this file. By default, debugging is sent to stderr (":stderr"). You may specify logs be sent to stdout (":stdout"), to the system syslog (":syslog"), or to the systemd journal (":journal"). .TP .B \ -h, --help . Show the help info. .SH EXIT STATUS .LP On success, returns zero. On failure, returns non-zero. .SH EXAMPLES .LP To generate the package corresponding to \fBnamelist\fP and \fBenvlist\fP: .fam C .nf .nh .IP "" 8 % parrot_package_create --name-list namelist --env-list envlist --package-path /tmp/package .fi .hy .fam .P After executing this command, one package with the path of \fB/tmp/package\fP will be generated. .PP Here is a short instruction about how to make use of \FCparrot_run\FT, \FCparrot_package_create\FT and \FCparrot_package_run\FT to generate one package for your experiment and repeat your experiment within your package. .PP Step 1: Run your program under \FCparrot_run\FT and using \fB--name-list\fP and \fB--env-list\fP parameters to record the filename list and environment variables. .fam C .nf .nh .IP "" 8 % parrot_run --name-list namelist --env-list envlist /bin/bash .fi .hy .fam .P After the execution of this command, you can run your program inside \FCparrot_run\FT. At the end of step 1, one file named \fBnamelist\fP containing all the accessed file names and one file named \fBenvlist\fP containing environment variables will be generated. After everything is done, exit \FCparrot_run\FT: .fam C .nf .nh .IP "" 8 % exit .fi .hy .fam .P .PP Step 2: Using \FCparrot_package_create\FT to generate a package. .fam C .nf .nh .IP "" 8 % parrot_package_create --name-list namelist --env-path envlist --package-path /tmp/package .fi .hy .fam .P At the end of step 2, one package with the path of \fB/tmp/package\fP will be generated. .PP Step 3: Repeat your program within your package. .fam C .nf .nh .IP "" 8 % parrot_package_run --package-path /tmp/package --shell-type bash ... .fi .hy .fam .P After the execution of this command, one shell will be returned, where you can repeat your original program (Please replace \fB--shell-type\fP parameter with the shell type you actually used). After everything is done, exit \FCparrot_package_run\FT: .fam C .nf .nh .IP "" 8 % exit .fi .hy .fam .P You can also add the dependencies recorded in a new namelist file, \fBnamelist1\fP, into an existing package: .fam C .nf .nh .IP "" 8 % parrot_package_create --name-list namelist1 --env-list envlist1 --new-env envlist1 --add /tmp/package .fi .hy .fam .P After executing this command, all the new dependencies mentioned in \fBnamelist1\fP will be added into \fB/tmp/package\fP, the new envlist, \fBenvlist1\fP, will also be added into \fB/tmp/package\fP with the name specified by the \fB--new-env\fP option. .SH COPYRIGHT .LP The Cooperative Computing Tools are Copyright (C) 2005-2019 The University of Notre Dame. This software is distributed under the GNU General Public License. See the file COPYING for details. .SH SEE ALSO .LP .IP \(bu 4 \fBCooperative Computing Tools Documentation\fP .IP \(bu 4 \fBParrot User Manual\fP .IP \(bu 4 \fBparrot_run(1)\fP \fBparrot_cp(1)\fP \fBparrot_getacl(1)\fP \fBparrot_setacl(1)\fP \fBparrot_mkalloc(1)\fP \fBparrot_lsalloc(1)\fP \fBparrot_locate(1)\fP \fBparrot_timeout(1)\fP \fBparrot_whoami(1)\fP \fBparrot_mount(1)\fP \fBparrot_md5(1)\fP \fBparrot_package_create(1)\fP \fBparrot_package_run(1)\fP \fBchroot_package_run(1)\fP