Putting a bow on some of the new dev workflow

* Documentation of the developer variety
* Defaulting the COMPOSE_TAG to develop, can be overridden
* Automatic docker login assuming gcr login
* Including a manual build step as an alternative to gcr
* Make qpid container shut the f**k up when it's running
This commit is contained in:
Matthew Jones 2016-08-25 11:57:31 -04:00
parent c8e2f73d48
commit b507dc53ea
3 changed files with 18 additions and 5 deletions

View File

@ -9,7 +9,11 @@ NODE ?= node
NPM_BIN ?= npm
DEPS_SCRIPT ?= packaging/bundle/deps.py
GIT_BRANCH ?= $(shell git rev-parse --abbrev-ref HEAD)
COMPOSE_TAG ?= $(GIT_BRANCH)
GCLOUD_AUTH ?= $(shell gcloud auth print-access-token)
COMPOSE_TAG ?= devel
# NOTE: This defaults the container image version to the branch that's active
# COMPOSE_TAG ?= $(GIT_BRANCH)
VENV_BASE ?= /venv
SCL_PREFIX ?=
@ -720,20 +724,28 @@ install:
export SCL_PREFIX HTTPD_SCL_PREFIX
$(PYTHON) setup.py install $(SETUP_INSTALL_ARGS)
docker-auth:
docker login -e 1234@5678.com -u oauth2accesstoken -p "$(GCLOUD_AUTH)" https://gcr.io
# Docker Compose Development environment
docker-compose:
docker-compose: docker-auth
TAG=$(COMPOSE_TAG) docker-compose -f tools/docker-compose.yml up --no-recreate
docker-compose-test:
docker-compose-test: docker-auth
cd tools && TAG=$(COMPOSE_TAG) docker-compose run --rm --service-ports tower /bin/bash
docker-compose-build:
docker build -t ansible/tower_devel -f tools/docker-compose/Dockerfile .
docker tag ansible/tower_devel gcr.io/ansible-tower-engineering/tower_devel:$(COMPOSE_TAG)
#docker push gcr.io/ansible-tower-engineering/tower_devel:$(COMPOSE_TAG)
MACHINE?=default
docker-clean:
rm -f awx/lib/.deps_built
eval $$(docker-machine env $(MACHINE))
docker stop $$(docker ps -a -q)
-docker rm $$(docker ps -f name=tools_tower -a -q)
-docker rmi tools_tower
-docker images | grep "tower_devel" | awk '{print $3}' | xargs docker rmi
docker-refresh: docker-clean docker-compose

View File

@ -25,6 +25,7 @@ services:
qpid:
image: fedora/qpid:latest
entrypoint: qpidd --auth=no
# Source Code Synchronization Container
# sync:

View File

@ -26,7 +26,7 @@ ADD tools/docker-compose/ansible_tower.egg-info /tmp/ansible_tower.egg-info
RUN ln -s /tower_devel/tools/docker-compose/start_development.sh /start_development.sh
WORKDIR /tmp
RUN SWIG_FEATURES="-cpperraswarn -includeall -D__`uname -m`__ -I/usr/include/openssl" VENV_BASE="/venv" make requirements_dev
WORKDIR /
EXPOSE 8013 8080 22
ENTRYPOINT ["/usr/bin/dumb-init"]
CMD /start_development.sh