### Summary

Alpine 3.18 is [expected](https://alpinelinux.org/releases/) in May. This is a remote VM addition and an in-place container update.

Alpine 3.18 has been [released](https://www.alpinelinux.org/posts/Alpine-3.18.0-released.html).

### Issue Type

Feature Idea

### Component Name

`ansible-test`
if result.cgroup_dirs:
            notes += f' <cgroup_dirs: {len(result.cgroup_dirs)}>'
        notes += f' [{result.duration}]'
        if result.message:
            display.show(f'FAIL: {result.scenario} {result.message}{notes}', display.RED)
        elif result.duration.total_seconds() >= 90:
            display.show(f'SLOW: {result.scenario}{notes}', display.YELLOW)
        else:
            display.show(f'PASS: {result.scenario}{notes}')
    if error_total:
        sys.exit(1)
def get_test_scenarios() -> list[TestScenario]:
    """Generate and return a list of test scenarios."""
    supported_engines = ('docker', 'podman')
    available_engines = [engine for engine in supported_engines if shutil.which(engine)]
    if not available_engines:
        raise ApplicationError(f'No supported container engines found: {", ".join(supported_engines)}')
    completion_lines = pathlib.Path(os.environ['PYTHONPATH'], '../test/lib/ansible_test/_data/completion/docker.txt').read_text().splitlines()
    
    entries = {name: value for name, value in (parse_completion_entry(line) for line in completion_lines) if name != 'default'}
    unprivileged_user = User.get(UNPRIVILEGED_USER_NAME)
    scenarios: list[TestScenario] = []
    for container_name, settings in entries.items():
        image = settings['image']
        cgroup = settings.get('cgroup', 'v1-v2')
        if container_name == 'centos6' and os_release.id == 'alpine':