ECMWF provides various levels of software codes, ranging from training codes and scripts, research projects to software supporting the production services. ECMWF has five spaces on GitHub and software are assign according to the use and support level:
GitHub space | Purpose | Support |
---|---|---|
ecmwf | ECMWF official software packages | Support is given under the rules of ECMWF's Software Support. Users should report issues by email to Software.Software@ecmwf.int or in the Software Support page at ECMWF |
ecmwf-projects | Codes for addressing scientific challenges or technical tasks which are aimed at specific user groups. | There is no support commitment by ECMWF and users should contact the maintainers of the respective GitHub repository. (Checklist to add a repo there) |
ecmwf-lab | ECMWF codes for explorative work and one-off training and development activities. These codes might not be suitable for production use. | No support by ECMWF, please contact developers within GitHub repository. (Checklist to add a repo there) |
ecmwf-ifs | Selected components of IFS that are available as open-source | No support by ECMWF, please contact developers within GitHub repository. (Checklist to add a repo there) |
esowc | European Summer of Weather Code (ESoWC) projects | No support by ECMWF, please contact developers within GitHub repository. |
The GitHub ECMWF space
ECMWF tries to provide a set-up which allows easy co-operations with the wider community:
Please note that many ECMWF git repositories are not self-contained! Many repositories require the ecBuild repository to be cloned/forked as well to be able to build the software. If the ecbuild repository is placed at the same level in your directory structure as the software package you intend to build, it should be found automatically. |
Code contributions to ECMWF software
Code contributions on ECMWF GitHub space should follow the standard fork-based contribution model on GitHub, which ends with opening of a pull request. Any contribution should follow these steps:
All open source software packages at ECMWF are distributed under the Apache License 2.0. The standard Apache License was amended to cater for ECMWF special status as an international organisation. For you to be able to contribute any code to our software packages you need to agree that
To do so, you and your organisation need to sign a contributors agreement.
At the beginning you see this comment -
press on the button "CLA not signed yet" and accept the agreement:
After this you will see the button becomes green: