mirror of
https://github.com/podman-desktop/podman-desktop
synced 2026-04-21 09:37:22 +00:00
* chore(ci): add gha workflow to run e2e tests on TF Signed-off-by: Anton Misskii <amisskii@redhat.com> * fix: use latest version Signed-off-by: Anton Misskii <amisskii@redhat.com> * fix: use commit sha Signed-off-by: Anton Misskii <amisskii@redhat.com> * fix: test summary Signed-off-by: Anton Misskii <amisskii@redhat.com> * fix: incorporate some comments Signed-off-by: Anton Misskii <amisskii@redhat.com> * fix: copyright Signed-off-by: Anton Misskii <amisskii@redhat.com> * fix: ai comments Signed-off-by: Anton Misskii <amisskii@redhat.com> * fix: check cli versions Signed-off-by: Anton Misskii <amisskii@redhat.com> * fix: comment/always upload junit file Signed-off-by: Anton Misskii <amisskii@redhat.com> * fix: rename junit file Signed-off-by: Anton Misskii <amisskii@redhat.com>
111 lines
3.3 KiB
Text
111 lines
3.3 KiB
Text
# /**********************************************************************
|
|
# Copyright (C) 2025 Red Hat, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
# ***********************************************************************/
|
|
|
|
summary: |
|
|
This plan provisions a test environment for running Playwright end-to-end tests against the Podman Desktop application.
|
|
It installs all required system dependencies, including GUI libraries,
|
|
sets up Node.js with pnpm, and starts Podman rootless service.
|
|
|
|
discover:
|
|
how: fmf
|
|
|
|
execute:
|
|
how: tmt
|
|
|
|
provision:
|
|
hardware:
|
|
memory: ">= 16 GB"
|
|
cpu:
|
|
cores: ">= 4"
|
|
disk:
|
|
- size: ">= 20 GB"
|
|
|
|
environment:
|
|
SKIP_COMPOSE_ONBOARDING_TEST: true
|
|
|
|
|
|
prepare:
|
|
- name: Install required packages
|
|
how: shell
|
|
script: |
|
|
sudo dnf update -y
|
|
sudo dnf install -y \
|
|
git nodejs npm xorg-x11-server-Xvfb \
|
|
nss nspr atk at-spi2-atk cups libXcomposite libXdamage libXfixes libXrandr cairo pango alsa-lib \
|
|
gcc-c++ gtk3 passt jq
|
|
sudo npm install -g pnpm
|
|
echo "NodeJS version: $(node -v)"
|
|
echo "npm version: $(npm -v)"
|
|
echo "pnpm Version: $(pnpm --version)"
|
|
|
|
- name: Install podman
|
|
how: shell
|
|
script: |
|
|
bash $TMT_TREE/tmt/scripts/install-podman.sh
|
|
|
|
- name: Enable and start Podman rootless service
|
|
how: shell
|
|
script: |
|
|
systemctl --user enable podman.socket || exit 1
|
|
systemctl --user start podman.socket || exit 1
|
|
systemctl --user is-active podman.socket || exit 1
|
|
|
|
/e2e:
|
|
summary: Execute all Playwright E2E tests, excluding those related to Kubernetes.
|
|
prepare+:
|
|
- name: Install Docker Compose CLI
|
|
how: shell
|
|
script: bash $TMT_TREE/tmt/scripts/install-docker-compose.sh
|
|
discover+:
|
|
filter: 'tag:e2e'
|
|
|
|
/smoke:
|
|
summary: Execute smoke Playwright E2E tests.
|
|
prepare+:
|
|
- name: Install Docker Compose CLI
|
|
how: shell
|
|
script: bash $TMT_TREE/tmt/scripts/install-docker-compose.sh
|
|
discover+:
|
|
filter: 'tag:smoke'
|
|
|
|
/kubernetes:
|
|
summary: Execute Kubernetes Playwright E2E tests.
|
|
prepare+:
|
|
- name: Install Kind CLI
|
|
how: shell
|
|
script: bash $TMT_TREE/tmt/scripts/install-kind.sh
|
|
- name: Install Kubectl
|
|
how: shell
|
|
script: bash $TMT_TREE/tmt/scripts/install-kubectl.sh
|
|
discover+:
|
|
filter: 'tag:kubernetes'
|
|
|
|
/all:
|
|
summary: Execute all Playwright E2E tests.
|
|
prepare+:
|
|
- name: Install Docker Compose CLI
|
|
how: shell
|
|
script: bash $TMT_TREE/tmt/scripts/install-docker-compose.sh
|
|
- name: Install Kind CLI
|
|
how: shell
|
|
script: bash $TMT_TREE/tmt/scripts/install-kind.sh
|
|
- name: Install Kubectl
|
|
how: shell
|
|
script: bash $TMT_TREE/tmt/scripts/install-kubectl.sh
|
|
discover+:
|
|
filter: 'tag:all'
|