| Table of Contents |
|---|
Introduction
| Info |
|---|
If you are unfamiliar with GitHub pull requests (PRs), open a ticket you may also submit the necessary information as a ticket on the EWC Support Portal. |
To formally submit an initial version of your Item, or to request the indexing of a followup version, you must fill all required information (also known as Item metadata) and share it with the EWC team.
Item Metadata
| Warning |
|---|
The key, at the top of an item's metadata, must be unique and always match the value the attribute `name`. |
| Warning |
|---|
A contact (email or URL) is required for successful submission. |
...
We use YAML format to structure the required Item metadata. Take as example the metadata of the "ECMWF Data Flavour", extracted from the Community Hub catalog on GitHub:
| Code Block | ||
|---|---|---|
| ||
ecmwf-data-flavour:
annotations:
licenseTypetechnology: "Apache License 2.0Ansible Playbook"
category: "Compute,Data Access"
supportLevel: "EWC-Supportedsupported"
technologylicenseType: "Apache Ansible PlaybookLicense 2.0"
displayName: ECMWF Data Flavourothers: "Deployable,EWCCLI-compatible"
description: |
# ECMWF data flavour
Includes the basic ECMWF software stack, with MARS client and an environment with ecCodes`ecCodes`, Metview, Earthkit and Aviso.
# Usage Example
usage:`Metview`, `Earthkit` and `Aviso`.
Getting started
---------------
* Clone or download the code from the source repository.
* Install ansible and other dependencies. You may want to do it in its own virtual environment (`pip install -r requirements.txt`)
* Fetch the external requirements
```bash
$ ansible-galaxy role install -r requirements.yml roles/
```
* Define your inventory in `inventory`
* Run the apropriate playbook
bash
```bash
$ ansible-playbook -i inventory ecmwf-data-flavour.yml
# Inputs```
You may use the following ansible variables to customizecustomise this playbook:
| Variable | Description | Type | Default | Required |
|------|-------------|------|---------|----------|
| reboot_if_required | Reboot the instance if required after an update. | `boolean`| `true` | no |
| ecmwf_toolbox_env_wipe | Decide whether to wipe the environment if exists prior to a reinstallation. | `boolean` | `no` | no |
| ecmwf_toolbox_env_wipe | Name of the environment containing the ECMWF toolbox. | `string` | `ecmwf-toolbox` | no |
| ecmwf_toolbox_create_ipykernel | Create a system-wide kernel available. | `boolean` | yes | no |
| conda_prefix | Prefix where conda is installed. | `string` | `/opt/conda` | no |
| conda_user | User owning the conda installation. | `string` | `root` | no |
Example usage:
```bash
ansible-playbook -i inventory ecmwf-data-flavour.yml
```
Author
------------------
ECMWF for the European Weather Cloud
<img src="https://climate.copernicus.eu/sites/default/files/inline-images/ECMWF.png" width="120px" height="120px">
{width=120px height=120px}
displayName: ECMWF Data Flavour
ewccli:
inputs:
- name: reboot_if_required
default: true
description: Boolean to reboot the instance if required after an update. Default
type: truebool
- name: ecmwf_toolbox_env_wipe
default: false
description: Boolean to decide whether to wipe the environment if exists prior to a reinstallation. Default
type: falsebool
- name: ecmwf_toolbox_env_name
default: "ecmwf-toolbox"
description: Name of the environment containing the ECMWF toolbox. Default: ecmwf-toolbox
type: str
- name: ecmwf_toolbox_create_ipykernel
default: true
description: Boolean to create a system-wide kernel available. Default
type: truebool
- name: conda_prefix
default: "/opt/conda"
description: Prefix where conda is installed. Default: /opt/conda
type: str
- name: conda_user
default: "root"
description: User owning the conda installation. Default
type: rootstr
home pathToMainFile: https://github.com/ewcloud/ewc-flavoursplaybooks/ecmwf-data-flavour/ecmwf-data-flavour.yml
licensehome: https://github.com/ewcloud/ewc-flavours/blob/main/LICENSE/tree/2.0.0/playbooks/ecmwf-data-flavour
icon: https://raw.githubusercontent.com/ewcloud/ewc-community-hub/refs/heads/main/logos/EWCLogo.png
license: https://github.com/ewcloud/ewc-flavours/blob/2.0.0/LICENSE
published: true
maintainers:
- name: EWC Team
email: support@ewcloud.int
url: https://github.com/ewcloud/ewc-flavours/issues
name: "ecmwf-data-flavour"
published: false
sources:
- https://github.com/ewcloud/ewc-flavours/blob/main/playbooks/ecmwf-data-flavour/ecmwf-data-flavour.yml.git
summary: It Includesincludes the basic ECMWF software stack, with MARS client and an environment with ecCodes`ecCodes`, Metview`Metview`, Earthkit`Earthkit` and Aviso`Aviso`.
version: "12.0.0" |
Submission Steps
Once you have all the required information at hand, you may proceed to:
...