OSDN Git Service

fix build/test-container files
authorhylom <hylom@users.osdn.me>
Wed, 29 May 2019 12:14:16 +0000 (12:14 +0000)
committerhylom <hylom@users.osdn.me>
Wed, 29 May 2019 12:14:16 +0000 (12:14 +0000)
build-container/Makefile [new file with mode: 0644]
build-container/files/entrypoint.sh
test-container/install-test/Makefile [new file with mode: 0644]
test-container/newslash/Dockerfile_for_jenkins
test-container/newslash/Dockerfiles/base [moved from test-container/newslash/Dockerfile with 94% similarity]
test-container/newslash/Makefile
test-container/ns-searchd/Dockerfile [moved from test-container/newslash/Dockerfile_for_searchd with 69% similarity]
test-container/ns-searchd/Makefile [new file with mode: 0644]

diff --git a/build-container/Makefile b/build-container/Makefile
new file mode 100644 (file)
index 0000000..2605c0f
--- /dev/null
@@ -0,0 +1,6 @@
+image:
+       docker build -t newslash-build .
+
+run:
+       docker run -ti --rm -v $(shell pwd)/build:/var/newslash/build newslash-build bash
+
index 554e670..ebffbb5 100644 (file)
@@ -26,7 +26,10 @@ else
 fi
 
 # generate changelog
-./misc/gen_changelog.sh > debian/changelog
+./misc/gen_changelog.sh > ./debian/changelog
+git describe --tags HEAD | tr -d "\n" > ./src/newslash_web/templates/package_revision
+date +" %Y-%m-%d %T %Z" | tr -d "\n" >> ./src/newslash_web/templates/package_revision
+
 
 # create default config file
 #cp /home/hylom/mojolicious/src/newslash_web/newslash-web.production.json ./repo/src/newslash_web/'
diff --git a/test-container/install-test/Makefile b/test-container/install-test/Makefile
new file mode 100644 (file)
index 0000000..a89b698
--- /dev/null
@@ -0,0 +1,12 @@
+install-test-env: $(INSTALL_TEST_DOCKERFILE) files
+       docker build $(DOCKER_OPTS) -f $< -t newslash-install-test .
+
+install-test:
+       docker run -ti --rm -v $(APT_REPO_DIR):/var/local-repo \
+       --add-host srad-test-db:$(DB_HOST) \
+       --add-host newslash-redis:$(REDIS_HOST) \
+       -v $(shell pwd)/newslash.conf:/etc/newslash/newslash.conf \
+       -e APT_REPO="$(APT_REPO)" \
+       -p 8000:80 \
+       newslash-install-test bash
+
index 6676c45..16bfc32 100644 (file)
@@ -1,15 +1,13 @@
-#FROM debian:stretch
-FROM stretch_mojolicious
+FROM newslash-base:latest
 
-RUN apt-get update -y
+# install jenkins related packaged
 RUN apt-get install -y openjdk-8-jdk openssh-server
 EXPOSE 22
+COPY files/jenkins.pub /root/.ssh/authorized_keys
+RUN chmod 600 /root/.ssh/authorized_keys
 
-RUN groupadd jenkins && useradd -d /home/jenkins -g jenkins -m jenkins
 
