Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Software packages included with the installation of JS7 components products can be enabled and disabled by use of the Package Management Script.

...

  • Rollout of JS7 products is considered critical as the software allows jobs to be executed on a larger number of servers.
    • Vulnerabilities in 3rd-party libraries components of JS7 products deserve attention.
  • The solution provided for software package management is based on shell scripting by design:
    • to provide readability and to rely on OS commands only,
    • to deny the use of 3rd-party components and additional dependencies that require code to be executed.
  • The Software Package Management Script can be integrated in a number of ways:
    • by running the script directly on the related server.
    • by running one's own SSH scripts ,for use with remote servers.
    • by use with tools such as Ansible®, Puppet® that make use of an SSH Client,
    • by use of JS7 workflow automation.

...

Code Block
languagetext
titleSoftware Package Management Script: js7_features.sh
Usage: js7_set_feature.sh [Options] [Switches]

  Options:
    --home=<directory>                 | required: directory to which the JS7 product is installed
    --features=<path>                  | optional: path to features.json file, default: <home>/features.json
    --sbom=<path>                      | optional: path to sbom.json file, default: <home>/sbom.json
    --enable=<package[,package]>       | optional: enables one or more software packages
    --disable=<package[,package]>      | optional: disables one or more software packages
    --backup-dir=<directory>           | optional: backup directory for disabled software packages
    --log-dir=<directory>              | optional: log directory for log output of the script

  Switches:
    -h | --help                        | displays usage
    --list                             | returns the list of disabled/enabled software packages
    --show-logs                        | shows log output of the script
    --make-dirs                        | creates the backup and logs directories if they do not exist
    --force                            | forces disabling packages without option for later enabling from a backup directory
    --confirm                          | confirms enabling or disabling of software packages

...

  • -h | --help
    • Displays usage.
  • --list
    • Specifies the list of software packages that have been disabled or enabled. This information is used from the features.json file, see --features option.
  • --show-logs
    • Displays the log output created by the script if the --log-dir option is used.
  • --make-dirs
    • If directories are missing that are indicated with the  --backup-dir or --log-dir options then they will be created.
  • --force
    • Specifies that a software package is disabled, i.e. its files are removed from the JS7 product installation, without use of a backup directory.
  • --confirm
    • Specifies that the operation to enable or to disable a software package is confirmed. If this switch is omitted then a dry-run is performed that displays which software packages are affected by enabling or disabling.

Exit Codes

  • 0: success
  • 1: argument errors
  • 2: non-recoverable errors

...