Skip to content

Commit 7ca89a1

Browse files
authored
Merge pull request #16 from devops-coop/feature-inspec
Updated tests to use inspec
2 parents 18c2ce3 + 0aa8e64 commit 7ca89a1

File tree

20 files changed

+188
-70
lines changed

20 files changed

+188
-70
lines changed

.travis.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ env:
1515
- OS=centos7 SERVER=minecraft PROCESS_CONTROL=systemd
1616
- OS=jessie64 SERVER=spigot PROCESS_CONTROL=systemd
1717
- OS=jessie64 SERVER=spigot PROCESS_CONTROL=supervisor
18-
- OS=trusty64 SERVER=spigot PROCESS_CONTROL=supervisor
1918
- OS=xenial64 SERVER=spigot PROCESS_CONTROL=systemd
2019
- OS=centos7 SERVER=spigot PROCESS_CONTROL=systemd
2120
before_install:

README.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ Features
4141
+----------------+--------------+-----------+
4242

4343
- safely stops the server using `stop <http://minecraft.gamepedia.com/Commands#stop>`__ when running under **systemd**
44-
- uses `Docker <https://www.docker.com/>`__ and `Serverspec <http://serverspec.org/>`__ to run integration tests
44+
- uses `Docker <https://www.docker.com/>`__ and `Inspec <https://www.chef.io/inspec/>`__ to run integration tests
4545
- manages user ACLs
4646
- manages ``server.properties``
4747
- hooks: include arbitrary tasks at specific stages during execution

docker/centos7/Dockerfile

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@ FROM centos:7
22

33
ENV TERM=xterm
44

5-
RUN yum install -y epel-release \
5+
COPY chef.asc /tmp/chef.asc
6+
COPY chef-stable.repo /etc/yum.repos.d/chef-stable.repo
7+
8+
RUN rpm --import /tmp/chef.asc \
9+
&& yum install -y epel-release \
610
&& yum install -y \
711
ansible \
8-
git \
9-
iproute \
10-
java-1.8.0-openjdk \
11-
ruby \
12-
sudo \
13-
tar \
12+
inspec-1.25.0-1.el7 \
13+
wget \
14+
coreutils \
15+
net-tools \
1416
&& yum clean all
15-
16-
RUN gem install serverspec

docker/centos7/chef-stable.repo

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
[chef-stable]
2+
name=chef-stable
3+
baseurl=https://packages.chef.io/repos/yum/stable/el/7/\$basearch/
4+
gpgcheck=1
5+
enabled=1

