ci: enable Vagrant-based testing using GitHub Actions

* Semi-automated using https://github.com/myii/ssf-formula/pull/304
This commit is contained in:
Imran Iqbal 2021-03-26 11:15:02 +00:00
parent 35a2124a43
commit f1af45593d
No known key found for this signature in database
GPG Key ID: 6D8629439D2B7819
4 changed files with 56 additions and 8 deletions

35
.github/workflows/kitchen.vagrant.yml vendored Normal file
View File

@ -0,0 +1,35 @@
# -*- coding: utf-8 -*-
# vim: ft=yaml
---
name: 'Kitchen Vagrant (FreeBSD & OpenBSD)'
'on': ['push', 'pull_request']
env:
KITCHEN_LOCAL_YAML: 'kitchen.vagrant.yml'
jobs:
test:
runs-on: 'macos-10.15'
strategy:
fail-fast: false
matrix:
instance:
- default-freebsd-122-latest-py3
- default-freebsd-114-latest-py3
- default-openbsd-68-latest-py3
steps:
- name: 'Check out code'
uses: 'actions/checkout@v2'
- name: 'Set up Bundler cache'
uses: 'actions/cache@v1'
with:
path: 'vendor/bundle'
key: "${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}"
restore-keys: "${{ runner.os }}-gems-"
- name: 'Run Bundler'
run: |
ruby --version
bundle config path vendor/bundle
bundle install --jobs 4 --retry 3
- name: 'Run Test Kitchen'
run: 'bundle exec kitchen verify ${{ matrix.instance }}'

View File

@ -16,6 +16,7 @@ ignore: |
node_modules/ node_modules/
test/**/states/**/*.sls test/**/states/**/*.sls
.kitchen/ .kitchen/
test/salt/pillar/default.sls
yaml-files: yaml-files:
# Default settings # Default settings

View File

@ -3,15 +3,26 @@
--- ---
driver: driver:
name: vagrant name: vagrant
platforms:
- name: freebsd-120-2019-2-py3
driver:
box_url: https://freebsd.z.vstack.com/FreeBSD-12.0.box
cache_directory: false cache_directory: false
customize: customize:
usbxhci: 'off' usbxhci: 'off'
gui: false gui: false
linked_clone: true linked_clone: true
ssh: ssh:
shell: '/bin/sh' shell: /bin/sh
platforms:
- name: freebsd-122-latest-py3
driver:
box: bento/freebsd-12.2
- name: freebsd-114-latest-py3
driver:
box: bento/freebsd-11.4
- name: openbsd-68-latest-py3
driver:
box: generic/openbsd6
ssh:
shell: /bin/ksh
provisioner:
salt_install: bootstrap

View File

@ -310,6 +310,7 @@ suites:
- name: default - name: default
driver: driver:
hostname: example.net hostname: example.net
vm_hostname: example.net
provisioner: provisioner:
state_top: state_top:
base: base: