Skip to content

Commit d705deb

Browse files
authored
Merge pull request #819 from ypriverol/feat/move-annotated-projects-repo
Document annotated datasets move to sdrf-annotated-datasets
2 parents bf41232 + 874ddc7 commit d705deb

21 files changed

Lines changed: 4576 additions & 3363 deletions

.github/workflows/build-docs.yml

Lines changed: 1 addition & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ on:
44
push:
55
branches:
66
- master
7-
- dev
87
workflow_dispatch:
98

109
jobs:
@@ -31,46 +30,10 @@ jobs:
3130
- name: Install Python dependencies
3231
run: pip install pyyaml jinja2
3332

34-
- name: Set output directory based on branch
35-
id: set-output-dir
36-
run: |
37-
if [ "${{ github.ref_name }}" == "master" ]; then
38-
echo "output_dir=docs" >> $GITHUB_OUTPUT
39-
echo "base_url=" >> $GITHUB_OUTPUT
40-
else
41-
echo "output_dir=docs/dev" >> $GITHUB_OUTPUT
42-
echo "base_url=/dev" >> $GITHUB_OUTPUT
43-
fi
44-
4533
- name: Build documentation site
4634
run: |
4735
chmod +x scripts/build-docs.sh
48-
if [ "${{ github.ref_name }}" == "dev" ]; then
49-
./scripts/build-docs.sh ${{ steps.set-output-dir.outputs.output_dir }} --dev
50-
else
51-
./scripts/build-docs.sh ${{ steps.set-output-dir.outputs.output_dir }}
52-
fi
53-
54-
- name: Checkout gh-pages branch for merging
55-
if: github.ref_name == 'dev'
56-
uses: actions/checkout@v4
57-
with:
58-
ref: gh-pages
59-
path: gh-pages-existing
60-
61-
- name: Merge dev docs into existing gh-pages
62-
if: github.ref_name == 'dev'
63-
run: |
64-
# Copy existing gh-pages content (master version)
65-
mkdir -p final-docs
66-
cp -r gh-pages-existing/* final-docs/ 2>/dev/null || true
67-
# Remove old dev folder if exists
68-
rm -rf final-docs/dev
69-
# Copy new dev docs
70-
cp -r docs/dev final-docs/dev
71-
# Move final-docs to docs for deployment
72-
rm -rf docs
73-
mv final-docs docs
36+
./scripts/build-docs.sh docs
7437
7538
- name: Add CNAME for custom domain
7639
run: echo 'sdrf.quantms.org' > docs/CNAME

.github/workflows/link-check.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: Check Links
22

33
on:
44
push:
5-
branches: [master, dev]
5+
branches: [master]
66
paths:
77
- '**/*.md'
88
- '**/*.adoc'

.github/workflows/validate-all.yml

Lines changed: 17 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,25 @@
1-
# This workflow will install Python dependencies and run the included validation script.
1+
# Validate the small set of SDRF examples kept in examples/ for quickstart and
2+
# specification illustration purposes. Annotated public datasets now live at
3+
# bigbio/sdrf-annotated-datasets and are validated by that repository's CI.
24

3-
name: Validate annotations
5+
name: Validate examples
46

57
on:
68
push:
79
branches: [ master, dev ]
810
paths:
9-
- 'annotated-projects/**'
11+
- 'examples/**'
1012
pull_request:
1113
branches: [ master, dev ]
1214
paths:
13-
- 'annotated-projects/**'
15+
- 'examples/**'
16+
workflow_dispatch:
1417

