64 Commits

Author SHA1 Message Date
Andrew Vaillancourt
1b9396a2c6 Enforce docstring standards and update pre-commit
- Enforce Google-style docstrings in pre-commit hooks:
  - Add pydocstyle, pydoclint, and interrogate to Pipenv and pre-commit
  - Configure pydocstyle for PEP 257 and Google-style compliance
  - Set pydoclint to enforce function signature correctness
  - Ensure 100% function and class docstring coverage with interrogate:
    - There are some exceptions, e.g. init, module-level.
    - More exceptions can be added if the tooling is found to be too
      strict.

- Refine Black hook ordering to ensure all hooks run on formatted files:
  - Fail commit if formatting is needed (--check)
  - Auto-format files in a separate step
  - Prevent bypassing docstring checks by staging unformatted files

- Ensure return type consistency (DOC203 best practices):
  - Require both return type hints (-> type) and docstring return types
  - Explain rationale for requiring both:
    - Type hints help with static analysis and runtime type checking
    - Docstring return types improve readability and documentation clarity
    - Pre-commit hooks validate consistency across both formats
  - Update pre-commit hooks to explicitly check for this requirement

- Restructure pre-commit and linting configuration:
  - Move .pydocstyle.ini, .flake8, and pyproject.toml to the root
  - Update pre-commit hooks to reference these configs in the new structure

- Modify tox.ini to prevent packaging errors and improve workflow:
  - Add `skipsdist = True` to disable setuptools packaging
  - Set `usedevelop = False` to prevent unintended package installation
  - Ensure `tox` only runs documentation and linting tasks
  - Aligns with StarlingX repository standards and prevents conflicts
  - Retain the pre-commit/ directory for potential future hooks

- Update documentation and improve contributor guidance:
  - Add CONTRIBUTING.rst with detailed contribution guidelines
  - Create contributors.rst in doc/source for Sphinx-rendered docs
  - Link contributors.rst in index.rst for visibility in generated docs
  - Ensure contributing.rst references the latest CONTRIBUTING.rst
  - Document VSCode and PyCharm auto-doc settings in CONTRIBUTING.rst

This commit ensures consistent docstring enforcement, improves
pre-commit integration, aligns with best practices, and enhances
contributor documentation.

Change-Id: Iba282c20502adb81a7739ec6c3ed8b6f3bc45077
Signed-off-by: Andrew Vaillancourt <andrew.vaillancourt@windriver.com>
2025-02-18 14:35:58 -05:00
Andrew Vaillancourt
958ff41826 Add basic documentation skeleton
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>
2025-02-06 18:38:21 -05:00
Andrew Vaillancourt
8ab8ac70eb Add doc dependencies in doc/reqs.txt to Pipfile
- Added documentation dependencies to Pipfile:
  - Ensures local development environments have access to doc tools for
    live previews using sphinx-autobuild.
  - Aligns Pipfile with the dependencies required for documentation
    builds.
  - Avoids relying solely on doc/requirements.txt for managing doc tools.

- Retained doc/requirements.txt for compatibility with Zuul:
  - Matches the current state of doc tools in Pipfile.
  - Ensures consistency in CI/CD environments where Pipenv is not
    always used.
  - Provides a stable reference for tox-based execution.

- Referenced OpenStack constraints file to ensure compatibility:
  - Ensures that documentation dependencies align with the versions
    used in OpenStack CI environments.
  - Prevents conflicts between local Pipfile versions and the versions
    enforced by OpenStack's upper-constraints.txt.
  - Helps maintain stability when running tests and builds in Zuul.

- Explicitly set verify_ssl = true in Pipfile:
  - Reinforces SSL verification as a best practice for secure package
    installations.
  - This setting is already the default in Pipenv, but making it
    explicit prevents unintended overrides from environment variables,
    global pip configs, or Pipfile.lock changes.
  - Ensures consistency across various environments, including CI/CD
    pipelines and corporate networks.
  - Avoids potential security risks from insecure package sources.

