Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
08142a1
First step to updating main script with bmdrc functions
Oct 24, 2024
dac292c
Working through new main function using bmdrc code
Oct 24, 2024
c72d218
Building out data pre-processing pipeline
Nov 13, 2024
e128b75
Working through figshare preprocessing
Nov 14, 2024
69aa8f2
Wrapping up preprocessing clean
Nov 14, 2024
aa2e005
Finished preprocessing
Nov 15, 2024
cd8713a
Preparing bmdrc overhaul
Nov 15, 2024
732afce
Building out test examples
Nov 16, 2024
44a1d85
Cleaning up results
Nov 17, 2024
be8068d
Built trelliscope display function to review constructed curves
Nov 17, 2024
d39b07c
Fixed all morphology build errors
Nov 17, 2024
facc665
Building out LPR functionality
Nov 23, 2024
57e030b
Finished LPR fixes
Nov 23, 2024
9312105
Storing outputs
Nov 23, 2024
68efdb3
Storing latest results
Nov 23, 2024
c0adc5d
Finished build on full dataset
Nov 23, 2024
16cf4da
Fits for half of dataset calculated
Nov 26, 2024
12cbe20
Storing second fit file
Nov 27, 2024
85faa2d
Storing updates
Nov 27, 2024
8f68f3d
Morpho output endpoints still need to be checked
Nov 28, 2024
430883c
Storing latest data
Dec 2, 2024
1a562b9
Updated LPR chemical names to be strings
Dec 2, 2024
352f239
Fixing chemical name spaces issues
Dec 5, 2024
8bb1258
All BMDs completed
Dec 5, 2024
67dc310
updated diagnostic plots
Dec 6, 2024
d2b52ed
Merge remote-tracking branch 'origin/bmdrc_update' into bmdrc_pipeline
christinehc Oct 22, 2025
5a1b9ed
fix: update Dockerfile to run from main repo directory
christinehc Oct 23, 2025
5f8dd6a
Saving dockerfile
David-Degnan Oct 23, 2025
160a958
fix: remove arg keywords for ctxpy call
christinehc Oct 23, 2025
a8e0bd2
docs: update and clarify docker setup commands/instructions
christinehc Oct 29, 2025
e376347
format: add command spacing for clarity
christinehc Oct 29, 2025
ad35020
build: simplify copy commands and workdir
christinehc Oct 29, 2025
9b0aa65
Merge remote-tracking branch 'origin/main' into bmdrc_pipeline
christinehc Oct 29, 2025
29eed85
docs,style: add docstring. replace str addition with f-strings
christinehc Oct 30, 2025
a8bbb34
build: add schemas for new zfBmd output files
christinehc Oct 30, 2025
e2c3074
build: require linkml for schema validation
christinehc Oct 30, 2025
ff51b93
build: consolidate zfBmd output schemas
christinehc Oct 30, 2025
81b8aa5
style: remove extraneous spaces
christinehc Oct 30, 2025
cbe9267
build: correct slot names and ranges for zfBmd data. remove unused sl…
christinehc Oct 30, 2025
0d57aea
build: use venv for python install. use standard dir structure
christinehc Oct 30, 2025
2a1b33a
docs: fix filepaths in docker container
christinehc Oct 30, 2025
448c7ca
feat,style: include linkml validation. apply linting/formatting
christinehc Oct 30, 2025
6cb2e76
build: build bmdrc container. move setup to separate stage
christinehc Oct 30, 2025
07b659f
build: abstract common steps back into individual workflows
christinehc Oct 30, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 47 additions & 13 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,25 @@ on:


jobs:
build-and-push-sample:
# setup:
# runs-on: ubuntu-latest
# outputs:
# docker_username: ${{ secrets.DOCKERHUB_USERNAME }}
# docker_password: ${{ secrets.DOCKERHUB_PASSWORD }}
# steps:


build-push-sample:
# needs: setup
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v3
- name: Login to DockerHub
id: login
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
Expand All @@ -34,18 +45,21 @@ jobs:
uses: docker/build-push-action@v3
with:
file: sampleChemMapping/Dockerfile
tags: sgosline/srp-samplechem:latest
platforms: linux/amd64,linux/arm64
push: true
tags: sgosline/srp-samplechem:latest

build-push-expo:
# needs: setup
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up Docker Buildx
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v3
- name: Login to DockerHub
id: login
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
Expand All @@ -55,17 +69,20 @@ jobs:
with:
file: exposome/Dockerfile
platforms: linux/amd64,linux/arm64
tags: sgosline/srp-exposome:latest
push: true
tags: sgosline/srp-exposome:latest

build-push-exp:
# needs: setup
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
id: buildx
uses: docker/setup-buildx-action@v3
- name: Login to DockerHub
id: login
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
Expand All @@ -74,16 +91,33 @@ jobs:
uses: docker/build-push-action@v3
with:
file: zfExp/Dockerfile
platforms: linux/amd64,linux/arm64
push: true
tags: sgosline/srp-zfexp:latest

