Skip to main content

A collection of common data structures and utilities used in other ICHEC tools

Project description

iccore

This package is part of the Common Tooling Project at the Irish Centre for High End Computing.

It is a collection of common data structures, data types and low-level utilities used in other ICHEC 'common tools'.

Features

The package consists of:

  • data structures (list, strings, dicts etc.) and utilities for working with them
  • tooling for interacting with system resources, such as external processes, the filesystem and network.
  • basic data types for describing people, organizations, projects and code repositories - to support process automation and Open Science and FAIR activites.

Usage

System Resources

Filesystem

You can replace all occurences of a string with another recursively in files with:

iccore filesystem replace_in_files --target $REPLACE_DIR --search $FILE_WITH_SEARCH_TERM --replace $FILE_WITH_REPLACE_TERM 

The search and replace terms are read from files. This can be handy to avoid shell escape sequences - as might be needed in sed.

Networking

You can download a file with:

iccore network download --url $RESOURCE_URL --download_dir $WHERE_TO_PUT_DOWNLOAD

Process Automation

Project Management

You can get Gitlab Milestones given a project id and access token with:

iccore gitlab --token $GITLAB_TOKEN milestone $PROJECT_ID

where $GITLAB_TOKEN is an access token for the project obtainable through the Gitlab Web UI and $PROJECT_ID is a numerical identifier for the project, obtainable in the Settings->General view of the Gitlab UI. The GITLAB_TOKEN should have sufficient access permissions to read the project milestones.

You can get the version number of the most recent project release with:

iccore gitlab --token $GITLAB_TOKEN latest_release $PROJECT_ID

or download a particular release asset with:

iccore gitlab --token $GITLAB_TOKEN latest_release $PROJECT_ID --asset_name $ASSET_NAME

The token should have suitable permissions to download project release assets, in particular read api and repo access and Developer Role.

Repo Info

You can get info about a git repo with:

iccore git info 

run in the repo.

Install

It is available on PyPI:

pip install iccore

License

This project is licensed under the GPLv3+. See the incluced LICENSE.txt file for details.

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

iccore-0.2.2.tar.gz (46.9 kB view details)

Uploaded Source

Built Distribution

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

iccore-0.2.2-py3-none-any.whl (52.4 kB view details)

Uploaded Python 3

File details

Details for the file iccore-0.2.2.tar.gz.

File metadata

  • Download URL: iccore-0.2.2.tar.gz
  • Upload date:
  • Size: 46.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for iccore-0.2.2.tar.gz
Algorithm Hash digest
SHA256 a3be04225e3a8b2154c3ea9bf8d53379386c22552ffce4288bd8c88a2aea7854
MD5 ab4ffeb2cd04ff297cb7db1628532a9c
BLAKE2b-256 5868dddad4247cad54e979b848c312127c3edc171a4c3b7e0c412878a5bf8ced

See more details on using hashes here.

File details

Details for the file iccore-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: iccore-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 52.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for iccore-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8b941c52f8b67dd39bd7728b5a80a7b5a1ca5b32ba0172ef1a2107b98b8bf809
MD5 8ecf423f899b324c4a6add9b2b25f863
BLAKE2b-256 c8ca8f7a7730a609edb0f1101fdc38be2df0c01b448ec6814a8bb5fc14f9f07a

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