Skip to content

Commit 86af888

Browse files
authored
Merge pull request #496 from srvrco/debian-nslookup-error
Use default awk on most images, add debian:latest and ubuntu:latest
2 parents 2450267 + 6b17701 commit 86af888

9 files changed

+134
-85
lines changed

docker-compose.yml

+87-48
Original file line numberDiff line numberDiff line change
@@ -21,33 +21,33 @@ services:
2121
networks:
2222
acmenet:
2323
ipv4_address: 10.30.50.3
24-
getssl-ubuntu18:
24+
getssl-alpine:
2525
build:
2626
context: .
27-
dockerfile: test/Dockerfile-ubuntu18
28-
container_name: getssl-ubuntu18
27+
dockerfile: test/Dockerfile-alpine
28+
container_name: getssl-alpine
2929
volumes:
3030
- .:/getssl
3131
environment:
32-
GETSSL_HOST: ubuntu18.getssl.test
33-
GETSSL_IP: 10.30.50.4
34-
NGINX_CONFIG: /etc/nginx/sites-enabled/default
32+
GETSSL_HOST: alpine.getssl.test
33+
GETSSL_IP: 10.30.50.10
34+
NGINX_CONFIG: /etc/nginx/conf.d/default.conf
3535
networks:
3636
acmenet:
37-
ipv4_address: 10.30.50.4
37+
ipv4_address: 10.30.50.10
3838
aliases:
39-
- ubuntu18.getssl.test
40-
- a.ubuntu18.getssl.test
41-
- b.ubuntu18.getssl.test
42-
- c.ubuntu18.getssl.test
43-
- d.ubuntu18.getssl.test
44-
- e.ubuntu18.getssl.test
45-
- f.ubuntu18.getssl.test
46-
- g.ubuntu18.getssl.test
47-
- h.ubuntu18.getssl.test
48-
- i.ubuntu18.getssl.test
49-
- j.ubuntu18.getssl.test
50-
- k.ubuntu18.getssl.test
39+
- alpine.getssl.test
40+
- a.alpine.getssl.test
41+
- b.alpine.getssl.test
42+
- c.alpine.getssl.test
43+
- d.alpine.getssl.test
44+
- e.alpine.getssl.test
45+
- f.alpine.getssl.test
46+
- g.alpine.getssl.test
47+
- h.alpine.getssl.test
48+
- i.alpine.getssl.test
49+
- j.alpine.getssl.test
50+
- k.alpine.getssl.test
5151
getssl-centos6:
5252
build:
5353
context: .
@@ -57,11 +57,11 @@ services:
5757
- .:/getssl
5858
environment:
5959
GETSSL_HOST: centos6.getssl.test
60-
GETSSL_IP: 10.30.50.5
60+
GETSSL_IP: 10.30.50.11
6161
NGINX_CONFIG: /etc/nginx/conf.d/default.conf
6262
networks:
6363
acmenet:
64-
ipv4_address: 10.30.50.5
64+
ipv4_address: 10.30.50.11
6565
aliases:
6666
- centos6.getssl.test
6767
- a.centos6.getssl.test
@@ -75,50 +75,89 @@ services:
7575
- i.centos6.getssl.test
7676
- j.centos6.getssl.test
7777
- k.centos6.getssl.test
78-
getssl-alpine:
78+
getssl-debian:
7979
build:
8080
context: .
81-
dockerfile: test/Dockerfile-alpine
82-
container_name: getssl-alpine
81+
dockerfile: test/Dockerfile-debian
82+
container_name: getssl-debian
8383
volumes:
8484
- .:/getssl
8585
environment:
86-
GETSSL_HOST: alpine.getssl.test
87-
GETSSL_IP: 10.30.50.6
88-
NGINX_CONFIG: /etc/nginx/conf.d/default.conf
86+
GETSSL_HOST: debian.getssl.test
87+
GETSSL_IP: 10.30.50.12
88+
NGINX_CONFIG: /etc/nginx/sites-enabled/default
8989
networks:
9090
acmenet:
91-
ipv4_address: 10.30.50.6
91+
ipv4_address: 10.30.50.12
9292
aliases:
93-
- alpine.getssl.test
94-
- a.alpine.getssl.test
95-
- b.alpine.getssl.test
96-
- c.alpine.getssl.test
97-
- d.alpine.getssl.test
98-
- e.alpine.getssl.test
99-
- f.alpine.getssl.test
100-
- g.alpine.getssl.test
101-
- h.alpine.getssl.test
102-
- i.alpine.getssl.test
103-
- j.alpine.getssl.test
104-
- k.alpine.getssl.test
105-
getssl-ubuntu18-no-gawk:
93+
- debian.getssl.test
94+
- a.debian.getssl.test
95+
- b.debian.getssl.test
96+
- c.debian.getssl.test
97+
- d.debian.getssl.test
98+
- e.debian.getssl.test
99+
- f.debian.getssl.test
100+
- g.debian.getssl.test
101+
- h.debian.getssl.test
102+
- i.debian.getssl.test
103+
- j.debian.getssl.test
104+
- k.debian.getssl.test
105+
getssl-ubuntu:
106106
build:
107107
context: .
108-
dockerfile: test/Dockerfile-ubuntu18-no-gawk
109-
container_name: getssl-ubuntu18-no-gawk
108+
dockerfile: test/Dockerfile-ubuntu
109+
container_name: getssl-ubuntu
110110
volumes:
111111
- .:/getssl
112112
environment:
113-
GETSSL_HOST: ubuntu18-no-gawk.getssl.test
114-
GETSSL_IP: 10.30.50.7
113+
GETSSL_HOST: ubuntu.getssl.test
114+
GETSSL_IP: 10.30.50.13
115115
NGINX_CONFIG: /etc/nginx/sites-enabled/default
116-
TEST_AWK: "yes"
117116
networks:
118117
acmenet:
119-
ipv4_address: 10.30.50.7
118+
ipv4_address: 10.30.50.13
120119
aliases:
121-
- ubuntu18-no-gawk.getssl.test
120+
- ubuntu.getssl.test
121+
- a.ubuntu.getssl.test
122+
- b.ubuntu.getssl.test
123+
- c.ubuntu.getssl.test
124+
- d.ubuntu.getssl.test
125+
- e.ubuntu.getssl.test
126+
- f.ubuntu.getssl.test
127+
- g.ubuntu.getssl.test
128+
- h.ubuntu.getssl.test
129+
- i.ubuntu.getssl.test
130+
- j.ubuntu.getssl.test
131+
- k.ubuntu.getssl.test
132+
getssl-ubuntu18:
133+
build:
134+
context: .
135+
dockerfile: test/Dockerfile-ubuntu18
136+
container_name: getssl-ubuntu18
137+
volumes:
138+
- .:/getssl
139+
environment:
140+
GETSSL_HOST: ubuntu18.getssl.test
141+
GETSSL_IP: 10.30.50.14
142+
NGINX_CONFIG: /etc/nginx/sites-enabled/default
143+
networks:
144+
acmenet:
145+
ipv4_address: 10.30.50.14
146+
aliases:
147+
- ubuntu18.getssl.test
148+
- a.ubuntu18.getssl.test
149+
- b.ubuntu18.getssl.test
150+
- c.ubuntu18.getssl.test
151+
- d.ubuntu18.getssl.test
152+
- e.ubuntu18.getssl.test
153+
- f.ubuntu18.getssl.test
154+
- g.ubuntu18.getssl.test
155+
- h.ubuntu18.getssl.test
156+
- i.ubuntu18.getssl.test
157+
- j.ubuntu18.getssl.test
158+
- k.ubuntu18.getssl.test
159+
160+
122161