Change-Id: I7144110968395b024cd3962750fc680131de1e5d
Signed-off-by: Andrew Vaillancourt <andrew.vaillancourt@windriver.com>
2025-02-05 12:12:54 -05:00
croy
82d417b9e6 New StarlingX Automation Framework
Fresh start for the StarlingX automation framework.

Change-Id: Ie265e0791024f45f71faad6315c2b91b022934d1
2024-11-29 16:01:57 -05:00
Scott Little
12494275f6 doc: Fix Zuul/tox failures
This commit resolves the Zuul/tox failures encountered when running
sphinx to generate documentation, which in turn prevents merging
changes that are otherwise fine:

The issue is related to a Sphinx update that requires the language
parameter to be specified:
      https://github.com/sphinx-doc/sphinx/issues/10062
      https://github.com/sphinx-doc/sphinx/issues/10474

Partial-Bug: 1976377
Partial-Bug: 2033431
Signed-off-by: Scott Little <scott.little@windriver.com>
Change-Id: Ifa3d4638955ddd2ff9f2acd9225657c16958a03a
2023-09-14 10:50:03 -04:00
Bin Qian
3e6c980193 relocate /pxeboot to /var/pxeboot
Relocate writable /pxeboot dir to /var/pxeboot

Story: 2009101
Task: 22403

Depends-on: https://review.opendev.org/c/starlingx/metal/+/822008

Change-Id: Id1b095d821debfa22d8773c804271e108e323c04
Signed-off-by: Bin Qian <bin.qian@windriver.com>
2021-12-16 13:16:56 -05:00
Yvonne Ding
d1e88a989e Use newer flake8 to run on ubuntu-focal Zuul
flake8 2.6.2 failed on ubuntu-focal zuul machines running python3.8
with the following error:
AttributeError: 'FlakesChecker' object has no attribute 'CONSTANT'

pylint failed with following error:
ERROR: InvocationError for command /home/zuul/src/opendev.org/starlingx/test/.tox/pylint/bin/pylint
--rcfile=pylint.rc automated-p

upgrade openstackdocstheme to 2.2.1 and update sphinx version
fix releasenotes to use python3

Change-Id: Ie5e11b44a3ff9695a6ec44eaf4a53baababc27ac
Signed-off-by: Yvonne Ding <yvonne.ding@windriver.com>
2020-11-16 13:09:22 -05:00
Jessica Castelino
9d859ef3a5 Rename the existing /opt/patch-vault filesystem to /opt/dc-vault
The filesystem /opt/patch-vault is renamed to /opt/dc-vault so that
it can be re-used to store FPGA images and software loads. Thus,
necessary changes have been made in the manual tests.

Change-Id: I095a9c90afef8af5a64d7025745a15b136a56a2f
Story: 2006740
Task: 39550
Depends-On: https://review.opendev.org/#/c/723007/
Signed-off-by: Jessica Castelino <jessica.castelino@windriver.com>
2020-04-24 17:18:06 -04:00
VictorRodriguez
da03e06d5d Add detection of failed VM test case (semiauto)
https://storyboard.openstack.org/#!/story/2002719
Task:37366

Change-Id: I5d0661d0f601635763f7cf92cd705ed8ea5eb23c
Signed-off-by: VictorRodriguez <vm.rod25@gmail.com>
2019-11-05 16:49:12 -06:00
Zuul
48e311a492 Merge "Fix the error links for starlingx test docs" 2019-10-22 16:30:38 +00:00
Zuul
39af674152 Merge "Removing Simplex TC 12 and rename all other TC's Removing typos for source /etc/nova/openrc to /etc/platform/openrc" 2019-07-26 13:33:54 +00:00
junboli
e16aca327d Fix the error links for starlingx test docs
The storyboard and gerrit doc link are error, and git library
redirect to the correct one, this change is to correct all them.

Change-Id: I6da42e14acd8087a1e63d1bcc552949f73439b82
Partial-Bug: #1835207
Signed-off-by: junboli <junbo85.li@gmail.com>
2019-07-03 09:30:18 -04:00
fhernan2
2181ddc8b4 Manual: Regression Security passw rule
Updating test steps for horizon secure login.

