diff options
author | Suren A. Chilingaryan <csa@suren.me> | 2019-09-02 21:21:29 +0200 |
---|---|---|
committer | Suren A. Chilingaryan <csa@suren.me> | 2019-09-02 21:21:29 +0200 |
commit | 9ee658cba222c4141d90f868a45ac3718d655852 (patch) | |
tree | eed31c493fe9bc9a69d4895bd72d5a5aa8956c71 /Makefile | |
download | gentoo-builder-9ee658cba222c4141d90f868a45ac3718d655852.tar.gz gentoo-builder-9ee658cba222c4141d90f868a45ac3718d655852.tar.bz2 gentoo-builder-9ee658cba222c4141d90f868a45ac3718d655852.tar.xz gentoo-builder-9ee658cba222c4141d90f868a45ac3718d655852.zip |
Proof of concept
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..afa4bcc --- /dev/null +++ b/Makefile @@ -0,0 +1,79 @@ +all: build +install: push + +.PHONY: rebuild builder update bash connect start stop restart bash logs debug cancel bootstrap reinit check + + + +# This is bootstrap image +bootstrap: bootstrap/Dockerfile + docker build --tag chsa/gbootstrap:latest bootstrap + +reinit: bootstrap/Dockerfile + docker build --no-cache --tag chsa/gbootstrap:latest bootstrap + +check: bootstrap/Dockerfile + if [ `docker ps -a | grep chsa/gbootstrap | wc -l` -gt 0 ]; then \ + docker rm gbootstrap ;\ + fi ;\ + docker run -v /home/docker/volumes/binpkgs:/var/cache/binpkgs --name gbootstrap -it chsa/gbootstrap:latest /bin/bash + + +# This is builder itself +builder: bootstrap bootstrap/Dockerfile + docker build --tag chsa/gbuilder:latest builder + +update: builder/Dockerfile + docker build --no-cache --tag chsa/gbuilder:latest builder + +bash: + if [ `docker ps | grep chsa/gbuilder:latest | wc -l` -eq 0 ]; then \ + if [ `docker ps -a | grep gbuilder:latest | wc -l` -gt 0 ]; then \ + echo "Stalled copy... Remove to continue..." ;\ + echo "docker rm gbuilder" ;\ + exit 1 ;\ + fi ;\ + docker run -v /home/docker/volumes/binpkgs:/var/cache/binpkgs --name gbuilder -it chsa/gbuilder:latest /bin/bash ;\ + else \ + echo "Already running..." ;\ + fi + +build: + if [ `docker ps | grep chsa/gbuilder:latest | wc -l` -eq 0 ]; then \ + if [ `docker ps -a | grep gbuilder:latest | wc -l` -gt 0 ]; then \ + echo "Stalled copy... Remove to continue..." ;\ + echo "docker rm gbuilder" ;\ + exit 1 ;\ + fi ;\ + docker run -v /home/docker/volumes/binpkgs:/var/cache/binpkgs --name gbuilder -t -d chsa/gbuilder:latest ;\ + else \ + echo "Already running..." ;\ + fi + +stop: + @if [ `docker ps | grep gbuilder | wc -l` -gt 0 ]; then \ + docker stop gbuilder ;\ + fi + +cancel: + @if [ `docker ps -a | grep gbuilder | wc -l` -gt 0 ]; then \ + docker stop gbuilder ;\ + docker rm -f gbuilder ;\ + fi + +restart: + make cancel + make build + +# Control +logs: + docker logs -f gbuilder + +connect: + docker exec -it gbuilder /bin/bash + +# Slow & big, avoid if possible +debug: stop + echo "Generating image from container. Thats slow!" ; \ + docker commit gbuilder gbuilder-debug ;\ + docker run -v /home/docker/volumes/binpkgs:/var/cache/binpkgs --name gbuilder-debug -ti bash |