-
Notifications
You must be signed in to change notification settings - Fork 20
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
create howto section with additional citation recommendations
- Loading branch information
1 parent
3d2e562
commit 80281b3
Showing
4 changed files
with
132 additions
and
122 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,124 +1,3 @@ | ||
# How-To | ||
|
||
## How-To add new datasets | ||
|
||
The [EUREC$^4$A-Intake catalog](https://github.com/eurec4a/eurec4a-intake) is the dataset collection of the EUREC$^4$A and ATOMIC field campaign. It is a collection of `yaml`-files that contain references to the dataset storage locations. | ||
|
||
Datasets should be added by following these steps: | ||
|
||
### via the command line | ||
1. Cloning the [EUREC$^4$A-Intake catalog](https://github.com/eurec4a/eurec4a-intake) repository with | ||
```bash | ||
git clone git@github.com:eurec4a/eurec4a-intake.git | ||
``` | ||
You might be asked to [set up an SSH key for your GitHub account](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent). | ||
2. Create a new branch | ||
```bash | ||
git checkout -b <my_new_dataset> | ||
``` | ||
3. Add new catalog entry | ||
The catalog contains two types of entries: | ||
- references to sub-catalogs | ||
- references to a dataset | ||
|
||
The surface flux dataset from the research vessel Meteor is accessible via | ||
```python | ||
cat.Meteor.surface_fluxes | ||
``` | ||
and is saved in the file [Meteor/main.yaml](https://github.com/eurec4a/eurec4a-intake/blob/master/Meteor/main.yaml). | ||
The radar dataset, which is more complex and contains several subsets is accessible via | ||
```python | ||
cat.Meteor.LIMRAD94.low_res | ||
cat.Meteor.LIMRAD94.high_res | ||
``` | ||
For the creation of the `LIMRAD94` subset, a sub-catalog reference has been created in [Meteor/main.yaml](https://github.com/eurec4a/eurec4a-intake/blob/master/Meteor/main.yaml). The final reference to the dataset is added in [Meteor/LIMRAD94.yaml](https://github.com/eurec4a/eurec4a-intake/blob/master/Meteor/LIMRAD94.yaml) | ||
|
||
Depending on the complexity of the dataset, an entry can be directly added to the `main.yaml` file of the respective platform/simulation | ||
```bash | ||
vi <platform>/main.yaml | ||
``` | ||
|
||
or to a (new) instrument specific file | ||
|
||
``` | ||
vi <platform>/<instrument>.yaml | ||
``` | ||
|
||
The reference has the following format: | ||
```yaml | ||
plugins: | ||
source: | ||
- module: intake_xarray | ||
sources: | ||
<dataset_name>: | ||
description: <short description of the dataset> | ||
driver: opendap | ||
args: | ||
auth: null | ||
urlpath: <url_to_dataset> | ||
chunks: {} | ||
engine: netcdf4 | ||
``` | ||
|
||
In case your dataset has been published on AERIS, the THREDDS link to your dataset can be determined by finding your dataset at [https://observations.ipsl.fr/aeris/eurec4a-data/](https://observations.ipsl.fr/aeris/eurec4a-data/). To retrieve the THREDDS link, replace `https://observations.ipsl.fr/aeris/eurec4a-data/` with `https://observations.ipsl.fr/thredds/dodsC/EUREC4A/`. You can check if the link is correct by opening it e.g. directly with `xarray.open_dataset()` or [Panoply](https://www.giss.nasa.gov/tools/panoply/) by opening a `Remote Dataset`. | ||
A sub-catalog reference can be created with | ||
```yaml | ||
sources: | ||
<instrument/model_name>: | ||
args: | ||
path: "{{CATALOG_DIR}}/<instrument/model_name>.yaml" | ||
description: '<Instrument/model description>' | ||
driver: yaml_file_cat | ||
metadata: {} | ||
``` | ||
Please also check out entries already present in the EUREC$^4$A-Intake catalog. | ||
Finally those changes need to be staged and committed. | ||
```bash | ||
git add -p | ||
``` | ||
```bash | ||
git commit -m "<Adding my_new_dataset>" | ||
``` | ||
4. Push branch to GitHub | ||
```bash | ||
git push --set-upstream origin <my_new_dataset> | ||
``` | ||
5. Create pull request on GitHub | ||
A pull request can be started on the GitHub webpage. After the pull request has been submitted, the review process will start. To accelerate the process, please make sure all tests for your pull request succeed. The status of the tests are shown at the bottom of your pull request. | ||
### via GitHub web interface | ||
1. Visit EUREC$^4$A-Intake catalog repository | ||
Go to [https://github.com/eurec4a/eurec4a-intake](https://github.com/eurec4a/eurec4a-intake) | ||
2. Login with your GitHub credentials | ||
3. Select the platform/simulation/product for which a new dataset entry shall be added | ||
<img width="905" alt="image" src="https://user-images.githubusercontent.com/43613877/235442959-2aa97f47-2a56-48e2-8a33-c997fa2eeda6.png"> | ||
4. Edit <img width="49" alt="image" src="https://user-images.githubusercontent.com/43613877/235443256-59e952c2-4d28-41af-977d-2e20435bd6ec.png"> | ||
`main.yaml` and add a reference to the dataset if it is simple and does not contain different subsets (e.g. resolutions, frequencies, sensors, dimensions): | ||
```yaml | ||
plugins: | ||
source: | ||
- module: intake_xarray | ||
sources: | ||
<dataset_name>: | ||
description: <short description of the dataset> | ||
driver: opendap | ||
args: | ||
auth: null | ||
urlpath: <url_to_dataset> | ||
chunks: {} | ||
engine: netcdf4 | ||
``` | ||
(see 3. of **via command line** for more details | ||
5. Save changes and create pull request | ||
<img width="1122" alt="image" src="https://user-images.githubusercontent.com/43613877/235443863-348c6f7c-0120-447f-b869-a7b280e7ad23.png"> | ||
6. Check if the automatic tests that are run on your edits succeed. You can access the tests e.g. via the Action Tab (<img width="85" alt="image" src="https://user-images.githubusercontent.com/43613877/235444058-6319a7fd-3584-4d21-9f0a-5cd5527ea54c.png"> | ||
). | ||
7. A reviewer will look at the pull request and will discuss any additional steps necessary to merge the changes to the main repository. | ||
Explanations on how to use this interactive book, it's underlying intake-catalog and how to contribute and cite this work and its underlying datasets. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,122 @@ | ||
# How-To add new datasets | ||
|
||
The [EUREC$^4$A-Intake catalog](https://github.com/eurec4a/eurec4a-intake) is the dataset collection of the EUREC$^4$A and ATOMIC field campaign. It is a collection of `yaml`-files that contain references to the dataset storage locations. | ||
|
||
Datasets should be added by following these steps: | ||
|
||
## via the command line | ||
1. Cloning the [EUREC$^4$A-Intake catalog](https://github.com/eurec4a/eurec4a-intake) repository with | ||
```bash | ||
git clone git@github.com:eurec4a/eurec4a-intake.git | ||
``` | ||
You might be asked to [set up an SSH key for your GitHub account](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent). | ||
2. Create a new branch | ||
```bash | ||
git checkout -b <my_new_dataset> | ||
``` | ||
3. Add new catalog entry | ||
The catalog contains two types of entries: | ||
- references to sub-catalogs | ||
- references to a dataset | ||
|
||
The surface flux dataset from the research vessel Meteor is accessible via | ||
```python | ||
cat.Meteor.surface_fluxes | ||
``` | ||
and is saved in the file [Meteor/main.yaml](https://github.com/eurec4a/eurec4a-intake/blob/master/Meteor/main.yaml). | ||
The radar dataset, which is more complex and contains several subsets is accessible via | ||
```python | ||
cat.Meteor.LIMRAD94.low_res | ||
cat.Meteor.LIMRAD94.high_res | ||
``` | ||
For the creation of the `LIMRAD94` subset, a sub-catalog reference has been created in [Meteor/main.yaml](https://github.com/eurec4a/eurec4a-intake/blob/master/Meteor/main.yaml). The final reference to the dataset is added in [Meteor/LIMRAD94.yaml](https://github.com/eurec4a/eurec4a-intake/blob/master/Meteor/LIMRAD94.yaml) | ||
|
||
Depending on the complexity of the dataset, an entry can be directly added to the `main.yaml` file of the respective platform/simulation | ||
```bash | ||
vi <platform>/main.yaml | ||
``` | ||
|
||
or to a (new) instrument specific file | ||
|
||
``` | ||
vi <platform>/<instrument>.yaml | ||
``` | ||
|
||
The reference has the following format: | ||
```yaml | ||
plugins: | ||
source: | ||
- module: intake_xarray | ||
sources: | ||
<dataset_name>: | ||
description: <short description of the dataset> | ||
driver: opendap | ||
args: | ||
auth: null | ||
urlpath: <url_to_dataset> | ||
chunks: {} | ||
engine: netcdf4 | ||
``` | ||
|
||
In case your dataset has been published on AERIS, the THREDDS link to your dataset can be determined by finding your dataset at [https://observations.ipsl.fr/aeris/eurec4a-data/](https://observations.ipsl.fr/aeris/eurec4a-data/). To retrieve the THREDDS link, replace `https://observations.ipsl.fr/aeris/eurec4a-data/` with `https://observations.ipsl.fr/thredds/dodsC/EUREC4A/`. You can check if the link is correct by opening it e.g. directly with `xarray.open_dataset()` or [Panoply](https://www.giss.nasa.gov/tools/panoply/) by opening a `Remote Dataset`. | ||
A sub-catalog reference can be created with | ||
```yaml | ||
sources: | ||
<instrument/model_name>: | ||
args: | ||
path: "{{CATALOG_DIR}}/<instrument/model_name>.yaml" | ||
description: '<Instrument/model description>' | ||
driver: yaml_file_cat | ||
metadata: {} | ||
``` | ||
Please also check out entries already present in the EUREC$^4$A-Intake catalog. | ||
Finally those changes need to be staged and committed. | ||
```bash | ||
git add -p | ||
``` | ||
```bash | ||
git commit -m "<Adding my_new_dataset>" | ||
``` | ||
4. Push branch to GitHub | ||
```bash | ||
git push --set-upstream origin <my_new_dataset> | ||
``` | ||
5. Create pull request on GitHub | ||
A pull request can be started on the GitHub webpage. After the pull request has been submitted, the review process will start. To accelerate the process, please make sure all tests for your pull request succeed. The status of the tests are shown at the bottom of your pull request. | ||
## via GitHub web interface | ||
1. Visit EUREC$^4$A-Intake catalog repository | ||
Go to [https://github.com/eurec4a/eurec4a-intake](https://github.com/eurec4a/eurec4a-intake) | ||
2. Login with your GitHub credentials | ||
3. Select the platform/simulation/product for which a new dataset entry shall be added | ||
<img width="905" alt="image" src="https://user-images.githubusercontent.com/43613877/235442959-2aa97f47-2a56-48e2-8a33-c997fa2eeda6.png"> | ||
4. Edit <img width="49" alt="image" src="https://user-images.githubusercontent.com/43613877/235443256-59e952c2-4d28-41af-977d-2e20435bd6ec.png"> | ||
`main.yaml` and add a reference to the dataset if it is simple and does not contain different subsets (e.g. resolutions, frequencies, sensors, dimensions): | ||
```yaml | ||
plugins: | ||
source: | ||
- module: intake_xarray | ||
sources: | ||
<dataset_name>: | ||
description: <short description of the dataset> | ||
driver: opendap | ||
args: | ||
auth: null | ||
urlpath: <url_to_dataset> | ||
chunks: {} | ||
engine: netcdf4 | ||
``` | ||
(see 3. of **via command line** for more details | ||
5. Save changes and create pull request | ||
<img width="1122" alt="image" src="https://user-images.githubusercontent.com/43613877/235443863-348c6f7c-0120-447f-b869-a7b280e7ad23.png"> | ||
6. Check if the automatic tests that are run on your edits succeed. You can access the tests e.g. via the Action Tab (<img width="85" alt="image" src="https://user-images.githubusercontent.com/43613877/235444058-6319a7fd-3584-4d21-9f0a-5cd5527ea54c.png"> | ||
). | ||
7. A reviewer will look at the pull request and will discuss any additional steps necessary to merge the changes to the main repository. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
# How-To cite the EUREC$^4$A datasets | ||
|
||
This How-To book is based on two main components, the EUREC$^4$A Intake catalog and the datasets referenced therein. | ||
|
||
The EUREC$^4$ Intake catalog is published at [![](https://zenodo.org/badge/doi/10.5281/zenodo.8422321.svg)](https://doi.org/10.5281/zenodo.8422321) and can be cited accordingly. | ||
Please note however that this is a collection DOI and will always point to the most recent published version of the catalog. |