mirror of
https://github.com/NVIDIA/OpenShell.git
synced 2026-10-31 07:44:57 +08:00
* test(vm): add composable QEMU test guests Signed-off-by: Drew Newberry <anewberry@nvidia.com> * docs(vm): describe test VM directory structure Signed-off-by: Drew Newberry <anewberry@nvidia.com> * refactor(vm): replace shell catalog functions Signed-off-by: Drew Newberry <anewberry@nvidia.com> * test(vm): add Fedora release guest support Signed-off-by: Drew Newberry <anewberry@nvidia.com> * test(vm): enable rootless Podman socket Signed-off-by: Drew Newberry <anewberry@nvidia.com> * feat(test-guest): add OCI-backed image caching Signed-off-by: Drew Newberry <anewberry@nvidia.com> * perf(test-guest): accelerate cached guest startup Signed-off-by: Drew Newberry <anewberry@nvidia.com> * fix(test-guest): address review feedback Signed-off-by: Drew Newberry <anewberry@nvidia.com> * fix(test-guest): verify OCI cache provenance Signed-off-by: Drew Newberry <anewberry@nvidia.com> * fix(test-guest): harden cached guest reuse Signed-off-by: Drew Newberry <anewberry@nvidia.com> * fix(test-guest): refresh runtime setup state Signed-off-by: Drew Newberry <anewberry@nvidia.com> * feat(test-guest): support E2E runner inputs Signed-off-by: Drew Newberry <anewberry@nvidia.com> * fix(test-guest): harden runner and OCI reuse Signed-off-by: Drew Newberry <anewberry@nvidia.com> * feat(test-guest): prepare Podman E2E artifacts Signed-off-by: Drew Newberry <anewberry@nvidia.com> * fix(test-guest): address review findings Signed-off-by: Drew Newberry <anewberry@nvidia.com> * revert(test-guest): remove recent Podman artifact changes Signed-off-by: Drew Newberry <anewberry@nvidia.com> * fix(test-guest): canonicalize scp source paths Signed-off-by: Drew Newberry <anewberry@nvidia.com> * refactor(test-guest): provision artifacts with Ansible Signed-off-by: Drew Newberry <anewberry@nvidia.com> * feat(test-guest): populate missing caches on startup Signed-off-by: Drew Newberry <anewberry@nvidia.com> --------- Signed-off-by: Drew Newberry <anewberry@nvidia.com>
74 lines
2.0 KiB
YAML
74 lines
2.0 KiB
YAML
---
|
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
# PROTOTYPE: Configure Docker in a disposable test guest.
|
|
|
|
- name: Configure Docker
|
|
hosts: test_vm
|
|
become: true
|
|
gather_facts: true
|
|
|
|
tasks:
|
|
- name: Validate Docker support
|
|
ansible.builtin.assert:
|
|
that:
|
|
- ansible_facts.distribution in ["Ubuntu", "Rocky"]
|
|
fail_msg: >-
|
|
Docker is supported on Ubuntu and Rocky in this prototype,
|
|
not {{ ansible_facts.distribution }}.
|
|
|
|
- name: Refresh Ubuntu package metadata
|
|
ansible.builtin.apt:
|
|
update_cache: true
|
|
when: ansible_facts.distribution == "Ubuntu"
|
|
|
|
- name: Install Docker on Ubuntu
|
|
ansible.builtin.apt:
|
|
name: docker.io
|
|
state: present
|
|
install_recommends: false
|
|
when: ansible_facts.distribution == "Ubuntu"
|
|
|
|
- name: Configure the Docker CE repository on Rocky
|
|
ansible.builtin.get_url:
|
|
url: https://download.docker.com/linux/centos/docker-ce.repo
|
|
dest: /etc/yum.repos.d/docker-ce.repo
|
|
mode: "0644"
|
|
when: ansible_facts.distribution == "Rocky"
|
|
|
|
- name: Install Docker on Rocky
|
|
ansible.builtin.dnf:
|
|
name:
|
|
- docker-ce
|
|
- docker-ce-cli
|
|
- containerd.io
|
|
- docker-buildx-plugin
|
|
- docker-compose-plugin
|
|
state: present
|
|
when: ansible_facts.distribution == "Rocky"
|
|
|
|
- name: Enable Docker
|
|
ansible.builtin.service:
|
|
name: docker
|
|
enabled: true
|
|
state: started
|
|
|
|
- name: Add the test user to the Docker group
|
|
ansible.builtin.user:
|
|
name: openshell
|
|
groups:
|
|
- docker
|
|
append: true
|
|
register: docker_group_membership
|
|
|
|
- name: Refresh the test user's group membership
|
|
ansible.builtin.meta: reset_connection
|
|
when: docker_group_membership.changed
|
|
|
|
- name: Verify Docker
|
|
ansible.builtin.command:
|
|
cmd: docker info
|
|
become: false
|
|
changed_when: false
|