https://github.com/aiidateam/aiida-firecrest
AiiDA Transport/Scheduler plugins for interfacing with FirecREST (https://products.cscs.ch/firecrest/)
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.3%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
AiiDA Transport/Scheduler plugins for interfacing with FirecREST (https://products.cscs.ch/firecrest/)
Basic Info
Statistics
- Stars: 3
- Watchers: 3
- Forks: 4
- Open Issues: 12
- Releases: 2
Topics
Metadata Files
README.md
aiida-firecrest
AiiDA transport and scheduler plugins for interfacing with FirecREST via pyfirecrest.
Installation
You can install the package either from GitHub or PyPI:
```bash pip install git+https://github.com/aiidateam/aiida-firecrest.git
pip not yet available
pip install aiida-firecrest ```
Once installed, verify that the firecrest transport and scheduler plugins are available in AiiDA:
```bash $ verdi plugin list aiida.transports firecrest Transport interface for FirecREST. Must be used in conjunction with the 'firecrest' scheduler plugin.
$ verdi plugin list aiida.schedulers firecrest Scheduler interface for FirecREST. Must be used in conjunction with the 'firecrest' transport plugin. ```
You can then setup a Computer in AiiDA:
bash
$ verdi computer setup --transport firecrest --scheduler firecrest --hostname firecrest --label <YOUR_LABEL>
After completing the prompts, configure the computer with your credentials:
bash
$ verdi -p <MY_PROFILE> computer configure firecrest <YOUR_LABEL>
Finally, test the setup:
bash
$ verdi computer test <YOUR_LABEL> --print-traceback
Expected output:
After this, AiiDA should be able to interact with FirecREST seamlessly.
See tests/test_calculation.py for a working example using the plugin through the AiiDA API.
Also consider exploring the pyfirecrest CLI for direct interaction with a FirecREST server.
If you encounter any problems/bug, please don't hesitate to open an issue on this repository.
For developers
Development Installation
Clone and install the package in development mode:
bash
git clone https://github.com/aiidateam/aiida-firecrest.git
cd aiida-firecrest
pip install -e .[dev]
Testing
To run the tests, you'll first need access to a FirecREST server. A simple way to do that locally, is to use the firecrest-v2 repo and spin up the Docker container --which is how we do it in the CI:
bash
git clone https://github.com/eth-cscs/firecrest-v2
cd firecrest-v2
docker compose -f 'docker-compose.yml' up -d --build
By default, pytest will use the .firecrest-demo-config.json configuration file to connect to the the local Docker-based FirecREST server:
plaintext
┌─────────────────┐───►┌─────────────┐───►┌──────────────────────────────┐
│ aiida_firecrest │ │ pyfirecrest │ │ FirecREST deployed on docker │
└─────────────────┘◄───└─────────────┘◄───└──────────────────────────────┘
You can also test against a real FirecREST server by supplying your own config file:
bash
pytest --firecrest-config="MY_CONFIGURATION.json"
Make sure the configuration is similarly structured as in .firecrest-demo-config.json. Note that tests involving job submission may experience timeouts due to actual HPC queue wait times.
plaintext
┌─────────────────┐───►┌─────────────┐───►┌────────────────────────────────┐
│ aiida_firecrest │ │ pyfirecrest │ │ FirecREST on a real HPC server │
└─────────────────┘◄───└─────────────┘◄───└────────────────────────────────┘
Debugging and CLI Access
For debugging or direct file system access, consider using the pyfirecrest CLI.
For example, after setting the appropriate environment variables, you can run:
bash
$ firecrest ls /home/fireuser/
Code Style
Before committing any changes, ensure the code is properly formatted and linted:
bash
pre-commit run --all-files
Acknowledgment:
This project is supported by SwissTwins project.
Owner
- Name: AiiDA team
- Login: aiidateam
- Kind: organization
- Website: http://www.aiida.net
- Repositories: 63
- Profile: https://github.com/aiidateam
The development team of AiiDA
GitHub Events
Total
- Create event: 10
- Issues event: 25
- Watch event: 1
- Delete event: 6
- Member event: 1
- Issue comment event: 32
- Push event: 23
- Pull request review comment event: 12
- Pull request review event: 12
- Pull request event: 29
Last Year
- Create event: 10
- Issues event: 25
- Watch event: 1
- Delete event: 6
- Member event: 1
- Issue comment event: 32
- Push event: 23
- Pull request review comment event: 12
- Pull request review event: 12
- Pull request event: 29
Committers
Last synced: about 1 year ago
Top Committers
| Name | Commits | |
|---|---|---|
| Chris Sewell | c****l@h****m | 32 |
| Ali Khosravi | k****i@g****m | 7 |
| dependabot[bot] | 4****] | 5 |
| pre-commit-ci[bot] | 6****] | 1 |
Issues and Pull Requests
Last synced: about 1 year ago
All Time
- Total issues: 20
- Total pull requests: 43
- Average time to close issues: 9 days
- Average time to close pull requests: about 2 months
- Total issue authors: 4
- Total pull request authors: 5
- Average comments per issue: 0.35
- Average comments per pull request: 0.91
- Merged pull requests: 29
- Bot issues: 0
- Bot pull requests: 17
Past Year
- Issues: 15
- Pull requests: 14
- Average time to close issues: 9 days
- Average time to close pull requests: 14 days
- Issue authors: 3
- Pull request authors: 4
- Average comments per issue: 0.47
- Average comments per pull request: 1.64
- Merged pull requests: 8
- Bot issues: 0
- Bot pull requests: 6
Top Authors
Issue Authors
- khsrali (22)
- chrisjsewell (4)
- agoscinski (4)
- mikibonacci (1)
- DropD (1)
Pull Request Authors
- khsrali (25)
- dependabot[bot] (21)
- chrisjsewell (17)
- pre-commit-ci[bot] (7)
- agoscinski (5)
- DropD (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 112 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 1
- Total maintainers: 1
pypi.org: aiida_firecrest
AiiDA Transport/Scheduler plugins for interfacing with FirecREST.
- Homepage: http://github.com/aiidateam/aiida-firecrest
- Documentation: https://aiida_firecrest.readthedocs.io/
- License: MIT License
-
Latest release: 0.1.0a1
published over 4 years ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v2 composite
- actions/setup-python v1 composite
- actions/setup-python v2 composite
- pre-commit/action v2.0.0 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- jpribyl/action-docker-layer-caching v0.1.1 composite
- rabbitmq 3.8.14-management docker
- aiida-core @git+https://github.com/chrisjsewell/aiida_core.git@aiida-firecrest#egg=aiida-core
- click *
- pyfirecrest ~=1.4.0
- pyyaml *
- requests *