Change-Id: I7bd3f700b85737e812b275720331dfd3ce3c98d0
2019-06-27 10:16:08 -05:00
Zuul
727c90f898 Merge "Manual: Regression Security Malformed localhost.yml" 2019-06-27 18:45:33 +00:00
fhernan2
44b9d88645 Manual: Regression Security Malformed localhost.yml
Updating test steps for ansible-playbook command in order to validate localhost.yml malformed format.

Change-Id: Ibb20a2c10b23a3e02504bb20c665e33e2a33bdbd
2019-06-27 04:53:03 -05:00
fhernan2
bb2b06bd68 Manual: Regression Security OAM iptable changes.
Updating test steps for ansible-playbook command in order to verify iptables are set correctly.

Change-Id: Ida54a0060235e4e04c6c311ea66e40ce50dcdd3e
2019-06-26 09:42:19 -05:00
jpgomez
a92ddd5b3d Removing Simplex TC 12 and rename all other TC's
Removing typos for source /etc/nova/openrc to /etc/platform/openrc

Change-Id: Icb27dea483b892d25832bc6271d87f50c3393169
2019-06-24 07:22:43 -04:00
Juan Pablo Gomez
d999d831d9 Adding 26 AIO_simplex Test Cases
Change-Id: I2c68d4eb2c41f75a638f92cb23438a41b1263041
2019-05-16 07:19:45 -04:00
Ada Cabrales
d03a87b0a2 Adding system_inventory domain
System inventory tests verify hardware and node configurations/discovery.

Removing trailing spaces

Changing 'compute' to 'workers'. Adding format to command lines.

Adjusting bulleted sub-lists. Fixing typos. Removing "change the size of the image storage pool on ceph" as it already exists on the storage test plan.

Change-Id: I88fba446c5dc8c880cc19274ccccd498a81756ad
Signed-off-by: Ada Cabrales <ada.cabrales@intel.com>
2019-04-04 17:26:35 -06:00
Zuul
e0ef9ee162 Merge "Manual Tests: Heat HOT template." 2019-03-27 22:13:38 +00:00
Zuul
89cf193ac3 Merge " High availability domain regression test cases and fault Management domain test cases for stx.2019.05 release" 2019-03-27 14:41:18 +00:00
fhernan2
f5af0aa043 Manual Tests: Heat HOT template.
Adding Test Case for creation of Instance attached to a server group.

Change-Id: Ie6172d77825c2b025ddcd6d5b85a7d1ee8bcb91b
2019-03-27 09:37:08 -05:00
Jeyan
52c05f0bf4 High availability domain regression test cases and fault Management
domain test cases for stx.2019.05 release

    story board task 29557 29558 and 29561 are to create
    regression testplan for High availability fault management and SNMP.
  Change-Id: I4e37e74c684f1db3b49191d1cac19413dd078cb6

Change-Id: Ia9c6b1060f3604583b244a13689bd8c97f7fa930
2019-03-26 13:46:59 -04:00
fhernan2
2fdfbbd63a Manual Tests: Heat HOT template
Adding test case for creation of port and floating IP with fixed IPs.

Change-Id: I24cf190d05681b531d65558efe87181e6c4001e7
2019-03-25 11:37:37 -05:00
fhernan2
ae18918fff Manual Tests: Heat Hot template
Adding test case for creation of router gateway and interface.

Change-Id: Ie02cd254e5e73e3afc26a936f8aef31a206ccf2d
2019-03-25 10:02:14 -05:00
fhernan2
af75f89a7f Manual Tests: Heat HOT templates.
Adding Test cases for Provider net, net and subnet creation with HOT template.

Change-Id: I9de981ac57cf6306d046b75a59021276794bb337
2019-03-25 20:17:02 +00:00
Zuul
21dfbdd708 Merge "Manual Tests: Horizon functionality, responsive sub domain" 2019-03-14 17:42:56 +00:00
Peng Peng
297a70949c Manual Tests: Distributed Cloud
Distributed_cloud Regression test plan for stx.2019.05 release.

