-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
177 lines (133 loc) · 6.41 KB
/
Makefile
File metadata and controls
177 lines (133 loc) · 6.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
app_name = metaMS
parameters_path = data/MetamsFile.json
# change the path to your data path and configuration
data_dir = /Users/eber373/Development/metams/data
config_dir = /Users/eber373/Development/metams/configuration
version := $(shell cat .bumpversion.cfg | grep current_version | cut -d= -f2 | tr -d ' ')
stage := $(shell cat .bumpversion.cfg | grep optional_value | cut -d= -f2 | tr -d ' ')
cpu:
pyprof2calltree -k -i $(file)
mem:
mprof run --multiprocess $(script)
mprof plot
major:
@bumpversion major --allow-dirty
@make bump_lipid_major
@make bump_lcmsmetab_major
@make convert_lipid_rst_to_md
@make convert_lcmsmetab_rst_to_md
@make docu
minor:
@bumpversion minor --allow-dirty
@make bump_lipid_minor
@make bump_lcmsmetab_minor
@make convert_lipid_rst_to_md
@make convert_lcmsmetab_rst_to_md
@make docu
patch:
@bumpversion patch --allow-dirty
@make bump_lipid_patch
@make bump_lcmsmetab_patch
@make convert_lipid_rst_to_md
@make convert_lcmsmetab_rst_to_md
@make docu
bump_lipid_major:
@bumpversion major --allow-dirty --config-file .bumpversion_lipid.cfg
bump_lipid_minor:
@bumpversion minor --allow-dirty --config-file .bumpversion_lipid.cfg
bump_lipid_patch:
@bumpversion patch --allow-dirty --config-file .bumpversion_lipid.cfg
bump_lcmsmetab_major:
@bumpversion major --allow-dirty --config-file .bumpversion_lcmsmetab.cfg
bump_lcmsmetab_minor:
@bumpversion minor --allow-dirty --config-file .bumpversion_lcmsmetab.cfg
bump_lcmsmetab_patch:
@bumpversion patch --allow-dirty --config-file .bumpversion_lcmsmetab.cfg
install:
@source venv/bin/activate
@pip3 install --editable .
run:
@ . venv/bin/activate
@metaMS run-gcms-workflow $(parameters_path)
pypi:
@python3 setup.py sdist
@twine upload dist/*
docker-push:
@echo corilo/metams:$(version)
@docker build --no-cache -t corilo/metams:$(version) .
@docker push corilo/metams:$(version)
@docker image tag corilo/metams:$(version) corilo/metams:latest
@docker push corilo/metams:latest
docker-push-heal:
@echo katherineheal257/metams:$(version)
@docker buildx create --use
@docker buildx build --platform linux/amd64,linux/arm64 --no-cache -t katherineheal257/metams:$(version) --push .
@docker buildx imagetools create katherineheal257/metams:$(version) -t katherineheal257/metams:latest
@docker buildx imagetools inspect katherineheal257/metams:latest
docker-nmdc:
@echo microbiomedata/metams:$(version)
@docker buildx create --use
@docker buildx build --platform linux/amd64,linux/arm64 --no-cache -t microbiomedata/metams:$(version) --push .
@docker buildx imagetools create microbiomedata/metams:$(version) -t microbiomedata/metams:latest
@docker buildx imagetools inspect microbiomedata/metams:latest
echo-version:
@echo $(version)
docker-build:
docker build -t microbiomedata/metams:latest .
docker-build-local:
docker build -t local-metams:latest .
docker-run:
@echo $(data_dir)
@echo $(config_dir)
@docker run -v $(data_dir):/metams/data -v $(config_dir):/metams/configuration microbiomedata/metams:latest metaMS run-gcms-workflow /metams/configuration/metams.toml
wdl-run-gcms :
@miniwdl run wdl/metaMS_gcms.wdl -i wdl/metams_input_gcms.json --verbose --no-cache --copy-input-files
wdl-run-gcms-local:
@make docker-build-local
@miniwdl run wdl/metaMS_gcms.wdl -i wdl/metams_input_gcms_local_docker.json --verbose --no-cache --copy-input-files
get-lcms-database:
@echo "Downloading LC-MS database"
@mkdir -p test_data/test_lcms_metab_data
@curl --retry 3 --retry-delay 5 --connect-timeout 30 --max-time 300 -L -o test_data/test_lcms_metab_data/database.msp https://nmdcdemo.emsl.pnnl.gov/metabolomics/databases/20250407_gnps_curated.msp
@echo "LC-MS database downloaded"
get-lipid-test-data:
@echo "Downloading test data for lipidomics"
@mkdir -p test_data
@mkdir -p test_data/test_lipid_data
@curl --retry 3 --retry-delay 5 --connect-timeout 30 --max-time 300 -L -o test_data/test_lipid_data.zip https://nmdcdemo.emsl.pnnl.gov/lipidomics/test_data/metams_lipid_test_data/test_lipid_data.zip
@unzip test_data/test_lipid_data.zip -d test_data/test_lipid_data/
@rm test_data/test_lipid_data.zip
@echo "Test data downloaded and unzipped"
get-lcms-metab-test-data:
@echo "Downloading test data for LC-MS metabolomics"
@mkdir -p test_data
@mkdir -p test_data/test_lcms_metab_data
@curl --retry 3 --retry-delay 5 --connect-timeout 30 --max-time 300 -L -o test_data/test_lcms_metab_data/lcms_test_data1.mzML https://nmdcdemo.emsl.pnnl.gov/metabolomics/test_data/metams_lcms_metab_test_data/lcms_test_data1.mzML
@curl --retry 3 --retry-delay 5 --connect-timeout 30 --max-time 300 -L -o test_data/test_lcms_metab_data/lcms_test_data2.mzML https://nmdcdemo.emsl.pnnl.gov/metabolomics/test_data/metams_lcms_metab_test_data/lcms_test_data2.mzML
@curl --retry 3 --retry-delay 5 --connect-timeout 30 --max-time 300 -L -o test_data/test_lcms_metab_data/lcms_test_data3.mzML https://nmdcdemo.emsl.pnnl.gov/metabolomics/test_data/metams_lcms_metab_test_data/lcms_test_data3.mzML
@echo "LCMS test data downloaded"
wdl-run-lipid :
miniwdl run wdl/metaMS_lcmslipidomics.wdl -i wdl/metams_input_lipidomics.json --verbose --no-cache --copy-input-files
wdl-run-lipid-local:
@make docker-build-local
miniwdl run wdl/metaMS_lcmslipidomics.wdl -i wdl/metams_input_lipidomics_local_docker.json --verbose --no-cache --copy-input-files
get-test-data:
@make get-lipid-test-data
@make get-lcms-database
@make get-lcms-metab-test-data
wdl-run-lcms-metab :
miniwdl run wdl/metaMS_lcms_metabolomics.wdl -i wdl/metams_input_lcms_metabolomics.json --verbose --no-cache --copy-input-files
wdl-run-lcms-metab-local:
@make docker-build-local
miniwdl run wdl/metaMS_lcms_metabolomics.wdl -i wdl/metams_input_lcms_metabolomics_local_docker.json --verbose --no-cache --copy-input-files
convert_lipid_rst_to_md:
# convert the lipid documentation from rst to md and render it into html
pandoc -f rst -t markdown -o docs/lcms_lipidomics/README_LCMS_LIPID.md docs/lcms_lipidomics/index.rst
pandoc -f rst -t html -o docs/lcms_lipidomics/index.html docs/lcms_lipidomics/index.rst
convert_lcmsmetab_rst_to_md:
# convert the lcms metabolomics documentation from rst to md and render it into html
pandoc -f rst -t markdown -o docs/lcms_metabolomics/README_LCMS_METABOLOMICS.md docs/lcms_metabolomics/index.rst
pandoc -f rst -t html -o docs/lcms_metabolomics/index.html docs/lcms_metabolomics/index.rst
docu:
# Generate the documentation
pdoc --output-dir docs --docformat numpy metaMS