123162
networks:
124163
acmenet:

test/5-old-awk-error.bats

-24
This file was deleted.

test/Dockerfile-alpine

+6-4
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
FROM alpine:latest
22

3-
RUN apk --no-cache add supervisor openssl git curl bind-tools wget gawk nginx bash
4-
# RUN apk --no-cache add vim dos2unix # for debugging
3+
# Note this image uses busybox awk instead of gawk
4+
5+
RUN apk --no-cache add supervisor openssl git curl bind-tools wget nginx bash
56

67
WORKDIR /root
8+
9+
# Create nginx directories in standard places
710
RUN mkdir /run/nginx
811
RUN mkdir /etc/nginx/pki
912
RUN mkdir /etc/nginx/pki/private
10-
COPY ./test/test-config/nginx-ubuntu-no-ssl /etc/nginx/sites-enabled/default
11-
COPY ./test/alpine-supervisord.conf /etc/supervisord.conf
1213

1314
# BATS (Bash Automated Testings)
1415
RUN git clone https://github.com/bats-core/bats-core.git /bats-core
@@ -17,4 +18,5 @@ RUN git clone https://github.com/jasonkarns/bats-assert-1 /bats-assert
1718
RUN /bats-core/install.sh /usr/local
1819

1920
# Use supervisord to run nginx in the background
21+
COPY ./test/alpine-supervisord.conf /etc/supervisord.conf
2022
ENTRYPOINT /usr/bin/supervisord -c /etc/supervisord.conf