Change-Id: I6ed8e68e258d924da6b3ab1bf901db114a7d542e
Signed-off-by: Peng Peng <peng.peng@windriver.com>
2019-03-14 17:17:51 +00:00
Peng Peng
4533d730ba Manual Tests: Installation and Configuration
Installation and Configuration Regression test plan for stx.2019.05 release.

Change-Id: I354c75ab5db573a681ee229b3858329e6b2e40d0
Signed-off-by: Peng Peng <peng.peng@windriver.com>
2019-03-14 15:31:47 +00:00
fhernan2
9fb6a98611 Manual Tests: Horizon functionality, responsive sub domain
Adding horizon functionality and horizone platform and containers responsive.

Change-Id: I6d7306e5018a33a91fe3935153c217963b10ca90
2019-03-14 02:46:20 +00:00
Juan Pablo Gomez
edb0f93dee Adding 15 Gnocchi Test Cases
Test Cases:

- Logs from gnocchi api.log reports listening (address and port in gnocchi-api.conf)
- gnocchi_resources.yaml and resource metrics changes for 'instance'
- gnocchi cli command - get metric list
- gnocchi cli command - metric show (openstack metric show) - pre and post swact gnocchi cli command - get gnocchi status (for backlog)
- Attempt list metrics and show measures from standby controller
- Metrics for Instance - get metrics for a single instance (capturing vcpu, ram, boot time and cpu related measures)
- Metric archive policies - archive policy default, create, list, show, delete in gnocchi
- Configuration - Default archive policy rules list, create, delete in gnocchi (low, all metrics)
- Get openstack metric list and measures show on lab configured with https
- Ceilometer no longer in system service-parameter-list or service-parameter-modify operations
- Metrics for compute.node - get metrics for cpu related nova_compute resource
- Gnocchi user listed as protected service in keystone
- Logs from gnocchi metric server version in metricd.log and status on measurements waiting to be processed
- Logs from postgres.log and gnocchi events

Change-Id: I1253690d45b7f4e27ffc920f3b9e569d43053d3b
2019-03-13 06:17:55 -04:00
Zuul
c59155413c Merge "Manual Tests: Networking Regression Manual Subdomain" 2019-03-13 15:07:24 +00:00
Zuul
d562bbabde Merge "Manual Tests: Networking Interface Attach Detach Subdomain" 2019-03-13 15:07:23 +00:00
Zuul
9ca096c7d9 Merge "Manual Tests: Networking DPDK Subdomain" 2019-03-13 15:07:23 +00:00
Zuul
55fb501184 Merge "Manual Tests: Networking Internal DNS Resolution" 2019-03-13 15:04:14 +00:00
Zuul
5b04e4b9ee Merge "Manual Tests: Networking LLDP Subdomain" 2019-03-13 15:04:13 +00:00
Zuul
49fff0b98f Merge "Manual Tests: Networking DNAT Subdomain" 2019-03-13 15:04:12 +00:00
Zuul
c018b23a1c Merge "Manual Tests: Backup and Restore" 2019-03-13 15:04:09 +00:00
Zuul
6ad0f6f945 Merge "Manual Tests: Maintenance" 2019-03-13 15:01:48 +00:00
fhernan2
9249e7b2cd Manual Tests: Security Password rule setup.
Password rule sub-domain, adding 6 test cases.

Change-Id: Iff7b9052a0dae4b2175d0f6eb3b167bf44a054db
2019-03-12 10:31:05 -05:00
Elio Martinez
0dc0a425ff Manual Tests: Networking Regression Manual Subdomain
The goal for this patch is to start including all the regression test cases
that contains basic operations for networking domain. These test cases can
show the networking health in our systems. The test scope was considering any
possible scenario where it should contain the operations across the time.
Making this subdomain easy to understand and highly valuable for future exe-
cutions.