docker/centos7/chef.asc

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
-----BEGIN PGP PUBLIC KEY BLOCK-----
2+
Version: GnuPG v1.4.12 (Darwin)
3+
Comment: GPGTools - http://gpgtools.org
4+
5+
mQGiBEppC7QRBADfsOkZU6KZK+YmKw4wev5mjKJEkVGlus+NxW8wItX5sGa6kdUu
6+
twAyj7Yr92rF+ICFEP3gGU6+lGo0Nve7KxkN/1W7/m3G4zuk+ccIKmjp8KS3qn99
7+
dxy64vcji9jIllVa+XXOGIp0G8GEaj7mbkixL/bMeGfdMlv8Gf2XPpp9vwCgn/GC
8+
JKacfnw7MpLKUHOYSlb//JsEAJqao3ViNfav83jJKEkD8cf59Y8xKia5OpZqTK5W
9+
ShVnNWS3U5IVQk10ZDH97Qn/YrK387H4CyhLE9mxPXs/ul18ioiaars/q2MEKU2I
10+
XKfV21eMLO9LYd6Ny/Kqj8o5WQK2J6+NAhSwvthZcIEphcFignIuobP+B5wNFQpe
11+
DbKfA/0WvN2OwFeWRcmmd3Hz7nHTpcnSF+4QX6yHRF/5BgxkG6IqBIACQbzPn6Hm
12+
sMtm/SVf11izmDqSsQptCrOZILfLX/mE+YOl+CwWSHhl+YsFts1WOuh1EhQD26aO
13+
Z84HuHV5HFRWjDLw9LriltBVQcXbpfSrRP5bdr7Wh8vhqJTPjrQnT3BzY29kZSBQ
14+
YWNrYWdlcyA8cGFja2FnZXNAb3BzY29kZS5jb20+iGAEExECACAFAkppC7QCGwMG
15+
CwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRApQKupg++Caj8sAKCOXmdG36gWji/K
16+
+o+XtBfvdMnFYQCfTCEWxRy2BnzLoBBFCjDSK6sJqCu0IENIRUYgUGFja2FnZXMg
17+
PHBhY2thZ2VzQGNoZWYuaW8+iGIEExECACIFAlQwYFECGwMGCwkIBwMCBhUIAgkK
18+
CwQWAgMBAh4BAheAAAoJEClAq6mD74JqX94An26z99XOHWpLN8ahzm7cp13t4Xid
19+
AJ9wVcgoUBzvgg91lKfv/34cmemZn7kCDQRKaQu0EAgAg7ZLCVGVTmLqBM6njZEd
20+
Zbv+mZbvwLBSomdiqddE6u3eH0X3GuwaQfQWHUVG2yedyDMiG+EMtCdEeeRebTCz
21+
SNXQ8Xvi22hRPoEsBSwWLZI8/XNg0n0f1+GEr+mOKO0BxDB2DG7DA0nnEISxwFkK
22+
OFJFebR3fRsrWjj0KjDxkhse2ddU/jVz1BY7Nf8toZmwpBmdozETMOTx3LJy1HZ/
23+
Te9FJXJMUaB2lRyluv15MVWCKQJro4MQG/7QGcIfrIZNfAGJ32DDSjV7/YO+IpRY
24+
IL4CUBQ65suY4gYUG4jhRH6u7H1p99sdwsg5OIpBe/v2Vbc/tbwAB+eJJAp89Zeu
25+
twADBQf/ZcGoPhTGFuzbkcNRSIz+boaeWPoSxK2DyfScyCAuG41CY9+g0HIw9Sq8
26+
DuxQvJ+vrEJjNvNE3EAEdKl/zkXMZDb1EXjGwDi845TxEMhhD1dDw2qpHqnJ2mtE
27+
WpZ7juGwA3sGhi6FapO04tIGacCfNNHmlRGipyq5ZiKIRq9mLEndlECr8cwaKgkS
28+
0wWu+xmMZe7N5/t/TK19HXNh4tVacv0F3fYK54GUjt2FjCQV75USnmNY4KPTYLXA
29+
dzC364hEMlXpN21siIFgB04w+TXn5UF3B4FfAy5hevvr4DtV4MvMiGLu0oWjpaLC
30+
MpmrR3Ny2wkmO0h+vgri9uIP06ODWIhJBBgRAgAJBQJKaQu0AhsMAAoJEClAq6mD
31+
74Jq4hIAoJ5KrYS8kCwj26SAGzglwggpvt3CAJ0bekyky56vNqoegB+y4PQVDv4K
32+
zA==
33+
=IxPr
34+
-----END PGP PUBLIC KEY BLOCK-----

docker/jessie64/Dockerfile

Lines changed: 14 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,26 @@
11
# vim: set ft=dockerfile:
22

3-
# Requires Ansible 1.8+ from jessie-backports.
4-
FROM debian:jessie-backports
3+
FROM debian:jessie
54

65
# Colour output.
76
ENV TERM=xterm
87

