1
0
mirror of https://github.com/projectatomic/atomic.git synced 2026-02-06 03:45:28 +01:00
Files
atomic/Makefile
Brent Baude 8ea8d1e82e make vagrant-check: Run tests with vagrant
Run tests in a vagrant session (w/libvirt for now).  This allows
the tests to occur similar to the way our jenkins tests work. Run
make vagrant-check and we created an F24 session and install
the proper deps.  We then call the .redhat-ci.sh script inside
the vagrant session and the tests are executed.  At this time, you
will need to vagrant halt to shutdown the session when comlete.

By default, the tests will exeute on an instance of fedora-24-atomic.
You can test on Colin's CAHC centos-atomic by:

make vagrant-check BOX=centos_atomic

Closes: #736
Approved by: rhatdan
2016-11-07 17:01:06 +00:00

98 lines
2.7 KiB
Makefile

# Installation directories.
PREFIX ?= $(DESTDIR)/usr
SYSCONFDIR ?= $(DESTDIR)/etc/sysconfig
PROFILEDIR ?= $(DESTDIR)/etc/profile.d
PYTHON ?= /usr/bin/python
PYTHON3 ?= /usr/bin/python3
PYLINT ?= $(PYTHON) -m pylint
PYTHON3_PYLINT ?= $(PYTHON3) -m pylint
GO_MD2MAN ?= /usr/bin/go-md2man
GO ?= /usr/bin/go
PYTHONSITELIB=$(shell $(PYTHON) -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(0))")
VERSION=$(shell $(PYTHON) setup.py --version)
export GOPATH = $(shell pwd)/godeps
BOX="fedora_atomic"
.PHONY: all
all: python-build docs pylint-check dockertar-sha256-helper gotar
.PHONY: test-python3-pylint
test-python3-pylint:
$(PYTHON3_PYLINT) --disable=all --enable=E --enable=W --additional-builtins=_ *.py atomic Atomic tests/unit/*.py -d=no-absolute-import,print-statement,no-absolute-import,bad-builtin
.PHONY: test check
check: test
test: all test-python3-pylint
./test.sh
test-destructive: all
ENABLE_DESTRUCTIVE=1 ./test.sh
.PHONY: python-build
python-build:
$(PYTHON) setup.py build
.PHONY: pylint-check
pylint-check:
$(PYLINT) --disable=all --enable=E --enable=W --additional-builtins=_ *.py atomic Atomic tests/unit/*.py -d=no-absolute-import,print-statement,no-absolute-import,bad-builtin
MANPAGES_MD = $(wildcard docs/*.md)
docs/%.1: docs/%.1.md
$(GO_MD2MAN) -in $< -out $@.tmp && touch $@.tmp && mv $@.tmp $@
.PHONY: docs
docs: $(MANPAGES_MD:%.md=%)
dockertar-sha256-helper: dockertar-sha256-helper.go
$(GO) build dockertar-sha256-helper.go
gotar: gotar.go
$(GO) build -o $@ $<
.PHONY: clean
clean:
$(PYTHON) setup.py clean
-rm -rf dist build *~ \#* *pyc .#* docs/*.1
.PHONY: install-only
install-only:
$(PYTHON) setup.py install --install-scripts /usr/share/atomic `test -n "$(DESTDIR)" && echo --root $(DESTDIR)`
(cd $(DESTDIR)/$(PYTHONSITELIB) && rm -f atomic-$(VERSION)-*egg-info)
install -d -m 0755 $(DESTDIR)/usr/bin
ln -fs ../share/atomic/atomic $(DESTDIR)/usr/bin/atomic
install -d -m 0755 $(DESTDIR)/usr/libexec/atomic
install -m 0755 dockertar-sha256-helper migrate.sh gotar $(DESTDIR)/usr/libexec/atomic
[ -d $(SYSCONFDIR) ] || mkdir -p $(SYSCONFDIR)
install -m 644 atomic.sysconfig $(SYSCONFDIR)/atomic
[ -d $(PROFILEDIR) ] || mkdir -p $(PROFILEDIR)
install -m 644 atomic.sh $(PROFILEDIR)
install -d $(PREFIX)/share/man/man1
install -m 644 $(basename $(MANPAGES_MD)) $(PREFIX)/share/man/man1
echo ".so man1/atomic-push.1" > $(PREFIX)/share/man/man1/atomic-upload.1
install -m 644 atomic.conf $(DESTDIR)/etc
install -d $(DESTDIR)/etc/atomic.d
.PHONY: install
install: all install-only
.PHONY: install-openscap
install-openscap:
install -m 644 atomic.d/openscap $(DESTDIR)/etc/atomic.d
.PHONY: vagrant-check
vagrant-check:
BOX=$(BOX) sh ./vagrant.sh