-RUN mkdir /home/jenkins/.ssh
-COPY files/id_jenkins.pub /home/jenkins/.ssh/authorized_keys
-RUN chown -R jenkins:jenkins /home/jenkins/.ssh \
- && chmod 700 /home/jenkins/.ssh \
- && chmod 600 /home/jenkins/.ssh/*
 RUN mkdir -p /run/sshd
+CMD ["/usr/sbin/sshd", "-D"]
+EXPOSE 80
+
similarity index 94%
rename from test-container/newslash/Dockerfile
rename to test-container/newslash/Dockerfiles/base
index 41a8f67..e295e9e 100644 (file)
@@ -31,5 +31,5 @@ RUN apt-get install -y libdevel-nytprof-perl
 #RUN dpkg -i /tmp/$PYLUCENE_DEB
 
 COPY files/newslash.cnf /etc/mysql/conf.d/
-EXPOSE 80
+CMD ["/var/newslash/src/newslash_web/script/newslash_web", "daemon" ]
 
index 86141be..30d3185 100644 (file)
@@ -1,39 +1,34 @@
-TAG_NAME=newslash-base
-HOST_NAME= sdtest.osdn.co.jp:5000
-NEWSLASH_DIR=$(shell pwd)/../
-PORT_OPTS=-p 3000:3000
-SEARCHD_DOCKERFILE=Dockerfile_for_searchd
-INSTALL_TEST_DOCKERFILE=installtest_Dockerfile
+NEWSLASH_DIR=$(shell pwd)/../../
+IMAGE_NAME=newslash-base
+CONTAINER_NAME=newslash-dev
 
-DB_HOST=172.17.0.7
-REDIS_HOST=172.17.0.8
-APT_REPO_DIR=/var/debian-osdn/debian-osdn/srad-devel
-APT_REPO=file:/var/local-repo ./
+PORT_OPTS=-p 3000:3000
+LINK_OPTS=--link srad-db:srad-test-db \
+          --link newslash-redis:newslash-redis \
+         --link newslash-db:newslash-db 
+#        --link newslash-searchd:newslash-searchd
+CERTS_OPTS=-v /etc/letsencrypt:/var/certs
+ENV=-e "MOJO_LISTEN=https://*:3000?cert=/var/certs/live/sdtest.osdn.co.jp/cert.pem&key=/var/certs/live/sdtest.osdn.co.jp/privkey.pem"
 
-build-base: Dockerfile files
-       docker build $(DOCKER_OPTS) -t newslash-base .
 
-run:
-       docker run -ti --rm $(PORT_OPTS) -v $(NEWSLASH_DIR):/var/newslash newslash-base bash
+image: Dockerfiles/base files
+       docker build -f $< $(DOCKER_OPTS) -t $(IMAGE_NAME) .
 
-searchd: $(SEARCHD_DOCKERFILE) files
-       docker build $(DOCKER_OPTS) -f $< -t newslash-searchd-base .
+shell:
+       docker run --rm -ti $(ENV) $(PORT_OPTS) $(LINK_OPTS) $(CERTS_OPTS) -v $(NEWSLASH_DIR):/var/newslash $(IMAGE_NAME) bash
 
-searchd-run:
-       docker run -ti --rm -p 6000:6000 -v $(NEWSLASH_DIR):/var/newslash newslash-searchd-base bash
+run:
+#      test -n $(docker ps -a --format "{{.Names}}" | grep $(CONTAINER_NAME)) && docker rm $(IMAGE_NAME)
+#      docker run -ti --name $(CONTAINER_NAME) $(ENV) $(PORT_OPTS) $(LINK_OPTS) $(CERTS_OPTS) -v $(NEWSLASH_DIR):/var/newslash $(IMAGE_NAME)
+       docker run --name $(IMAGE_NAME) -ti $(ENV) $(PORT_OPTS) $(LINK_OPTS) $(CERTS_OPTS) -v $(NEWSLASH_DIR):/var/newslash $(IMAGE_NAME)
 
-push-searchd:
-       docker push $(HOST_NAME)/osdn/newslash-searchd
+test:
+#      test -n $(docker ps -a --format "{{.Names}}" | grep $(CONTAINER_NAME)) && docker rm $(IMAGE_NAME)
+       docker run --name $(IMAGE_NAME) -ti $(ENV) $(PORT_OPTS) $(LINK_OPTS) $(CERTS_OPTS) -v $(NEWSLASH_DIR):/var/newslash $(IMAGE_NAME) /var/newslash/src/newslash_web/script/newslash_web test -m test
 
-install-test-env: $(INSTALL_TEST_DOCKERFILE) files
-       docker build $(DOCKER_OPTS) -f $< -t newslash-install-test .
+stop:
+       docker stop $(CONTAINER_NAME)
 
-install-test:
-       docker run -ti --rm -v $(APT_REPO_DIR):/var/local-repo \
-       --add-host srad-test-db:$(DB_HOST) \
-       --add-host newslash-redis:$(REDIS_HOST) \
-       -v $(shell pwd)/newslash.conf:/etc/newslash/newslash.conf \
-       -e APT_REPO="$(APT_REPO)" \
-       -p 8000:80 \
-       newslash-install-test bash
+restart:
+       docker restart $(CONTAINER_NAME)
 
similarity index 69%
rename from test-container/newslash/Dockerfile_for_searchd
rename to test-container/ns-searchd/Dockerfile
index c29a8bb..a75ea21 100644 (file)
@@ -5,16 +5,13 @@ ENV PYLUCENE_DEB=python-lucene_4.10.1+osdn-1_amd64.deb
 
 # install basic packages
 RUN apt-get update -y
-RUN apt-get install -y vim-nox lv less 
 
 # install python and lucene packages
-RUN apt-get install -y pylucene python-mysql.connector liblucene4.10-java libasm-java
-RUN apt-get install -y python-yaml
+RUN apt-get install -y pylucene python-mysql.connector liblucene4.10-java libasm-java python-yaml
 
 # install custom pylucene package
 COPY files/$PYLUCENE_DEB /tmp
 RUN dpkg -i /tmp/$PYLUCENE_DEB
 
-COPY files/newslash.cnf /etc/mysql/conf.d/
-EXPOSE 6000
+#COPY files/newslash.cnf /etc/mysql/conf.d/
 
diff --git a/test-container/ns-searchd/Makefile b/test-container/ns-searchd/Makefile
new file mode 100644 (file)
index 0000000..d33e29a
--- /dev/null
@@ -0,0 +1,16 @@
+NEWSLASH_DIR=$(shell pwd)/../../
+IMAGE_NAME=newslash-searchd
+CONTAINER_NAME=newslash-searchd
+
+PORT_OPTS=-p 6000:6000
+LINK_OPTS=--link srad-db:srad-test-db --link newslash-redis:newslash-redis
+CERTS_OPTS=-v /etc/letsencrypt:/var/certs
+ENV=-e "MOJO_LISTEN=https://*:3000?cert=/var/certs/live/sdtest.osdn.co.jp/cert.pem&key=/var/certs/live/sdtest.osdn.co.jp/privkey.pem"
+
+
+image: Dockerfile files
+       docker build $(DOCKER_OPTS) -f $< -t $(IMAGE_NAME) .
+
+run:
+       docker run -ti --rm -p 6000:6000 -v $(NEWSLASH_DIR):/var/newslash $(IMAGE_NAME) bash
+