@@ -17,12 +17,26 @@ default:
17
17
@echo
18
18
@exit 1
19
19
20
- .state/docker-build : Dockerfile package.json package-lock.json requirements/main.txt requirements/deploy.txt
21
- # Build our docker containers for this project.
20
+ .state/docker-build-web : Dockerfile package.json package-lock.json requirements/main.txt requirements/deploy.txt requirements/lint.txt requirements/docs.txt requirements/dev.txt requirements/tests .txt
21
+ # Build our web container for this project.
22
22
docker-compose build --build-arg IPYTHON=$(IPYTHON ) --force-rm web
23
- docker-compose build --force-rm worker
23
+
24
+ # Mark the state so we don't rebuild this needlessly.
25
+ mkdir -p .state
26
+ touch .state/docker-build-web
27
+
28
+ .state/docker-build-static : Dockerfile package.json package-lock.json .babelrc
29
+ # Build our static container for this project.
24
30
docker-compose build --force-rm static
25
31
32
+ # Mark the state so we don't rebuild this needlessly.
33
+ mkdir -p .state
34
+ touch .state/docker-build-static
35
+
36
+ .state/docker-build : .state/docker-build-web .state/docker-build-static
37
+ # Build the worker container for this project
38
+ docker-compose build --force-rm worker
39
+
26
40
# Mark the state so we don't rebuild this needlessly.
27
41
mkdir -p .state
28
42
touch .state/docker-build
@@ -35,52 +49,52 @@ build:
35
49
serve : .state/docker-build
36
50
docker-compose up --remove-orphans
37
51
38
- debug : .state/docker-build
52
+ debug : .state/docker-build-web
39
53
docker-compose run --rm --service-ports web
40
54
41
- tests : .state/docker-build
55
+ tests : .state/docker-build-web
42
56
docker-compose run --rm web bin/tests --postgresql-host db $(T ) $(TESTARGS )
43
57
44
- static_tests : .state/docker-build
58
+ static_tests : .state/docker-build-static
45
59
docker-compose run --rm static bin/static_tests $(T ) $(TESTARGS )
46
60
47
- static_pipeline : .state/docker-build
61
+ static_pipeline : .state/docker-build-static
48
62
docker-compose run --rm static bin/static_pipeline $(T ) $(TESTARGS )
49
63
50
- reformat : .state/docker-build
64
+ reformat : .state/docker-build-web
51
65
docker-compose run --rm web bin/reformat
52
66
53
- lint : .state/docker-build
67
+ lint : .state/docker-build-web
54
68
docker-compose run --rm web bin/lint && bin/static_lint
55
69
56
- docs : .state/docker-build
70
+ docs : .state/docker-build-web
57
71
docker-compose run --rm web bin/docs
58
72
59
- licenses : .state/docker-build
73
+ licenses : .state/docker-build-web
60
74
docker-compose run --rm web bin/licenses
61
75
62
- deps : .state/docker-build
76
+ deps : .state/docker-build-web
63
77
docker-compose run --rm web bin/deps
64
78
65
- translations : .state/docker-build
79
+ translations : .state/docker-build-web
66
80
docker-compose run --rm web bin/translations
67
81
68
82
requirements/% .txt : requirements/% .in
69
83
docker-compose run --rm web bin/pip-compile --allow-unsafe --generate-hashes --output-file=$@ $<
70
84
71
- initdb :
85
+ initdb : .state/docker-build-web
72
86
docker-compose run --rm web psql -h db -d postgres -U postgres -c " SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname ='warehouse';"
73
87
docker-compose run --rm web psql -h db -d postgres -U postgres -c " DROP DATABASE IF EXISTS warehouse"
74
88
docker-compose run --rm web psql -h db -d postgres -U postgres -c " CREATE DATABASE warehouse ENCODING 'UTF8'"
75
89
xz -d -f -k dev/$(DB ) .sql.xz --stdout | docker-compose run --rm web psql -h db -d warehouse -U postgres -v ON_ERROR_STOP=1 -1 -f -
76
90
docker-compose run --rm web python -m warehouse db upgrade head
91
+ docker-compose run --rm web python -m warehouse sponsors populate-db
77
92
$(MAKE ) reindex
78
- docker-compose run web python -m warehouse sponsors populate-db
79
93
80
- reindex :
94
+ reindex : .state/docker-build-web
81
95
docker-compose run --rm web python -m warehouse search reindex
82
96
83
- shell :
97
+ shell : .state/docker-build-web
84
98
docker-compose run --rm web python -m warehouse shell
85
99
86
100
clean :
0 commit comments