]> git.openstreetmap.org Git - chef.git/blob - .github/workflows/test-kitchen.yml
d8a39bb1985842713f8f09a0e8d57548df424d25
[chef.git] / .github / workflows / test-kitchen.yml
1 name: Test Kitchen
2 on:
3   - push
4   - pull_request
5 jobs:
6   kitchen:
7     name: Test Kitchen
8     runs-on: ubuntu-latest
9     strategy:
10       matrix:
11         suite:
12           - accounts
13           - apache
14           - apt
15           - backup
16           - bind
17           - blog
18           - blogs
19           - civicrm
20           - clamav
21           - db-backup
22           - db-base
23           - db-master
24           - db-slave
25           - devices
26           - dhcpd
27           - dmca
28           - dns
29           - docker
30           - donate
31           - elasticsearch
32           - exim
33           - fail2ban
34           - forum
35           - ftp
36           - geodns
37           - geoipupdate
38           - git
39           - git-server
40           - git-web
41           - gps-tile
42           - hardware
43           - hot
44           - incron
45           - irc
46           - kibana
47           - letsencrypt
48           - logstash
49           - logstash-forwarder
50           - mail
51           - mailman
52           - memcached
53           - munin
54           - munin-plugins
55           - munin-server
56           - mysql
57           - networking
58           - nginx
59           - nodejs
60           - nominatim
61           - ntp
62           - openssh
63           - osmosis
64           - osqa
65           - otrs
66           - passenger
67           - php
68           - php-apache
69           - php-fpm
70           - piwik
71           - planet
72           - planet-current
73           - planet-dump
74           - planet-notes
75           - planet-replication
76           - postgresql
77           - python
78           - rsyncd
79           - serverinfo
80           - snmpd
81           - spamassassin
82           - squid
83           - ssl
84           - stateofthemap
85           - subversion
86           - supybot
87           - switch2osm
88           - sysctl
89           - sysfs
90           - taginfo
91           - tile
92           - tilecache
93           - tilelog
94           - tools
95           - trac
96           - web-backend
97           - web-cgimap
98           - web-frontend
99           - web-rails
100           - wordpress
101           - wiki
102         os:
103           - ubuntu-2004
104         include:
105           - suite: osqa
106             os: ubuntu-1804
107           - suite: trac
108             os: ubuntu-1804
109         exclude:
110           - suite: osqa
111             os: ubuntu-2004
112           - suite: trac
113             os: ubuntu-2004
114       fail-fast: false
115     steps:
116     - name: Check out code
117       uses: actions/checkout@v2
118     - name: Setup ruby
119       uses: actions/setup-ruby@v1.1.1
120     - name: Cache gems
121       uses: actions/cache@v2
122       with:
123         path: vendor/bundle
124         key: bundle-${{ runner.OS }}-${{ hashFiles('Gemfile.lock') }}
125         restore-keys: |
126           bundle-${{ runner.OS }}-
127     - name: Disable apparmor for mysqld
128       run: |
129         sudo apt-get install apparmor-utils
130         sudo aa-disable /usr/sbin/mysqld
131     - name: Install gems
132       run: |
133         gem install bundler
134         bundle config set deployment true
135         bundle install --jobs 4 --retry 3
136     - name: Run kitchen test ${{ matrix.suite }}-${{ matrix.os }}
137       run: bundle exec kitchen test ${{ matrix.suite }}-${{ matrix.os }}