This guide is about how to run Segy->OpenVDS conversion Workflow on Pre-ship.
## Prerequisites
### Required Entitlements groups
Be sure you are in the following Entitlements groups(GET: `{{entitlements_api_url}}/entitlements/v2/groups`):
-`users.datalake.admins`
-`app.trusted`
-`service.seistore.admin`
-`service.entitlements.user`
-`service.workflow.creator`
-`seistore.system.admin`
### Generate ID token
Seismic Store requires well-generated ID token.
Follow this guide to get API Credentials: https://community.opengroup.org/osdu/documentation/-/wikis/Releases/R2.0/GCP/GCP-Operation/User-Mng/OpenID-Connect#how-to-get-api-credentials-using-gcp-openid-playgroud
The most common issue with generating right ID token is using wrong **ClientID** and **ClientSecrets**. Contact our devopses to obtain the right ones.
### Install SDUTIL
SDUTIL is a command line Python utility designed to work easily with Seismic Store.
Follow the installation guide here: https://community.opengroup.org/osdu/platform/domain-data-mgmt-services/seismic/seismic-dms-suite/seismic-store-sdutil#installation
Replace the content of `seismic-store-sdutil/sdlib/config.yaml` with this:
Then, you may skip inserting the google (defaultEnv) application key.
Now your SDUTIL is ready to use with JWT token (your ID token).
Example:
```shell
python sdutil stat sd://<your_tenant> --idtoken=$ID_token
```
### Other issues
You may find it useful to read this page: https://community.opengroup.org/osdu/documentation/-/wikis/Releases/R2.0/GCP/GCP-Pre-Prod-Onboarding-Documentation
## Segy -> OpenVDS conversion
### Create Seismic Store's `tenant` and `subprojects`
The seismic store uri is a string used to uniquely address a resource in the system and can be obtained by appending the prefix sd:// before the required resource path: `sd://<tenant>/<subproject>/<path>*/<dataset>`
Before you start uploading the file, you may create `tenant` and `subproject`.
If you want to use **already created**`tenant` and `subproject`, ask the owner (creator) of the `subroject` to add you to it:
```shell
curl --location--request PUT '<seismic_store_host>/api/v3/user'\
--header'Authorization: Bearer <id_token>'\
--header'Content-Type: application/json'\
--header'x-api-key: test'\
--header'appkey: test'\
--data-raw'{
"email": "<your_email>@<domain>.com",
"path": "sd://<tenant>/<subproject>",
"group": "editor"
}'
```
This command will add you to required Entitlements groups to work with the concrete `subproject.`
Create the `tenant`:
```shell
curl --location-g--request POST '<seismic_store_host>/api/v3/tenant/<new-tenant>'\