X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/c783d0a11851850072bcd05d6c87afab99fda211..2a650836a9193a6cf0d4ef6eec650925fd5acebe:/.github/workflows/test-kitchen.yml diff --git a/.github/workflows/test-kitchen.yml b/.github/workflows/test-kitchen.yml index 2566c414c..234baa86c 100644 --- a/.github/workflows/test-kitchen.yml +++ b/.github/workflows/test-kitchen.yml @@ -1,98 +1,151 @@ name: Test Kitchen + on: - push - pull_request + - workflow_dispatch + +concurrency: + group: ${{ github.workflow }}-${{ github.head_ref || github.ref }} + cancel-in-progress: true + jobs: kitchen: name: Test Kitchen - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 + permissions: + packages: read strategy: matrix: suite: - accounts - apache - apt + - backup - bind - blog - blogs + - chef - civicrm - clamav + - community + - db-backup + - db-base + - db-master + - db-slave - devices - dhcpd - dmca - - donate + - dns + - docker + - elasticsearch - exim - fail2ban - - forum + - foundation-board + - foundation-dwg + - foundation-mastodon + - foundation-mwg + - foundation-owg + - foundation-welcome + - foundation-wiki - ftp - geodns - geoipupdate + - git + - git-server + - git-web - gps-tile - hardware - - incron + - hot + - ideditor + - imagery-tiler + - irc + - kibana - letsencrypt + - logstash + - logstash-forwarder + - mail - mailman + - matomo - memcached - munin - munin-plugins - - munin-server - mysql - networking - nginx - nodejs + - nominatim - ntp - openssh - osmosis - osqa - otrs + - overpass - passenger - - piwik + - php + - php-apache + - php-fpm - planet + - planet-aws - planet-current - planet-dump - planet-notes - planet-replication - postgresql + - prometheus + - prometheus-server - python - rsyncd - serverinfo + - snmpd - spamassassin - - squid - - stateofthemap + - ssl + - stateofthemap-container + - stateofthemap-wordpress - subversion - supybot - switch2osm + - sysctl + - sysfs - taginfo - tile - - tilecache + - tilelog - tools - trac - - web-backend - web-cgimap - web-frontend - web-rails + - wordpress + - wiki os: - - ubuntu-1804 + - ubuntu-2204 + include: + - os: ubuntu-2004 + suite: mailman + - os: ubuntu-2004 + suite: osqa + exclude: + - suite: mailman + os: ubuntu-2204 + - suite: osqa + os: ubuntu-2204 fail-fast: false steps: + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} - name: Check out code - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Setup ruby - uses: actions/setup-ruby@v1 - - name: Cache gems - uses: actions/cache@v1 + uses: ruby/setup-ruby@v1 with: - path: vendor/bundle - key: bundle-${{ runner.OS }}-${{ hashFiles('Gemfile.lock') }} - restore-keys: | - bundle-${{ runner.OS }}- - - name: Disable apparmor for mysqld - run: | - sudo apt-get install apparmor-utils - sudo aa-disable /usr/sbin/mysqld - - name: Install gems - run: | - gem install bundler --version "~> 1.17" - bundle install --jobs 4 --retry 3 --deployment + ruby-version: 3.1 + bundler-cache: true - name: Run kitchen test ${{ matrix.suite }}-${{ matrix.os }} run: bundle exec kitchen test ${{ matrix.suite }}-${{ matrix.os }} + - name: Gather journal output + run: bundle exec kitchen exec ${{ matrix.suite }}-${{ matrix.os }} -c journalctl --since=yesterday + if: ${{ failure() }}