Skip to content

Enable ansible tags selection #438

Enable ansible tags selection

Enable ansible tags selection #438

Workflow file for this run

---
# SPDX-license-identifier: Apache-2.0
##############################################################################
# Copyright (c) 2021
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Apache License, Version 2.0
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
name: Integration tests
# yamllint disable-line rule:truthy
on:
push:
paths:
- "**.sh"
- "!ci/update_*.sh"
- "*.yml"
- "!playbooks/**/*.yml"
- "*.tpl"
- "*.env"
- "resources/*"
- "!**.md"
pull_request_review:
types:
- submitted
jobs:
check-ci:
name: Check Integration tests in an Ubuntu Focal Virtual Machines
if: >-
( github.event_name == 'pull_request_review' && github.event.review.state == 'approved' ) || github.event_name != 'pull_request_review'
runs-on: macos-12
strategy:
fail-fast: false
matrix:
include:
- runtime: crio
crun_enabled: true
kata_containers_enabled: false
- runtime: containerd
gvisor_enabled: true
kata_containers_enabled: false # TODO: Enable this once this PR is included(https://github.com/kubernetes-sigs/kubespray/pull/8797)
- enable_tests: true
krew_plugins_list: "virt"
metallb_enabled: true
int_tests: "metallb istio kubevirt knative"
- test_multinode: true
run_conformance_tools: true
- enable_tests: true
int_tests: "falco kyverno gatekeeper"
- krew_plugins_list: "cert-manager"
enable_tests: true
int_tests: "virtink"
cert_manager_enabled: true
steps:
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # 4.2.0
- uses: ./.github/actions/vagrant-up
with:
container-runtime: ${{ matrix.runtime }}
kata-containers-enabled: ${{ matrix.kata_containers_enabled }}
crun-enabled: ${{ matrix.crun_enabled }}
enable-tests: ${{ matrix.enable_tests }}
krew-plugins-list: ${{ matrix.krew_plugins_list }}
metallb-enabled: ${{ matrix.metallb_enabled }}
int-tests: ${{ matrix.int_tests }}
test-multinode: ${{ matrix.test_multinode }}
run-conformance-tools: ${{ matrix.run_conformance_tools }}
cert-manager-enabled: ${{ matrix.cert_manager_enabled }}
changes:
runs-on: ubuntu-latest
if: >-
( github.event_name == 'pull_request_review' && github.event.review.state == 'approved' ) || github.event_name != 'pull_request_review'
outputs:
scripts: ${{ steps.filter.outputs.scripts }}
steps:
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # 4.2.0
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # 3.0.2
if: ${{ !env.ACT }}
id: filter
with:
token: ${{ secrets.GITHUB_TOKEN }}
filters: |
scripts:
- '**.sh'
check-format:
name: Check scripts format
if: needs.changes.outputs.scripts == 'true'
needs: changes
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # 4.2.0
- name: Run the sh-checker
uses: luizm/action-sh-checker@17bd25a6ee188d2b91f677060038f4ba37ba14b2 # 0.9.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SHFMT_OPTS: -i 4 -s
with:
sh_checker_shellcheck_disable: true
sh_checker_exclude: "playbooks/roles/pmem/ spec/"
check-shellspec:
name: Run BDD shell specs
if: needs.changes.outputs.scripts == 'true'
needs: changes
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # 4.2.0
- name: Install ShellSpec
run: curl -fsSL https://github.com/shellspec/shellspec/releases/latest/download/shellspec-dist.tar.gz | tar -xz -C ..
- name: Run Shellspec
shell: 'script -q -e -c "bash {0}"'
run: ../shellspec/shellspec --profile --xtrace