parrot_package_run(1)

πŸ“¦
version 9.9 Β· 3 versions
, in debian bookworm, ubuntu jammy, ubuntu noble

πŸ’… parrot_package_run β€” okay bestie, let's talk

so like… the manual name is parrot_package_run and it lives in section 1 of the Cooperative Computing Tools docs. she's a little unix icon and she's about to make your whole experiment reproducible. ✨


πŸŽ€ NAME

parrot_package_run β€” repeat a program inside the package, with a lil help from parrot_run


πŸ¦‹ SYNOPSIS

parrot_package_run --package-path your-package-path [command]

🌸 DESCRIPTION

okay so here's the tea πŸ«– β€” if you're using parrot_run to repeat one experiment, you have to make one mountlist so that your program's file access requests can get redirected into the package. that's just how it is, no cap.

parrot_package_run is the girl who does that for you: she creates the mountlist and repeats your program inside the package, with the help of parrot_run and the mountlist. teamwork, fr fr. πŸ’–

and if you don't give her a command at all? she just hands you a /bin/sh shell. lowkey generous of her.


✨ OPTIONS ✨

  • -p, --package-path β€” the path of the package. that's it, that's the whole vibe. πŸ‘‘
  • -e, --env-list β€” the path of the environment file. every line in it looks like <key>=<value>. (Default: package-path/env_list)
  • -h, --help β€” show this help message. she's helpful like that. 🫢

πŸ’€ EXIT STATUS

  • On success, returns zero. slay. βœ…
  • On failure, returns non-zero. 😭

🌈 EXAMPLES

repeating one program in a bash shell, inside a package

so say you wanna repeat one program within one package at /tmp/package, in a bash shell:

% parrot_package_run --package-path /tmp/package /bin/bash

after you run that, one shell gets returned to you, and that's where you repeat your original program. when everything's done, you exit parrot_package_run:

% exit

the direct-command route

you can also just set your command as the arguments of parrot_package_run directly. in that case she exits automatically once the command finishes, and you do not need to use exit to exit. convenient!! ✨

⚠️ but heads up bestie β€” your command must belong to the original command set executed inside parrot_run and preserved by parrot_package_create. no random commands, okay?
% parrot_package_run --package-path /tmp/package ls -al

🧚 the whole three-step saga

here's a short instruction about how to make use of parrot_run, parrot_package_create and parrot_package_run to generate one package for your experiment, and then repeat your experiment within your package. main character energy, three acts. πŸ’…

Step 1: run your program under parrot_run

use the --name-list and --env-list parameters to record the filename list and the environment variables.

% parrot_run --name-list namelist --env-list envlist /bin/bash

after you run that, you can run your program inside parrot_run. at the end of step 1, one file named namelist containing all the accessed file names and one file named envlist containing environment variables will be generated. when everything's done, exit parrot_run:

% exit

Step 2: generate a package with parrot_package_create

% parrot_package_create --name-list namelist --env-path envlist --package-path /tmp/package

at the end of step 2, one package with the path of /tmp/package will be generated. she ate. πŸ“

Step 3: repeat your program within your package

% parrot_package_run --package-path /tmp/package /bin/bash

after you run that, one shell gets returned to you, where you can repeat your original program. when everything's done, exit parrot_package_run:

% exit

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.


πŸ”₯ SEE ALSO


and that's the whole page, bestie πŸ¦‹ this one's from CCTools 8.0.0 DEVELOPMENT β€” Cooperative Computing Tools era, parrot_package_run(1), periodt. πŸ’œ

πŸ“¦ where this page comes from