test/Dockerfile-centos6

+2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
FROM centos:centos6
22

3+
# Note this image uses gawk
4+
35
# Update and install required software
46
RUN yum -y update
57
RUN yum -y install epel-release

test/Dockerfile-ubuntu18-no-gawk renamed to test/Dockerfile-debian

+8-2
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,17 @@
1-
FROM ubuntu:bionic
2-
# bionic = latest 18 version
1+
FROM debian:latest
2+
3+
# Note this image uses mawk 1.3
34

45
# Update and install required software
56
RUN apt-get update --fix-missing
67
RUN apt-get install -y git curl dnsutils wget nginx-light
78

89
WORKDIR /root
10+
RUN mkdir /etc/nginx/pki
11+
RUN mkdir /etc/nginx/pki/private
12+
13+
# Prevent "Can't load /root/.rnd into RNG" error from openssl
14+
# RUN touch /root/.rnd
915

1016
# BATS (Bash Automated Testings)
1117
RUN git clone https://github.com/bats-core/bats-core.git /bats-core

test/Dockerfile-ubuntu

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
FROM ubuntu:latest
2+
3+
# Note this image uses mawk1.3
4+
5+
# Update and install required software
6+
RUN apt-get update --fix-missing
7+
RUN apt-get install -y git curl dnsutils wget nginx-light
8+
RUN apt-get install -y vim dos2unix # for debugging
9+
# TODO test with drill, dig, host
10+
11+
WORKDIR /root
12+
13+
# Prevent "Can't load /root/.rnd into RNG" error from openssl
14+
RUN touch /root/.rnd
15+
16+
# BATS (Bash Automated Testings)
17+
RUN git clone https://github.com/bats-core/bats-core.git /bats-core
18+
RUN git clone https://github.com/jasonkarns/bats-support /bats-support
19+
RUN git clone https://github.com/jasonkarns/bats-assert-1 /bats-assert
20+
RUN /bats-core/install.sh /usr/local
21+
22+
# Run eternal loop - for testing
23+
CMD tail -f /dev/null

test/Dockerfile-ubuntu18

+4-5
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
FROM ubuntu:bionic
2-
# bionic = latest 18 version
2+
# bionic = 18 LTS (long term support)
3+
4+
# Note this image uses gawk
35

46
# Update and install required software
57
RUN apt-get update --fix-missing
6-
# TODO work out why default version of awk fails
7-
RUN apt-get install -y git curl dnsutils wget gawk nginx-light # linux-libc-dev make gcc binutils
8-
RUN apt-get install -y vim dos2unix # for debugging
9-
# TODO test with drill, dig, host
8+
RUN apt-get install -y git curl dnsutils wget gawk nginx-light
109

1110
WORKDIR /root
1211
RUN mkdir /etc/nginx/pki

test/run-all-tests.sh

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
#!/usr/bin/env bash
22

3+
docker exec -it getssl-alpine bats /getssl/test
34
docker exec -it getssl-centos6 bats /getssl/test
5+
docker exec -it getssl-debian bats /getssl/test
6+
docker exec -it getssl-ubuntu bats /getssl/test
47
docker exec -it getssl-ubuntu18 bats /getssl/test
5-
docker exec -it getssl-ubuntu18-no-gawk bats /getssl/test/5-old-awk-error.bats

test/test_helper.bash

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ setup_environment() {
1818
fi
1919

2020
curl -X POST -d '{"host":"'"$GETSSL_HOST"'", "addresses":["'"$GETSSL_IP"'"]}' http://10.30.50.3:8055/add-a
21-
cp ${CODE_DIR}/test/test-config/nginx-ubuntu-no-ssl ${NGINX_CONFIG}
21+
cp ${CODE_DIR}/test/test-config/nginx-ubuntu-no-ssl "${NGINX_CONFIG}"
2222
/getssl/test/restart-nginx
2323
}
2424

0 commit comments

Comments
 (0)