--- name: "devsec.ssh_hardening BSD" on: # yamllint disable-line rule:truthy workflow_dispatch: push: branches: [master] paths: - 'roles/ssh_hardening/**' - 'molecule/ssh_hardening_bsd/**' - '.github/workflows/ssh_hardening_bsd.yml' - 'requirements.txt' pull_request: branches: [master] paths: - 'roles/ssh_hardening/**' - 'molecule/ssh_hardening_bsd/**' - '.github/workflows/ssh_hardening_bsd.yml' - 'requirements.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: - openbsd7 - freebsd13 - freebsd14 steps: - name: Checkout repo uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 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 python-vagrant working-directory: ansible_collections/devsec/hardening - name: Update Vagrant Box run: | vagrant box update --box generic/${{ matrix.molecule_distro }} || true - name: Test with molecule run: | source ~/.venv/ansible-collection-hardening/bin/activate molecule test -s ssh_hardening_bsd env: MOLECULE_DISTRO: ${{ matrix.molecule_distro }} working-directory: ansible_collections/devsec/hardening