This repository handles requests for reprocessing instrument data stored in AWS. Follow the instructions below to submit your reprocessing request.
- DO NOT FORK THIS REPOSITORY. The GitHub workflows will not run correctly in a forked repository.
- Always clone the original repository and create a new branch for your request.
- First-time contributors may need a SOC Admin to approve workflow runs.
- All submissions require approval before merging, unless part of the GitHub Organization.
git clone https://github.com/dbarrous/sdc_aws_reprocessing_requests.git
cd sdc_aws_reprocessing_requests
Create a branch with a descriptive name for your request:
git checkout -b request/your-username/YYYYMMDD
- Navigate to the
requests/submit
directory - Create a
request.json
file with your reprocessing request details - Ensure your request follows one of the supported request types (see Requests Types below)
You can validate your request locally before submitting:
pip install -r requirements.txt
python scripts/validator.py requests/submit/request.json
git add requests/submit/request.json
git commit -m "Add reprocessing request for <brief description>"
git push origin request/your-username/YYYYMMDD
- Go to the repository on GitHub
- Click "New Pull Request"
- Select your branch as the source
- Add a descriptive title and description
- Submit the PR
The GitHub workflow will:
- Validate your request against the schema
- Sort and rename the request file to the appropriate directory
- Comment on your PR with the validation result
If the workflow ran successfully:
git pull origin request/your-username/YYYYMMDD
After the workflow moves your request file:
# Remove the sorted request file from your commit
git rm requests/YYYY/MM/request_username_YYYYMMDDHHMMSS.json
# Reset the submit request.json to empty or default state
echo '{"requests": []}' > requests/submit/request.json
# Commit these changes
git add .
git commit -m "Clean up after successful validation"
git push origin request/your-username/YYYYMMDD
A maintainer will review and approve your PR. Once merged, your reprocessing request will be processed.
The system supports two types of reprocessing requests:
Use this to reprocess data for a specific instrument within a date range:
{
"requests": [
{
"request_instrument": "INSTRUMENT_NAME",
"request_from_date": "YYYYMMDD",
"request_to_date": "YYYYMMDD",
"request_from_level": "l0",
"request_description": "Optional description",
"use_dev": false
}
]
}
Fields:
request_instrument
: Instrument name (required)request_from_date
: Start date in YYYYMMDD format (optional)request_to_date
: End date in YYYYMMDD format (optional)request_from_level
: Data level to start reprocessing from (default: "l0")request_description
: Optional description of the requestuse_dev
: Use development data instead of production (default: false)
Use this to reprocess specific files:
{
"requests": [
{
"request_filenames": [
"file1.dat",
"file2.dat"
],
"request_description": "Optional description",
"use_dev": false
}
]
}
Fields:
request_filenames
: Array of filenames to reprocess (required)request_description
: Optional description of the requestuse_dev
: Use development data instead of production (default: false)
You can include multiple requests in a single submission:
{
"requests": [
{
"request_instrument": "INSTRUMENT1",
"request_from_date": "20250101",
"request_to_date": "20250131"
},
{
"request_filenames": [
"specific_file.dat"
]
}
]
}
If you're a first-time contributor, GitHub may require approval to run workflows. A SOC Admin will need to approve this.
If your request fails validation:
- Check the PR comments for specific error messages
- Update your
request.json
file accordingly - Commit and push your changes
- The workflow will automatically re-run
After the workflow successfully runs and sorts your file, you'll need to:
- Pull the changes to your local branch
- Remove the sorted file from your branch
- Reset the
requests/submit/request.json
file - Commit these changes
- Push your updated branch
Contact the SOC team for assistance with your reprocessing requests.