Skip to content

Commit 4a4e4cb

Browse files
authored
Merge pull request #13 from ESA-EarthCODE/openeo_examples
openEO example
2 parents 94bc15f + 68b8038 commit 4a4e4cb

30 files changed

+2464
-1
lines changed

OSC/index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,4 @@ There are three different ways and several tools to contribute to Open Science C
1515

1616
### 3: Using one of the platform tools (For EarthCODE integrated platforms users)
1717
- [DeepCode](https://github.com/deepesdl/deep-code) - An example using DeepCode: a library for automatically generating product entries for DeepESDL datasets.
18+
- [openEO Publishing Tool](https://publish.earthcode.vito.be/) - A platform agnostic tool to publish workflows, experiments and products created on openEO-based platforms. Learn more in our dedicated [publication](../openeo/3_publication.md) guide.

index.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,5 @@ Here you will find guides and practical examples on how to use the various Earth
1515
Looking how to upload data to the ESA Project Results Repository (PRR)? Start with our [PRR Examples](PRR/index.md) to learn how to easily generate STAC Collections direclty from your files and share your datasets.
1616

1717
Looking how to contribute to the Open Science Catalog, Start with our [Open Science Catalog Examples](OSC/index.md) to learn how to add / change content in the metadata catalog, by enriching it with your research outcomes.
18+
19+
Looking for how to use the openEO to create workflows and experiments? Check out our [openEO examples](openeo/index.md).

myst.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,14 @@ project:
3232
- file: OSC/osc_pr_pystac.ipynb
3333
- file: OSC/deepcode_example.md
3434

35-
35+
- title: openEO
36+
file: openeo/index.md
37+
children:
38+
- file: openeo/1_workflow.ipynb
39+
- file: openeo/2_experiment.ipynb
40+
- file: openeo/3_publication.md
41+
- file: openeo/4_reproduce.ipynb
42+
3643
# plugins:
3744
# - directives.mjs
3845
# - picsum.mjs

openeo/1_workflow.ipynb

Lines changed: 610 additions & 0 deletions
Large diffs are not rendered by default.

openeo/2_experiment.ipynb

Lines changed: 383 additions & 0 deletions
Large diffs are not rendered by default.

openeo/3_publication.md

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# Publishing an experiment to EarthCODE
2+
3+
In this guide we will explore the step needed to publish our [previously created](./2_experiment.ipynb) experiment to the EarthCODE Open Science Catalogue (OSC). To support this process, a dedicated tool, called the [openEO Publishing tool](https://publish.earthcode.vito.be/), has been created, which will guide you through the process of publishing the experiment. The publishing tool will create a GitHub pull request on the OSC with all the necessary information required to publish the experiment, including details about the product and the workflow. After approval of the pull request by the EarthCODE team, your experiment, its corresponding workflow and the resulting output products will become available in the catalogue for users to discover and reuse.
4+
5+
To start the publishing process, you can access the openEO Publishing tool at [publish.earthcode.vito.be](https://publish.earthcode.vito.be/). The tool will prompt you to log in using your GitHub account, which is necessary to create the pull request in the EarthCODE OSC repository.
6+
7+
![openEO Publishing Tool - Start](./images/publishing_login.png)
8+
9+
Once logged in, you will need to select one of the supported openEO backends from which you want to publish your experiment. The tool currently supports the following backends:
10+
- [Copernicus Data Space Ecosystem (CDSE) openEO Federation](openeofed.dataspace.copernicus.eu)
11+
12+
![openEO Publishing Tool - Backend Selection](./images/publishing_1.png)
13+
14+
Click the **Next** button to proceed after selecting the backend. The openEO Publishing tool will then connect to the selected backend. If you are not already authenticated, you will be prompted to log in to the backend using your credentials. Clicking the **Authenticate** button will redirect you to the selected backend's authentication page, where you can log in with your credentials. Once authenticated, you will be redirected back to the openEO Publishing tool.
15+
This step is necessary to retrieve the list of experiments that you have created on the selected backend.
16+
17+
![openEO Publishing Tool - Backend Selection](./images/publishing_2.png)
18+
19+
![openEO Publishing Tool - Platform Authentication](./images/platform_authentication.png)
20+
21+
Now that you are authenticated, you can select the experiment you want to publish from the list of available jobs. The tool will display all the processing jobs associated with your account on the selected backend. You can select one or multiple experiments to publish. Click the **Next** button to proceed to the next step.
22+
23+
:::{hint}
24+
The list of jobs only includes those that have been executed successfully. If you do not see your experiment in the list, make sure it has been executed and completed without errors.
25+
:::
26+
27+
![openEO Publishing Tool - Experiment Selection](./images/publishing_3.png)
28+
29+
After selecting one or more jobs, you will be prompted to provide additional information about the experiment. First you will need to select if you want to publish the full experiment, only the workflow, or only the output products. The full experiment includes both the workflow and the output products, while selecting only the workflow or output products will publish only those components.
30+
31+
![openEO Publishing Tool - Publication Selection](./images/publishing_4a.png)
32+
33+
Based on your selection, the tool will show a dedicated form to fill in the necessary details for the publication. Some of the fields are automatically filled in based on the experiment metadata retrieved from the platform, while others require manual input. The following sections describe the fields you need to fill in for each publication type.
34+
35+
**For experiments:**
36+
37+
![openEO Publishing Tool - Experiment Form](./images/publishing_4b_experiment.png)
38+
39+
- **Project**: The project under which the experiment is published. This should be a valid [EarthCODE project name](https://opensciencedata.esa.int/projects/catalog).
40+
- **ID**: A unique identifier for the experiment.
41+
- **Title**: A descriptive title for your experiment.
42+
- **Description**: A detailed description of the experiment, including its purpose and methodology.
43+
- **License** (optional): The license under which the experiment is published. This should be a valid license identifier.
44+
- **Themes**: The thematic categories that best describe your experiment. You can select multiple themes from the provided list.
45+
- **Experiment Process Graph**: Selection of the openEO process graph that represents your experiment. You can either choose to take the process graph from the selected job or refer to a public process graph URL that you have created previously.
46+
47+
**For workflows:**
48+
49+
![openEO Publishing Tool - Workflow Form](./images/publishing_4b_workflow.png)
50+
51+
- **Project**: The project under which the workflow is published. This should be a valid [EarthCODE project name](https://opensciencedata.esa.int/projects/catalog)
52+
- **ID**: A unique identifier for the workflow.
53+
- **URL**: The public URL of the openEO User Defined Process hat represents your workflow. This should be a valid URL pointing to a public process graph. See our tutorial on [creating a workflow](./1_workflow.ipynb) for more information on how to create a User Defined Process and get its URL.
54+
- **Title**: A descriptive title for your workflow.
55+
- **Description**: A detailed description of the experiment, including its purpose and methodology.
56+
- **Themes**: The thematic categories that best describe your experiment. You can select multiple themes from the provided list.
57+
58+
:::{note}
59+
Whenever you publish a workflow as part of an experiment, some of the above fields are covered by the experiment metadata. Therefore, you only need to fill in the fields that are not already provided by the experiment. Additionally in the case of an experiment, you can also choose to select an existing workflows from the list of workflows that are already available on the EarthCODE OSC.
60+
:::
61+
62+
**For products:**
63+
64+
![openEO Publishing Tool - Product Form](./images/publishing_4b_product.png)
65+
66+
- **Project**: The project under which the product is published. This should be a valid [EarthCODE project name](https://opensciencedata.esa.int/projects/catalog)
67+
- **ID**: A unique identifier for the product.
68+
- **Title**: A descriptive title for your product.
69+
- **Description**: A detailed description of the experiment, including its purpose and methodology.
70+
- **Themes**: The thematic categories that best describe your experiment. You can select multiple themes from the provided list.
71+
- **Assets**: A list of assets that part of the product. By default the result of the openEO job is automatically added to the list of assets. You can add additional assets by providing their URLs and a corresponding name. The assets should be publicly accessible URLs pointing to the output files generated by the experiment.
72+
73+
:::{note}
74+
Whenever you publish a product as part of an experiment, some of the above fields are covered by the experiment metadata. Therefore, you only need to fill in the fields that are not already provided by the experiment.
75+
:::
76+
77+
After filling in the necessary details, you can click the **Next** button to proceed to the final step. The openEO Publishing tool will then create a pull request on the EarthCODE OSC repository with all the information you provided. You will be able to access the pull request by clicking the link provided in the tool and track its status either through that link or on the [GitHub pull request page](https://github.com/ESA-EarthCODE/open-science-catalog-metadata/pulls). The pull request will contain all the necessary files and metadata required to publish your experiment, workflow, or product in the EarthCODE OSC.
78+
79+
80+
![openEO Publishing Tool - Publication Complete](./images/publishing_done.png)
81+
82+
![openEO Publishing Tool - GitHub PR](./images/publishing_pr.png)
83+
84+
Your experiment, workflow, or product will be now reviewed by the EarthCODE team. Once approved, it will be published in the EarthCODE Open Science Catalogue, making it available for other users to discover and reuse.

0 commit comments

Comments
 (0)