diff --git a/.github/workflows/molecule.yml b/.github/workflows/molecule.yml new file mode 100644 index 0000000..ca02af9 --- /dev/null +++ b/.github/workflows/molecule.yml @@ -0,0 +1,15 @@ +--- +on: + - push + - pull_request + +jobs: + build: + runs-on: ubuntu-20.04 + steps: + - name: checkout + uses: actions/checkout@v2 + with: + path: "${{ github.repository }}" + - name: molecule + uses: robertdebock/molecule-action@2.7.2 diff --git a/meta/main.yml b/meta/main.yml index f128428..5cd99f5 100644 --- a/meta/main.yml +++ b/meta/main.yml @@ -1,4 +1,5 @@ galaxy_info: + namespace: nvidia role_name: nvidia_driver author: Luke Yeager company: NVIDIA diff --git a/molecule/default/converge.yml b/molecule/default/converge.yml new file mode 100644 index 0000000..9eb5fbb --- /dev/null +++ b/molecule/default/converge.yml @@ -0,0 +1,7 @@ +--- +- name: Converge + hosts: all + tasks: + - name: "Include ansible-role-nvidia-driver" + include_role: + name: "ansible-role-nvidia-driver" diff --git a/molecule/default/molecule.yml b/molecule/default/molecule.yml new file mode 100644 index 0000000..2256612 --- /dev/null +++ b/molecule/default/molecule.yml @@ -0,0 +1,81 @@ +--- +dependency: + name: galaxy +driver: + name: docker +platforms: + + - name: ubuntu-1804-canonical + image: geerlingguy/docker-ubuntu1804-ansible + volumes: + - /sys/fs/cgroup:/sys/fs/cgroup:ro + command: /sbin/init + pre_build_image: true + privileged: true + groups: + - canonical_repo + - ubuntu + + - name: ubuntu-1804-cuda + image: geerlingguy/docker-ubuntu1804-ansible + volumes: + - /sys/fs/cgroup:/sys/fs/cgroup:ro + command: /sbin/init + pre_build_image: true + privileged: true + groups: + - cuda_repo + - ubuntu + + - name: ubuntu-2004-canonical + image: geerlingguy/docker-ubuntu2004-ansible + volumes: + - /sys/fs/cgroup:/sys/fs/cgroup:ro + command: /sbin/init + pre_build_image: true + privileged: true + groups: + - canonical_repo + - ubuntu + + - name: ubuntu-2004-cuda + image: geerlingguy/docker-ubuntu2004-ansible + volumes: + - /sys/fs/cgroup:/sys/fs/cgroup:ro + command: /sbin/init + pre_build_image: true + privileged: true + groups: + - cuda_repo + - ubuntu + + - name: centos-7 + image: geerlingguy/docker-centos7-ansible + volumes: + - /sys/fs/cgroup:/sys/fs/cgroup:ro + command: /sbin/init + pre_build_image: true + privileged: true + + - name: centos-8 + image: geerlingguy/docker-centos8-ansible + volumes: + - /sys/fs/cgroup:/sys/fs/cgroup:ro + command: /sbin/init + pre_build_image: true + privileged: true + +provisioner: + name: ansible + ansible_args: + - -vv + inventory: + group_vars: + all: + nvidia_driver_skip_reboot: true + canonical_repo: + nvidia_driver_ubuntu_install_from_cuda_repo: false + cuda_repo: + nvidia_driver_ubuntu_install_from_cuda_repo: true +verifier: + name: ansible diff --git a/molecule/default/prepare.yml b/molecule/default/prepare.yml new file mode 100644 index 0000000..dc19add --- /dev/null +++ b/molecule/default/prepare.yml @@ -0,0 +1,10 @@ +--- +- hosts: ubuntu + become: yes + tasks: + + - name: update apt cache and install gpg-agent + apt: + update_cache: yes + name: gpg-agent + state: present diff --git a/molecule/default/verify.yml b/molecule/default/verify.yml new file mode 100644 index 0000000..79044cd --- /dev/null +++ b/molecule/default/verify.yml @@ -0,0 +1,10 @@ +--- +# This is an example playbook to execute Ansible tests. + +- name: Verify + hosts: all + gather_facts: false + tasks: + - name: Example assertion + assert: + that: true diff --git a/tasks/install-redhat.yml b/tasks/install-redhat.yml index d72f37b..b82a0cc 100644 --- a/tasks/install-redhat.yml +++ b/tasks/install-redhat.yml @@ -27,6 +27,7 @@ environment: "{{proxy_env if proxy_env is defined else {}}}" - name: reboot to pick up the new kernel reboot: + when: not nvidia_driver_skip_reboot - name: add epel repo gpg key rpm_key: