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 installedlist <component>- lists available and installed versions of the componentinstall <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 run 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 formatx.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 an
upgradecommand - Add a
deploycommand or--deployoption oninstallto 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file icat-package-manager-0.0.2.tar.gz.
File metadata
- Download URL: icat-package-manager-0.0.2.tar.gz
- Upload date:
- Size: 5.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
474e7a627a29c3c8483894224bba847feb3cb3aa883d074224de1de6dd808379
|
|
| MD5 |
bfb8d38fa03d9bada1ee723b5a9fe714
|
|
| BLAKE2b-256 |
857c0c6e491d816559d7fdc80dc834ce71eeaed7135ddabb0ddadaf1b0bb254b
|
File details
Details for the file icat_package_manager-0.0.2-py3-none-any.whl.
File metadata
- Download URL: icat_package_manager-0.0.2-py3-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1d2003733c3c89feae63fa67c27d331849fe6e6840b56c77f2c296197dc8d12
|
|
| MD5 |
03fc72b9a871efcac3f9e67e65df66c3
|
|
| BLAKE2b-256 |
1303b9a58efe913bfceb25fcea63b309dcb8a6c41e1de4b0e92ceccd147714f4
|