This repository has been archived by the owner on Feb 15, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Makefile
93 lines (77 loc) · 2.62 KB
/
Makefile
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
############################################################################
# defaults
############################################################################
podman=`which podman`
python3=`which python3`
tox=`which tox`
pip=`which pip`
pc=`which pip-compile`
ps=`which pip-sync`
openssl=`which openssl`
type=patch
############################################################################
# container targets
############################################################################
build-container: Containerfile
$(podman) build --build-arg CORGI_SERVER_URL="${CORGI_SERVER_URL}" \
--build-arg OSIDB_SERVER_URL="${OSIDB_SERVER_URL}" \
--build-arg REQUESTS_CA_BUNDLE="${REQUESTS_CA_BUNDLE}" \
--build-arg PIP_INDEX_URL="${PIP_INDEX_URL}" \
--build-arg ROOT_CA_URL="${ROOT_CA_URL}" \
--tag localhost/griffon .
run-container:
podman run --privileged -it -v ~/.griffonrc:/root/.griffonrc -v /etc/krb5.conf:/etc/krb5.conf localhost/griffon
############################################################################
# test targets
############################################################################
test-all:
$(tox)
test:
black .
$(tox)
acceptance-tests:
$(tox) -e acceptance-tests
smoke-tests:
scripts/smoke-tests.sh > smoke-tests.log 2>&1
############################################################################
# requirements target
############################################################################
compile-deps:
$(pc) --generate-hashes --allow-unsafe requirements/base.in
$(pc) --generate-hashes --allow-unsafe requirements/test.in
$(pc) --generate-hashes --allow-unsafe requirements/lint.in
$(pc) --generate-hashes --allow-unsafe requirements/dev.in
install-dev-deps:
$(pip) install -r requirements/dev.txt
sync-dev-deps:
$(ps) requirements/dev.txt
############################################################################
# griffon targets
############################################################################
build:
$(python3) -m build
install:
$(pip) install .
docs:
$(tox) -e manpages
############################################################################
# dev targets
############################################################################
shell:
ipython
setup-venv:
virtualenv --python=/usr/bin/python3.9 venv
release:
scripts/release.sh $(type)
############################################################################
# utility targets
############################################################################
clean:
rm -Rf dist
rm -Rf man
rm -Rf griffon.egg-info
rm -Rf build
update:
git fetch --all
git rebase origin/main
pip install .