iccore


Nameiccore JSON
Version 0.2.4 PyPI version JSON
download
home_pageNone
SummaryA collection of common data structures and utilities used in other ICHEC tools
upload_time2025-08-20 19:34:36
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseNone
keywords hpc
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # iccore

This package is part of the [Common Tooling Project](https://ichec-handbook.readthedocs.io/en/latest/src/common_tools.html) at the [Irish Centre for High End Computing](https://www.ichec.ie).

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:

``` shell
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:

``` shell
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:

``` shell
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:

``` shell
iccore gitlab --token $GITLAB_TOKEN latest_release $PROJECT_ID
```

or download a particular release asset with:


``` shell
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:

``` shell
iccore git info 
```

run in the repo.

# Install  #

It is available on PyPI:

``` sh
pip install iccore
```

# License #

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

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "iccore",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "HPC",
    "author": null,
    "author_email": "\"James Grogan, Irish Centre for High End Computing\" <james.grogan@ichec.ie>",
    "download_url": "https://files.pythonhosted.org/packages/48/be/f59f1c3f46e1e584b96314d8e3c05213bbbbfc31a8a7a532f6ce92bd7ad7/iccore-0.2.4.tar.gz",
    "platform": null,
    "description": "# iccore\n\nThis package is part of the [Common Tooling Project](https://ichec-handbook.readthedocs.io/en/latest/src/common_tools.html) at the [Irish Centre for High End Computing](https://www.ichec.ie).\n\nIt is a collection of common data structures, data types and low-level utilities used in other ICHEC 'common tools'.\n\n# Features #\n\nThe package consists of:\n\n* `data structures` (list, strings, dicts etc.) and utilities for working with them\n* tooling for interacting with `system resources`, such as external processes, the filesystem and network.\n* basic `data types` for describing people, organizations, projects and code repositories - to support `process automation` and Open Science and FAIR activites. \n\n# Usage #\n\n## System Resources ##\n\n### Filesystem ###\n\nYou can replace all occurences of a string with another recursively in files with:\n\n``` shell\niccore filesystem replace_in_files --target $REPLACE_DIR --search $FILE_WITH_SEARCH_TERM --replace $FILE_WITH_REPLACE_TERM \n```\n\nThe `search` and `replace` terms are read from files. This can be handy to avoid shell escape sequences - as might be needed in `sed`.\n\n### Networking ###\n\nYou can download a file with:\n\n``` shell\niccore network download --url $RESOURCE_URL --download_dir $WHERE_TO_PUT_DOWNLOAD\n```\n\n## Process Automation ##\n\n### Project Management ###\n\nYou can get Gitlab Milestones given a project id and access token with:\n\n``` shell\niccore gitlab --token $GITLAB_TOKEN milestone $PROJECT_ID\n```\n\nwhere `$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.\n\n\nYou can get the version number of the most recent project release with:\n\n``` shell\niccore gitlab --token $GITLAB_TOKEN latest_release $PROJECT_ID\n```\n\nor download a particular release asset with:\n\n\n``` shell\niccore gitlab --token $GITLAB_TOKEN latest_release $PROJECT_ID --asset_name $ASSET_NAME\n```\n\nThe token should have suitable permissions to download project release assets, in particular read api and repo access and Developer Role.\n\n### Repo Info ###\n\nYou can get info about a git repo with:\n\n``` shell\niccore git info \n```\n\nrun in the repo.\n\n# Install  #\n\nIt is available on PyPI:\n\n``` sh\npip install iccore\n```\n\n# License #\n\nThis project is licensed under the GPLv3+. See the incluced `LICENSE.txt` file for details.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A collection of common data structures and utilities used in other ICHEC tools",
    "version": "0.2.4",
    "project_urls": {
        "Homepage": "https://git.ichec.ie/performance/toolshed/iccore",
        "Repository": "https://git.ichec.ie/performance/toolshed/iccore"
    },
    "split_keywords": [
        "hpc"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "af634c14776a26b367bad38dc2e5b9c13826457adc6c8bb36a49803340392273",
                "md5": "e7c5c2ab2f4f0f70890d907cd73d480f",
                "sha256": "3ec94c5ee97a3f3506c64dd833f5bcc0a26277a37557f85df1596b5b179b5f05"
            },
            "downloads": -1,
            "filename": "iccore-0.2.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e7c5c2ab2f4f0f70890d907cd73d480f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 53933,
            "upload_time": "2025-08-20T19:34:35",
            "upload_time_iso_8601": "2025-08-20T19:34:35.088532Z",
            "url": "https://files.pythonhosted.org/packages/af/63/4c14776a26b367bad38dc2e5b9c13826457adc6c8bb36a49803340392273/iccore-0.2.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "48bef59f1c3f46e1e584b96314d8e3c05213bbbbfc31a8a7a532f6ce92bd7ad7",
                "md5": "a3be5f4c14a0575f0ba88c2a40c56f0d",
                "sha256": "30096cd9e214f6571d2d2525989a18b975a42b91a6e36f3a5c5ad5a2a6f754ae"
            },
            "downloads": -1,
            "filename": "iccore-0.2.4.tar.gz",
            "has_sig": false,
            "md5_digest": "a3be5f4c14a0575f0ba88c2a40c56f0d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 48051,
            "upload_time": "2025-08-20T19:34:36",
            "upload_time_iso_8601": "2025-08-20T19:34:36.445634Z",
            "url": "https://files.pythonhosted.org/packages/48/be/f59f1c3f46e1e584b96314d8e3c05213bbbbfc31a8a7a532f6ce92bd7ad7/iccore-0.2.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-20 19:34:36",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "iccore"
}
        
Elapsed time: 1.51874s