Skip to main content

A CLI tool for automating installation of ICAT components

Project description

ICAT Package Manager

icatpackagemanager is a python package that provides a CLI for automatically downloading and installing ICAT components on a local application server.

Usage

Invoke the CLI with python -m icatpackagemanager, or simply ipm if installed with a tool like pipx. Use -h or --help with any of the commands for full details.

Available commands:

  • list - lists all components available from the repo, and which are installed
  • list <component> - lists available and installed versions of the component
  • install <component>:
    • Checks for installed versions of the component
    • Checks for available versions of the component
    • If there is no newer version, do nothing.
    • Otherwise, download latest distro, and unzips it into install directory
    • If there is no previous version, stop and prompt for configuration
    • Otherwise, copy config from previous version, and (not implemented yet) run the setup script
  • install <component> <version> - installs specific version of a package

Terminology

  • Repository/repo is a website hosting ICAT packages. By default, this is the official repo.icatproject.org.
  • A component is one of the ICAT projects ie. icat.server, authn.simple, etc. Components can have many versions, in the format x.y.z-<suffix>.
  • A package is a specific version of a component. Packages are:
    • 'Available' if it exists in the repo
    • 'Installed' if it exists in the install directory
    • 'Deployed' if it's currently running on the application server
  • A distro is a zipfile containing a built package which can be installed
  • The distro cache is a directory containing distros downloaded from the repo
  • The install directory is where distros are unpacked so that they can be deployed

Planned work

  • Add a deploy command or --deploy option on install to run setup scripts

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

icat-package-manager-0.0.4.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

icat_package_manager-0.0.4-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file icat-package-manager-0.0.4.tar.gz.

File metadata

  • Download URL: icat-package-manager-0.0.4.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for icat-package-manager-0.0.4.tar.gz
Algorithm Hash digest
SHA256 bfadc4fa947f3af1e57617357ec72a9bf495d601d1755184c48a1480a51c2952
MD5 90c8f6cb2af3f02a94ccffbda8b4f0e1
BLAKE2b-256 764854a541aa531146463c34c65edb7c3639a44303227c8bb24781b8a38cb631

See more details on using hashes here.

File details

Details for the file icat_package_manager-0.0.4-py3-none-any.whl.

File metadata

File hashes

Hashes for icat_package_manager-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 29e59309c5b76346d7e63ea1ea962bbd18270ad8c8c6fbc91b19a4ea86e24112
MD5 91e6f7f19082d77a29a10233b4d795b5
BLAKE2b-256 17caf2f6f0cb2c4bc11927c0ada742b1b1b3448c8ddde2ecd6122bbe4342250c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page