* Update testing and remove old, unsupported OS versions Signed-off-by: Martin Schurz <[email protected]> * Update Arch OS Signed-off-by: Martin Schurz <[email protected]> * Fix SuSE login.defs issues Signed-off-by: Martin Schurz <[email protected]> * Debug ... Signed-off-by: Martin Schurz <[email protected]> * Fix SuSE stuff Signed-off-by: Martin Schurz <[email protected]> * Fix SuSE stuff Signed-off-by: Martin Schurz <[email protected]> * Update OS Support Signed-off-by: Martin Schurz <[email protected]> * Use Ansible mysql module Signed-off-by: Martin Schurz <[email protected]> * Update OS Support Signed-off-by: Martin Schurz <[email protected]> * Use existing Fedora images Signed-off-by: Martin Schurz <[email protected]> * Fix VM tests Signed-off-by: Martin Schurz <[email protected]> * fix last errors Signed-off-by: Martin Schurz <[email protected]> * Final fixes Signed-off-by: Martin Schurz <[email protected]> --------- Signed-off-by: Martin Schurz <[email protected]>
74 lines
2.2 KiB
YAML
74 lines
2.2 KiB
YAML
---
|
|
name: "devsec.ssh_hardening VM"
|
|
on: # yamllint disable-line rule:truthy
|
|
workflow_dispatch:
|
|
push:
|
|
branches: [master]
|
|
paths:
|
|
- 'roles/ssh_hardening/**'
|
|
- 'molecule/ssh_hardening_vm/**'
|
|
- '.github/workflows/ssh_hardening_vm.yml'
|
|
- 'requirements.txt'
|
|
- 'requirements-vm.txt'
|
|
pull_request:
|
|
branches: [master]
|
|
paths:
|
|
- 'roles/ssh_hardening/**'
|
|
- 'molecule/ssh_hardening_vm/**'
|
|
- '.github/workflows/ssh_hardening_vm.yml'
|
|
- 'requirements.txt'
|
|
- 'requirements-vm.txt'
|
|
schedule:
|
|
- cron: '0 6 * * 5'
|
|
|
|
concurrency:
|
|
group: >-
|
|
${{ github.workflow }}-${{
|
|
github.event.pull_request.number || github.sha
|
|
}}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: self-hosted
|
|
env:
|
|
PY_COLORS: 1
|
|
ANSIBLE_FORCE_COLOR: 1
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
molecule_distro:
|
|
- generic/openbsd7
|
|
- generic/freebsd14
|
|
- cloud-image/debian-13
|
|
- cloud-image/ubuntu-24.04
|
|
- cloud-image/ubuntu-26.04
|
|
steps:
|
|
- name: Checkout repo
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
|
|
with:
|
|
path: ansible_collections/devsec/hardening
|
|
submodules: true
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
source ~/.venv/ansible-collection-hardening/bin/activate
|
|
python -m pip install --no-cache-dir --upgrade pip
|
|
pip install -r requirements.txt
|
|
pip install -r requirements-vm.txt
|
|
working-directory: ansible_collections/devsec/hardening
|
|
|
|
- name: Update Vagrant Box
|
|
run: |
|
|
vagrant box update --box ${{ matrix.molecule_distro }} || true
|
|
|
|
- name: Test with molecule
|
|
run: |
|
|
source ~/.venv/ansible-collection-hardening/bin/activate
|
|
# Workaround for https://github.com/ansible-community/molecule-plugins/issues/301
|
|
export MOLECULE_VAGRANT_PLUGIN_DIR=$(python3 -c 'import sysconfig; print(sysconfig.get_paths()["purelib"])')/molecule_plugins/vagrant
|
|
molecule test -s ssh_hardening_vm
|
|
env:
|
|
MOLECULE_DISTRO: ${{ matrix.molecule_distro }}
|
|
working-directory: ansible_collections/devsec/hardening
|