Change-Id: I9597347f4f7f9f9ce2f61be271d73cfaea49adc4
2019-03-12 08:08:14 -06:00
Elio Martinez
57f23bbb00 Manual Tests: Networking Interface Attach Detach Subdomain
With this patch the intention is to start working on Attach Detach subdomain,
this patch includes 3 basic test cases in oder to verify the behavior for
each time that we perform a attach / detach operation on different sceranrios,
this includes different drivers and making enphasis on phisicall interfaces or
virtual environments. Mainly we are just deatacching from existing port in
order to keep the steps in a straight forward way.

Change-Id: I3b307385b9d3cdba0519d74c63961f50fb3f53c1
2019-03-12 08:05:59 -06:00
Elio Martinez
4e828ae83e Manual Tests: Networking DPDK Subdomain
This patch contains the basic tests that we need in order to verify that our
StarlingX environment contains those DPDK/OVS versions that we want to work
with. First step in order to keep our environment should be to review our
desired packages. We are going to include more test cases related to this in
the future.

Change-Id: I9cafedc0ee27be61a152fd07549aa53e70aaf5a3
2019-03-12 08:04:03 -06:00
Elio Martinez
77510b52d0 Manual Tests: Networking Internal DNS Resolution
This patch includes the first DNS test. The objective for this test is to
evaluate and demostrate how does the DNS service is going to affect our
communication with VM's. Following the logic, we can not reach any VM through
their name if the DNS services is not enabled. This first test is for AIO.

Change-Id: I38c5c0e53f1e80ae4c6506d39fd21163ebde9e05
Signed-off-by: Abraham Arce <abraham.arce.moreno@intel.com>
2019-03-12 08:02:12 -06:00
Elio Martinez
3c338b2bf9 Manual Tests: Networking LLDP Subdomain
With this patch, we are starting to upload LLDP test cases, the objective for
these test is to prove the LLDP agent functionallity. This agent is going to
show node properties according with the project needs, such as , interfaces,
OS and go on. Good number of the test cases still on development. We will
complement this domain with the rest of the test cases as soon as possible.

Change-Id: Ifa7cfadcd7daffe3fa15b0fb48520dcb75089a59
2019-03-12 08:01:07 -06:00
Elio Martinez
f402d360ca Manual Tests: Networking DNAT Subdomain
This patch includes 3 main test cases that can asure the DNAT functionallity.
Those test cases are designed in order to verify that our existing VM keeps
alive and reachable after normal system operations such as lock/unlock. Every
tests is checking and creating port forwarding rules and the behavior after
those mentioned operations.

Change-Id: I352190b6b95e4e694fe80e5abd2122f46284f81f
2019-03-12 07:51:48 -06:00
marvinhuang
0ee542e3eb Manual Tests: Backup and Restore
Backup and Restore Test Plan for stx.2019.05 relese

Change-Id: I6b90abdb1338964b31a397bc8c71fd20f4619c5d
Signed-off-by: marvinhuang <marvin.huang@windriver.com>
Signed-off-by: Abraham Arce <abraham.arce.moreno@intel.com>
2019-03-12 07:45:20 -06:00
Jeyan
e8ebf94f60 Manual Tests: Maintenance
Maintanance regression Test Plan for stx.2019.05 release.

Change-Id: I20c4995b1c021627b17a2c8b1ea1d963d14d5902
Signed-off-by: Abraham Arce <abraham.arce.moreno@intel.com>
2019-03-12 07:42:53 -06:00
fhernan2
cfb8bee920 Manual Tests: Security Keystone Authentication
Adding keystone authentication sub domain for Security TCs.

Change-Id: Ib3e179de4b814bce6b246686a956da588c12ec68
2019-03-12 07:06:13 -06:00
fhernan2
87b9e6e8da Manual Tests: Security Appropriate File Access
Adding Appropriate File Access subdomain for Security Test Suite.

Change-Id: I4ee004cc457ce9af928311f12a23aa989e4b8f56
2019-03-12 07:05:17 -06:00