1518
jobs:
1619
sdrf_proteomics_validations:
1720
runs-on: ubuntu-latest
1821
steps:
1922
- uses: actions/checkout@v4
20-
with:
21-
fetch-depth: 0
2223
- name: Set up Python 3.10
2324
uses: actions/setup-python@v5
2425
with:
@@ -28,30 +29,15 @@ jobs:
2829
python -m pip install --upgrade pip
2930
pip install wheel
3031
pip install git+https://github.com/bigbio/sdrf-pipelines
31-
- name: Get a list of changed files
32-
if: github.event_name != 'schedule'
33-
id: getfiles
32+
- name: Validate examples
3433
run: |
35-
export OUTFILE=$HOME/filelist.txt
36-
if [ "${{ github.event_name }}" == pull_request ]; then
37-
echo 'Changed files:'
38-
git diff-tree --no-commit-id --name-only -r origin/${{ github.event.pull_request.base.ref }} ${{ github.sha }} | tee "$OUTFILE"
39-
else
40-
# push
41-
if [ "${{ github.event.before }}" == "0000000000000000000000000000000000000000" ]; then
42-
parent="origin/master" # compare with master as a last resort
43-
else
44-
parent="${{ github.event.before }}"
34+
shopt -s nullglob
35+
failed=0
36+
for f in examples/*/*.sdrf.tsv; do
37+
echo "Validating $f"
38+
if ! parse_sdrf validate-sdrf --sdrf_file "$f" --use_ols_cache_only; then
39+
echo "::error file=$f::parse_sdrf validate-sdrf failed"
40+
failed=1
4541
fi
46-
git diff-tree --no-commit-id --name-only -r "$parent" ${{ github.sha }} | tee "$OUTFILE"
47-
fi
48-
- name: Run validation
49-
run: |
50-
if [ ${{ github.event_name }} == "schedule" ]; then
51-
echo "Validating all projects (schedule)"
52-
python validate.py -v
53-
else
54-
export FILELIST=$HOME/filelist.txt
55-
cat "$FILELIST" | grep "*sdrf.tsv" | while read line; do echo "Changed file: $line"; parse_sdrf validate-sdrf --sdrf_file $line --skip_factor_validation --skip_experimental_design_validation --use_ols_cache_only; done
56-
fi
57-
42+
done
43+
exit "$failed"

DEVELOPMENT.md

Lines changed: 23 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ proteomics-metadata-standard/
3636
│ ├── sdrf-terms.html # Terms reference page
3737
│ ├── build-sdrf-index.py # Builds dataset index
3838
│ └── build-search-index.py # Builds search index
39-
├── annotated-projects/ # Annotated SDRF files (~300 datasets)
39+
├── annotated-projects/ # Migration notice and legacy compatibility pointers
4040
├── demo_page/ # Local preview output (git-ignored)
4141
├── .github/workflows/ # CI/CD configuration
4242
│ └── build-docs.yml # Website build workflow
@@ -85,7 +85,7 @@ The easiest way to build the documentation is using the provided build script. T
8585
1. **Converts AsciiDoc to HTML** using Asciidoctor with proper styling options
8686
2. **Copies static assets** (CSS, JavaScript, images)
8787
3. **Copies static HTML pages** (index.html, quickstart.html, sdrf-explorer.html, sdrf-editor.html, sdrf-terms.html)
88-
4. **Builds SDRF Explorer index** from annotated-projects
88+
4. **Builds SDRF Explorer index** using annotated project metadata and links
8989
5. **Injects navigation headers** into all generated HTML pages
9090
6. **Transforms SDRF links** to use the SDRF Explorer viewer
9191
7. **Transforms SDRF example tables** to add color-coded column styling
@@ -182,9 +182,8 @@ Example HTML in AsciiDoc:
182182

183183
## CI/CD Deployment
184184

185-
The website is automatically built and deployed when pushing to:
186-
- `master` branch → Production site (https://sdrf.quantms.org/)
187-
- `dev` branch → Development site (https://sdrf.quantms.org/dev/)
185+
The website is automatically built and deployed when pushing to the `master`
186+
branch → https://sdrf.quantms.org/.
188187

189188
The CI/CD workflow (`.github/workflows/build-docs.yml`) performs the same steps as the local build script, ensuring consistency.
190189

@@ -196,8 +195,8 @@ The CI/CD workflow (`.github/workflows/build-docs.yml`) performs the same steps
196195
| Navigation headers | ✓ | ✓ |
197196
| SDRF link transformation | ✓ | ✓ |
198197
| Search index | ✓ | ✓ |
199-
| Dev banner | `--dev` flag | Auto for dev branch |
200-
| Output directory | Configurable | docs/ or docs/dev/ |
198+
| Dev banner | `--dev` flag (local only) | — |
199+
| Output directory | Configurable | `docs/` |
201200

202201
### Ensuring Consistency
203202

@@ -213,14 +212,21 @@ To verify your local build matches the deployed version:
213212

214213
## Adding New Annotated Projects
215214

216-
1. Create a folder in `annotated-projects/` with the PXD accession
217-
2. Add the SDRF file as `{PXD}.sdrf.tsv`
215+
Annotated datasets are now maintained in
216+
`bigbio/sdrf-annotated-datasets` using the layout
217+
`datasets/{ACCESSION}/{ACCESSION}.sdrf.tsv`.
218+
219+
1. Create a folder in `datasets/` with the accession in
220+
`bigbio/sdrf-annotated-datasets`
221+
2. Add the SDRF file as `{ACCESSION}.sdrf.tsv`
218222
3. Validate the file:
219223
```bash
220224
pip install sdrf-pipelines
221-
parse_sdrf validate-sdrf --sdrf_file annotated-projects/PXD000000/PXD000000.sdrf.tsv
225+
parse_sdrf validate-sdrf --sdrf_file datasets/PXD000000/PXD000000.sdrf.tsv
222226
```
223-
4. Rebuild the dataset index:
227+
4. Open a pull request in `bigbio/sdrf-annotated-datasets`
228+
5. If this repository needs a refreshed explorer index after migration updates,
229+
rebuild it locally:
224230
```bash
225231
python3 site/build-sdrf-index.py
226232
```
@@ -243,16 +249,16 @@ This is supported by research <<ref1>>.
243249
## Useful Commands
244250

245251
```bash
246-
# Validate all SDRF files in a folder
247-
for f in annotated-projects/*/*.sdrf.tsv; do
252+
# Validate all SDRF files in the annotated datasets repository
253+
for f in datasets/*/*.sdrf.tsv; do
248254
parse_sdrf validate-sdrf --sdrf_file "$f"
249255
done
250256

251257
# Find all SDRF files with a specific column
252-
grep -l "characteristics\[disease\]" annotated-projects/*/*.sdrf.tsv
258+
grep -l "characteristics\[disease\]" datasets/*/*.sdrf.tsv
253259

254260
# Count annotated projects
255-
ls -d annotated-projects/PXD* | wc -l
261+
ls -d datasets/PXD* | wc -l
256262
```
257263

258264
## Troubleshooting
@@ -387,6 +393,5 @@ When templates change (new columns, new templates):
387393
1. Make changes to the appropriate AsciiDoc or HTML files
388394
2. Build locally and test: `./scripts/build-docs.sh --clean`
389395
3. View locally: `open demo_page/index.html`
390-
4. Create a pull request to the `dev` branch for review
391-
5. After approval and merge to dev, changes deploy to https://sdrf.quantms.org/dev/
392-
6. After merge to master, changes deploy to https://sdrf.quantms.org/
396+
4. Open a pull request against `master`
397+
5. After approval and merge, changes deploy to https://sdrf.quantms.org/

README.md

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,13 @@ For information on building the documentation website locally, see the [Developm
4040

4141
Contribute with the specification: you can contribute to the specification with ideas or refinements by adding an issue into the [issue tracker](https://github.com/bigbio/proteomics-metadata-standard/issues) or performing a PR.
4242

43-
In the [annotated projects](https://github.com/bigbio/proteomics-metadata-standard/tree/master/annotated-projects) folder, users can see different public datasets that have been annotated so far by the contributors. If you would like to join these efforts, make a Fork of this repo and perform a pull request (PR) with your annotated project. If you don't have a project in mind, you can take one project from the [issues](https://github.com/bigbio/proteomics-metadata-standard/issues) and perform the annotation.
43+
Annotated SDRF dataset files are now maintained in the dedicated repository
44+
[`bigbio/sdrf-annotated-datasets`](https://github.com/bigbio/sdrf-annotated-datasets)
45+
under `datasets/{ACCESSION}/{ACCESSION}.sdrf.tsv`.
46+
If you would like to contribute annotations, open a pull request in that
47+
repository. If you do not have a project in mind, you can still pick one from
48+
the [issues](https://github.com/bigbio/proteomics-metadata-standard/issues) and
49+
prepare the SDRF annotation.
4450

4551
Annotate a dataset in 5 steps:
4652

@@ -63,7 +69,8 @@ parse_sdrf validate-sdrf --sdrf_file PXD020294.sdrf.tsv
6369

6470
You can read more about the validator [here](https://github.com/bigbio/sdrf-pipelines).
6571

66-
- Fork the current repository, add a folder with the ProteomeXchange accession and the annotated sdrf.tsv
72+
- Fork `bigbio/sdrf-annotated-datasets`, add a folder under `datasets/` with
73+
the ProteomeXchange accession and the annotated `.sdrf.tsv` file.
6774

6875
## 30 Minutes Guide to SDRF-Proteomics
6976

annotated-projects/README.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Annotated projects migration notice
2+
3+
The annotated SDRF datasets were moved to a dedicated repository:
4+
5+
- https://github.com/bigbio/sdrf-annotated-datasets
6+
7+
## Why this was moved
8+
9+
The SDRF specification and annotated datasets now evolve on separate lifecycles:
10+
11+
- `bigbio/proteomics-sample-metadata` focuses on specification, docs, and tooling.
12+
- `bigbio/sdrf-annotated-datasets` focuses on curated dataset annotations that can be updated frequently.
13+
14+
This split was discussed in:
15+
- https://github.com/bigbio/proteomics-sample-metadata/issues/817
16+
17+
## New canonical location
18+
19+
Annotated files are now expected in:
20+
21+
`datasets/{ACCESSION}/{ACCESSION}.sdrf.tsv`
22+
23+
Example:
24+
25+
`datasets/PXD000070/PXD000070.sdrf.tsv`
26+
27+
## How to contribute annotated datasets
28+
29+
1. Fork `bigbio/sdrf-annotated-datasets`.
30+
2. Add or update files in `datasets/{ACCESSION}/`.
31+
3. Validate with `parse_sdrf validate-sdrf`.
32+
4. Open a pull request in `bigbio/sdrf-annotated-datasets`.

psi-document/v1.1.0-dev/supplementary-files/quickstart-v1.1.0-dev.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -540,7 +540,7 @@ TIP: Don't worry about finding the exact ontology term initially. Just write the
540540

541541
Browse real SDRF files from published datasets in ProteomeXchange:
542542

543-
- https://github.com/bigbio/proteomics-metadata-standard/tree/master/annotated-projects[Annotated Projects on GitHub]
543+
- https://github.com/bigbio/sdrf-annotated-datasets/tree/main/datasets[Annotated Projects on GitHub]
544544

545545
=== Questions
546546

psi-document/v1.1.0-dev/supplementary-files/tool-support-v1.1.0-dev.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -267,4 +267,4 @@ We welcome contributions from the community to expand the SDRF-Proteomics ecosys
267267

268268
* link:README.adoc[SDRF-Proteomics Specification]
269269
* https://github.com/bigbio/proteomics-metadata-standard[GitHub Repository]
270-
* https://github.com/bigbio/proteomics-metadata-standard/tree/master/annotated-projects[Annotated Project Examples]
270+
* https://github.com/bigbio/sdrf-annotated-datasets/tree/main/datasets[Annotated Project Examples]

0 commit comments

Comments
 (0)