
Introduced a basic documentation skeleton that mirrors the flat directory structure of starlingx/test, providing a foundation for future documentation expansion. Structured documentation layout based on starlingx/test directories: - Created placeholder index.rst files for: - config/ - framework/ - keywords/ - resources/ - scripts/ - testcases/ - unit_tests/ - web_pages/ - Ensured modular navigation through toctree references Repository overview & navigation improvements: - Added directory_structure.rst to document the current repository layout - Updated index.rst to provide a central entry point for navigating documentation - Ensured logical linking between sections for future expansion Initial content in resources/: - Unlike other sections, resources/ contains actual documentation beyond a placeholder - Added resources_overview.rst, covering containerized applications, test images, and nightly regression configs Verified with Sphinx live preview (sphinx-autobuild). No API documentation yet, just a basic high-level skeleton for the repository's directories. Change-Id: I5f21199280c4c472cd812021bf0f9c3fa6f5c967 Signed-off-by: Andrew Vaillancourt <andrew.vaillancourt@windriver.com>
4.3 KiB
Resources Overview
The resources/ directory contains various test-related assets used within the StarlingX Test Framework, including containerized applications, custom-built Docker images, nightly regression configurations (deployment files, pod definitions, and Network Attachment Definitions (NADs)), and sanity test pods / configs.
Directory Structure
Below is an overview of the resources/ directory structure. This highlights key directories and files but does not include every file:
resources/
├── cloud_platform
│ ├── containers
│ │ ├── hello-kitty_armada.tgz
│ │ ├── hello-kitty-min-k8s-version.tgz
│ ├── images
│ │ └── node-hello-alpine
│ │ ├── Dockerfile
│ │ ├── node-hello-alpine.tar.gz
│ │ └── server.js
│ ├── nightly_regression
│ │ ├── calicoctl_crb.yaml
│ │ └── daemon_set_daemonset_ipv4.yaml
│ ├── sanity
│ └── pods
│ ├── client-pod1.yaml
│ └── server_pod.yaml
├── images
├── busybox.tar
└── calico-ctl.tar
resources/cloud_platform/containers
Contains packaged containerized applications in Helm and FluxCD formats for Kubernetes-based testing.
Example files:
hello-kitty.tgz
(FluxCD deployment package with Helm charts)hello-kitty_armada.tgz
(Armada manifest for Helm-based Kubernetes deployments)hello-kitty-min-k8s-version.tgz
(Minimal Helm chart version with Kubernetes version constraints, including FluxCD manifests)hello-kitty_no_secret.tgz
(Variant of hello-kitty with no secrets in the deployment)
resources/cloud_platform/images
Contains custom-built container images for cloud platform validation.
node-hello-alpine/
(Directory containing the Docker build context for a Node.js application)node-hello-alpine.tar.gz
(Pre-built Docker image for the Node.js application)Dockerfile
(Defines how to build the node-hello-alpine Docker image)server.js
(Node.js application file that runs inside the container)
resources/cloud_platform/nightly_regression
Contains YAML configuration files used for nightly regression testing.
Example files:
calicoctl_crb.yaml
(Calico ClusterRoleBinding configuration)calicoctl_cr.yaml
(Calico ClusterRole configuration)daemon_set_daemonset_ipv4.yaml
(DaemonSet definition for IPv4 testing)netdef_test-sriovdp_ipv4_with_pools.yaml
(Network definition for SR-IOV device plugin with IPv4 pools)
resources/cloud_platform/sanity/pods
Contains sanity test pod definitions used for basic Kubernetes validation.
Example files:
client-pod1.yaml
(Kubernetes client pod configuration)consumer_app.yaml
(Pod definition for a consumer application in sanity testing)server_pod.yaml
(Server pod used for network testing)
resources/images
Contains general-purpose Docker images used across multiple test cases.
Example files:
busybox.tar
(Docker image)pv-test.tar
(Docker image)calico-ctl.tar
(Docker image)resource-consumer.tar
(Docker image)
Key Takeaways
resources/cloud_platform/containers
→ Packaged Kubernetes applications (Helm charts, FluxCD deployments)resources/cloud_platform/images
→ Custom-built Docker images for cloud platform testingresources/cloud_platform/nightly_regression
→ Nightly regression test configurations (Calico, DaemonSets, Network definitions, etc.)resources/cloud_platform/sanity/pods
→ Sanity test pod configurations for Kubernetes validationresources/images
→ General-purpose container images for various automation tests
This structure ensures clarity, modularity, and efficient resource management within the StarlingX test framework.