This commit is contained in:
@@ -20,38 +20,10 @@ jobs:
|
|||||||
DJANGO_DEBUG: "False"
|
DJANGO_DEBUG: "False"
|
||||||
DJANGO_ALLOWED_HOSTS: "127.0.0.1,localhost"
|
DJANGO_ALLOWED_HOSTS: "127.0.0.1,localhost"
|
||||||
IMAGE_NAME: achievement_inputing_ci
|
IMAGE_NAME: achievement_inputing_ci
|
||||||
ES_IMAGE: docker.elastic.co/elasticsearch/elasticsearch:7.17.9
|
|
||||||
NET_NAME: ci-net
|
|
||||||
steps:
|
steps:
|
||||||
- name: Prepare Docker network
|
|
||||||
run: |
|
|
||||||
docker network inspect "$NET_NAME" >/dev/null 2>&1 || docker network create "$NET_NAME"
|
|
||||||
- name: Start Elasticsearch
|
|
||||||
run: |
|
|
||||||
docker run -d --rm --name es --network "$NET_NAME" -p 9200:9200 \
|
|
||||||
-e discovery.type=single-node \
|
|
||||||
-e xpack.security.enabled=false \
|
|
||||||
-e ES_JAVA_OPTS="-Xms512m -Xmx512m" \
|
|
||||||
"$ES_IMAGE"
|
|
||||||
- name: Wait for Elasticsearch
|
|
||||||
run: |
|
|
||||||
for i in $(seq 1 60); do
|
|
||||||
if curl -sf http://localhost:9200 >/dev/null; then exit 0; fi
|
|
||||||
sleep 1
|
|
||||||
done
|
|
||||||
exit 1
|
|
||||||
- name: Build application image
|
- name: Build application image
|
||||||
run: |
|
run: |
|
||||||
docker build -t "$IMAGE_NAME" -f Dockerfile .
|
docker build -t "$IMAGE_NAME" -f Dockerfile .
|
||||||
- name: Run checks and tests
|
- name: Output image info
|
||||||
run: |
|
run: |
|
||||||
docker run --rm --network "$NET_NAME" \
|
docker image inspect "$IMAGE_NAME" --format '{{.Id}} {{.Size}}'
|
||||||
-e DJANGO_SECRET_KEY="$DJANGO_SECRET_KEY" \
|
|
||||||
-e DJANGO_DEBUG="$DJANGO_DEBUG" \
|
|
||||||
-e DJANGO_ALLOWED_HOSTS="$DJANGO_ALLOWED_HOSTS" \
|
|
||||||
-e ELASTICSEARCH_URL="http://es:9200" \
|
|
||||||
"$IMAGE_NAME" \
|
|
||||||
sh -lc "python manage.py migrate --noinput && python manage.py check --deploy && python -m compileall . && python manage.py collectstatic --noinput && python manage.py test"
|
|
||||||
- name: Stop Elasticsearch
|
|
||||||
run: |
|
|
||||||
docker rm -f es || true
|
|
||||||
|
|||||||
Reference in New Issue
Block a user