build-push-bmdrc:
# needs: setup
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v3
- name: Login to DockerHub
id: login
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
- name: Build and push bmd
uses: docker/build-push-action@v3
with:
file: zfBmd/Dockerfile
platforms: linux/amd64,linux/arm64
tags: sgosline/srp-zfexp
# - name: Build and push bmd
# uses: docker/build-push-action@v6
# with:
# context: zfBmd
# push: true
# tags: sgosline/srp-zfbmd:latest
# platforms: linux/amd64,linux/arm64
push: true
tags: sgosline/srp-zfbmd:latest

# - name: Build and push bmd2Samps
# uses: docker/build-push-action@v6
# with:
Expand Down
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -58,3 +58,8 @@ tmp/
new_*
Reformatted*
.vscode
zfBmd/files/
new_BMDS_BC.csv
new_Dose_BC.csv
new_Fits_BC.csv
new_report_BC/*
2 changes: 1 addition & 1 deletion exposome/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,4 @@ RUN pip3 install -r requirements.txt
# RUN Rscript -e "install.packages(c('jsonlite','dplyr','httr','tidyr'), dependencies=TRUE,repos='http://cran.rstudio.com')"


ENTRYPOINT ["python","/app/build_script.py","--expo"]
ENTRYPOINT ["python", "/app/build_script.py", "--expo"]
17 changes: 11 additions & 6 deletions exposome/README.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,25 @@
## Exposome data processing
## Exposome Data Processing

This module contains the scripts and docker image to build the
exposome data.

To test locally, you can run this script:

To test locally you can run this script:
```
```bash
python build_script.py --expo

```

To test with all the R/Python requirements already installed, use the
docker image:

```
```bash
docker build . -t srp-exposome -f exposome/Dockerfile
docker run -v $PWD:/tmp srp-exposome
docker run -v $PWD/tmp:/tmp srp-exposome
```


By default, this writes all output files to a `tmp` directory inside the current working directory from which the container is run. You can change this directory to point to anywhere you want output files to be written:

```bash
docker run -v /path/to/output_dir:/tmp srp-exposome --output_dir /tmp
```
4 changes: 1 addition & 3 deletions sampleChemMapping/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@ RUN apt-get install -y --allow-unauthenticated --fix-missing python3-pip python
# r-base gcc-12 build-essential libpq-dev python3-venv libxml2-dev libcurl4-openssl-dev

RUN python3 -m venv /opt/venv


ENV PATH="/opt/venv/bin:$PATH"
WORKDIR /app

Expand All @@ -22,5 +20,5 @@ COPY requirements.txt .
RUN pip3 install --upgrade pip
RUN pip3 install -r requirements.txt

ENTRYPOINT ["python","/app/build_script.py","--samps"]
ENTRYPOINT ["python", "/app/build_script.py", "--samps"]

28 changes: 16 additions & 12 deletions sampleChemMapping/README.md
Original file line number Diff line number Diff line change
@@ -1,27 +1,31 @@
## BMD to Sample mapping

This module consumes bench mark dose measurements from the pipeline and maps them to specific chemical metadata and concentrations in sample extracts.
This module consumes bench mark dose measurements from the pipeline and maps them to specific chemical metadata and concentrations in sample extracts.

To run/test in this repo:
```
Rscript sampleChemMapping/mapSamplesToChems.R --sampId="+smap+' --chemId='+cid+\
' --epMap='+emap+' --chemClass='+cclass+\
' --compToxFile='+ctfile+' --sampleFiles='+fses+' --chemDesc='+desfile+\
' --sampMap='+smap
To run/test in this repo, navigate to the root of the repo and run:

```bash
python build_script.py --samps
```

To run/test docker image (from root of repo):

```
```bash
docker build . -t srp-samplechem -f sampleChemMapping/Dockerfile
docker run -v $PWD:/tmp srp-samplechem
docker run -v $PWD/tmp:/tmp srp-samplechem --output_dir /tmp
```

By default, this writes all output files to a `tmp` directory inside the current working directory from which the container is run. You can change this directory to point to anywhere you want output files to be written:

```bash
docker run -v /path/to/output_dir:/tmp srp-samplechem --output_dir /tmp
```

### Chemical identifiers

All chemicals must have a `cas_number` that has data download from the [EPA Comptox website](https://comptox.epa.gov/dashboard/batch-search).
All chemicals must have a `cas_number` that has data download from the [EPA Comptox website](https://comptox.epa.gov/dashboard/batch-search).

All cas numbers must have a `Chemical_ID` - these either come from the Tanguay lab or are generated manually by us. Either way they are stored in [./data/chemicalIdMapping.csv](data/chemicalIdMapping.csv).
All cas numbers must have a `Chemical_ID` - these either come from the Tanguay lab or are generated manually by us. Either way they are stored in [./data/chemicalIdMapping.csv](data/chemicalIdMapping.csv).

### Sample measurements

Expand All @@ -32,4 +36,4 @@ sample mapping file.
### Benchmark dose values

These are processed from the stored BMD files and the recalculated
ones passed into the argument.
ones passed into the argument.
Loading