9-
# Defaults to graphical.target.
10-
RUN systemctl set-default multi-user.target
11-
12-
RUN apt-get update -y \
8+
RUN echo deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main >> /etc/apt/sources.list \
9+
&& apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367 \
10+
&& apt-get update -y \
1311
&& apt-get --no-install-recommends install -y \
14-
default-jdk \
15-
gcc \
16-
git \
17-
libffi-dev \
18-
libssl-dev \
12+
software-properties-common \
13+
ansible \
14+
wget \
15+
coreutils \
1916
net-tools \
20-
python-dev \
21-
python-pip \
22-
ruby \
23-
sudo \
24-
tar \
2517
&& apt-get autoremove \
2618
&& apt-get clean \
2719
&& rm -rf /var/lib/apt/lists/*
2820

29-
RUN pip install -U setuptools
30-
31-
# A newish version of ansible is required, so install from pip instead of from
32-
# the old Debian package.
33-
RUN pip install ansible
34-
35-
RUN gem install serverspec
21+
## https://downloads.chef.io/inspec/1.24.0
22+
RUN wget -q https://packages.chef.io/files/stable/inspec/1.24.0/ubuntu/14.04/inspec_1.24.0-1_amd64.deb \
23+
&& echo "33e8ab3dd4ed7eb2285310ae9d0a32e0cc45d5b6d057a29541f93870c2f9e30a inspec_1.24.0-1_amd64.deb" \
24+
| sha256sum -c \
25+
&& dpkg -i inspec_1.24.0-1_amd64.deb \
26+
&& rm inspec_1.24.0-1_amd64.deb

docker/trusty64/Dockerfile

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,23 @@ FROM ubuntu:trusty
66
ENV TERM=xterm
77

88
RUN apt-get update -y \
9-
&& apt-get install -y software-properties-common \
9+
&& apt-get install -y apt-transport-https software-properties-common \
10+
&& apt-get autoremove \
11+
&& apt-get clean \
12+
&& rm -rf /var/lib/apt/lists/*
13+
14+
COPY chef.asc /tmp/chef.asc
15+
COPY chef-stable.list /etc/apt/sources.list.d/chef-stable.list
16+
17+
RUN apt-key add /tmp/chef.asc \
1018
&& apt-add-repository ppa:ansible/ansible \
1119
&& apt-get update -y \
1220
&& apt-get --no-install-recommends install -y \
1321
ansible \
14-
default-jdk \
15-
git \
22+
inspec=1.25.0-1 \
23+
wget \
24+
coreutils \
1625
net-tools \
17-
ruby2.0 \
18-
sudo \
19-
tar \
2026
&& apt-get autoremove \
2127
&& apt-get clean \
2228
&& rm -rf /var/lib/apt/lists/*
23-
24-
RUN gem2.0 install serverspec

docker/trusty64/chef-stable.list

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
deb https://packages.chef.io/repos/apt/stable trusty main

docker/trusty64/chef.asc

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
-----BEGIN PGP PUBLIC KEY BLOCK-----
2+
Version: GnuPG v1.4.12 (Darwin)
3+
Comment: GPGTools - http://gpgtools.org
4+
5+
mQGiBEppC7QRBADfsOkZU6KZK+YmKw4wev5mjKJEkVGlus+NxW8wItX5sGa6kdUu
6+
twAyj7Yr92rF+ICFEP3gGU6+lGo0Nve7KxkN/1W7/m3G4zuk+ccIKmjp8KS3qn99
7+
dxy64vcji9jIllVa+XXOGIp0G8GEaj7mbkixL/bMeGfdMlv8Gf2XPpp9vwCgn/GC
8+
JKacfnw7MpLKUHOYSlb//JsEAJqao3ViNfav83jJKEkD8cf59Y8xKia5OpZqTK5W
9+
ShVnNWS3U5IVQk10ZDH97Qn/YrK387H4CyhLE9mxPXs/ul18ioiaars/q2MEKU2I
10+
XKfV21eMLO9LYd6Ny/Kqj8o5WQK2J6+NAhSwvthZcIEphcFignIuobP+B5wNFQpe
11+
DbKfA/0WvN2OwFeWRcmmd3Hz7nHTpcnSF+4QX6yHRF/5BgxkG6IqBIACQbzPn6Hm
12+
sMtm/SVf11izmDqSsQptCrOZILfLX/mE+YOl+CwWSHhl+YsFts1WOuh1EhQD26aO
13+
Z84HuHV5HFRWjDLw9LriltBVQcXbpfSrRP5bdr7Wh8vhqJTPjrQnT3BzY29kZSBQ
14+
YWNrYWdlcyA8cGFja2FnZXNAb3BzY29kZS5jb20+iGAEExECACAFAkppC7QCGwMG
15+
CwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRApQKupg++Caj8sAKCOXmdG36gWji/K
16+
+o+XtBfvdMnFYQCfTCEWxRy2BnzLoBBFCjDSK6sJqCu0IENIRUYgUGFja2FnZXMg
17+
PHBhY2thZ2VzQGNoZWYuaW8+iGIEExECACIFAlQwYFECGwMGCwkIBwMCBhUIAgkK
18+
CwQWAgMBAh4BAheAAAoJEClAq6mD74JqX94An26z99XOHWpLN8ahzm7cp13t4Xid
19+
AJ9wVcgoUBzvgg91lKfv/34cmemZn7kCDQRKaQu0EAgAg7ZLCVGVTmLqBM6njZEd
20+
Zbv+mZbvwLBSomdiqddE6u3eH0X3GuwaQfQWHUVG2yedyDMiG+EMtCdEeeRebTCz
21+
SNXQ8Xvi22hRPoEsBSwWLZI8/XNg0n0f1+GEr+mOKO0BxDB2DG7DA0nnEISxwFkK
22+
OFJFebR3fRsrWjj0KjDxkhse2ddU/jVz1BY7Nf8toZmwpBmdozETMOTx3LJy1HZ/
23+
Te9FJXJMUaB2lRyluv15MVWCKQJro4MQG/7QGcIfrIZNfAGJ32DDSjV7/YO+IpRY
24+
IL4CUBQ65suY4gYUG4jhRH6u7H1p99sdwsg5OIpBe/v2Vbc/tbwAB+eJJAp89Zeu
25+
twADBQf/ZcGoPhTGFuzbkcNRSIz+boaeWPoSxK2DyfScyCAuG41CY9+g0HIw9Sq8
26+
DuxQvJ+vrEJjNvNE3EAEdKl/zkXMZDb1EXjGwDi845TxEMhhD1dDw2qpHqnJ2mtE
27+
WpZ7juGwA3sGhi6FapO04tIGacCfNNHmlRGipyq5ZiKIRq9mLEndlECr8cwaKgkS
28+
0wWu+xmMZe7N5/t/TK19HXNh4tVacv0F3fYK54GUjt2FjCQV75USnmNY4KPTYLXA
29+
dzC364hEMlXpN21siIFgB04w+TXn5UF3B4FfAy5hevvr4DtV4MvMiGLu0oWjpaLC
30+
MpmrR3Ny2wkmO0h+vgri9uIP06ODWIhJBBgRAgAJBQJKaQu0AhsMAAoJEClAq6mD
31+
74Jq4hIAoJ5KrYS8kCwj26SAGzglwggpvt3CAJ0bekyky56vNqoegB+y4PQVDv4K
32+
zA==
33+
=IxPr
34+
-----END PGP PUBLIC KEY BLOCK-----

docker/xenial64/Dockerfile

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,22 @@ FROM ubuntu:xenial
66
ENV TERM=xterm
77

88
RUN apt-get update -y \
9-
&& apt-get install -y software-properties-common \
9+
&& apt-get install -y apt-transport-https software-properties-common \
10+
&& apt-get autoremove \
11+
&& apt-get clean \
12+
&& rm -rf /var/lib/apt/lists/*
13+
14+
COPY chef.asc /tmp/chef.asc
15+
COPY chef-stable.list /etc/apt/sources.list.d/chef-stable.list
16+
17+
RUN apt-key add /tmp/chef.asc \
1018
&& apt-add-repository ppa:ansible/ansible \
1119
&& apt-get update -y \
1220
&& apt-get --no-install-recommends install -y \
1321
ansible \
22+
inspec=1.25.0-1 \
23+
coreutils \
1424
net-tools \
15-
ruby2.3 \
1625
&& apt-get autoremove \
1726
&& apt-get clean \
1827
&& rm -rf /var/lib/apt/lists/*
19-
20-
RUN gem2.3 install serverspec

0 commit comments

Comments
 (0)