-
Notifications
You must be signed in to change notification settings - Fork 22
/
Copy pathMakefile
67 lines (55 loc) · 1.83 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
VIRTUAL_ENV ?= venv
PIP=$(VIRTUAL_ENV)/bin/pip
PYTHON=$(VIRTUAL_ENV)/bin/python
PYTHON_MAJOR_VERSION=3
PYTHON_MINOR_VERSION=6
COVERALLS=$(VIRTUAL_ENV)/bin/coveralls
COVERAGE=$(VIRTUAL_ENV)/bin/coverage
SYSTEM_DEPENDENCIES= \
gir1.2-notify-0.7 \
git \
libpython$(PYTHON_VERSION)-dev \
python$(PYTHON_VERSION) \
python$(PYTHON_VERSION)-dev \
python3-aptdaemon \
python3-aptdaemon.gtk3widgets \
python3-gi \
virtualenv
PYTHON_VERSION=$(PYTHON_MAJOR_VERSION).$(PYTHON_MINOR_VERSION)
PYTHON_MAJOR_MINOR=$(PYTHON_MAJOR_VERSION)$(PYTHON_MINOR_VERSION)
PYTHON_WITH_VERSION=python$(PYTHON_VERSION)
DOCKER_IMAGE=gerardpuig/ubuntu-cleaner
DOCKER_VOLUME=/tmp/.X11-unix:/tmp/.X11-unix
all: virtualenv
system_dependencies:
apt install --yes --no-install-recommends $(SYSTEM_DEPENDENCIES)
$(VIRTUAL_ENV):
virtualenv --python=$(PYTHON_WITH_VERSION) --system-site-packages $(VIRTUAL_ENV)
$(PIP) install -r requirements.txt
virtualenv: $(VIRTUAL_ENV)
deb:
# Launchpad fix to avoid debian build rule to execute unittest discover on ubuntucleaner main package.
mkdir tests_build
touch tests_build/__init__.py
$(PYTHON) setup.py --command-packages=stdeb.command sdist_dsc bdist_deb
rm -rf tests_build
clean:
@rm -rf deb_dist dist ubuntu_cleaner.egg-info
@rm -f ubuntu-cleaner*.tar.gz
test: virtualenv
$(COVERAGE) run --source=ubuntucleaner -m unittest discover tests
$(COVERAGE) report
@if [ -n "$$CI" ]; then $(COVERALLS); fi \
run: virtualenv
$(PYTHON) ubuntu-cleaner
docker/build:
docker build --tag=$(DOCKER_IMAGE) .
docker/make/%:
docker run --env-file docker.env -v $(DOCKER_VOLUME) --rm $(DOCKER_IMAGE) make $*
docker/shell:
docker run --env-file docker.env -v $(DOCKER_VOLUME) -it --rm $(DOCKER_IMAGE)
.ONESHELL:
launchpad: deb
cd deb_dist
debsign `ls *source.changes`
dput ppa:gerardpuig/ppa `ls *source.changes`