You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

1.  Preamble

2.  Framework directory structure

2.1.  Your repository:

Assuming your repository looks something like this:

Project_root
├── root_files.extension
├── root_directiories/
│   ├── directories/
│   ├── ...
│   └── files.extension
└── tests # <- this is directory where the whole actor testing framework should be placed

Then the actor testing framework has to be in a directory called tests/ and this is mandatory.

2.2.  Actor Testing Framework repository - inside your project:

The inside of the tests/ directory, inside your repository, should contain the entire actor testing framework repository like structure below:

tests
├── __init__.py
├── ci_scripts
│   ├── .gitlab-ci.yml
│   └── .iter-ci.sh
├── configs
│   ├── actor_configuration.yml
│   └── ids_configuration.yml
├── input_pulse_file
│   ├── ITER
│   │   └── 3
│   │       └── 0
│   │           └── {pulsefiles}
│   └── GITLAB
│       └── 3
│           └── 0
│               └── {pulsefiles}
├── main_code_run
│   └── run_actor.sh
├── modules
│   ├── modules_gitlab.yml
│   └── modules_iter.yml
├── native_codes_build
│   └── build_actor.sh
├── pytest_scripts
│   ├── conftest.py
│   ├── __init__.py
│   ├── pytest.ini
│   └── test_actor.py
├── README.md
├── test.sh
└── utils
    ├── get_actor_info.py
    ├── get_ids_info.py
    └── get_ids_name.py

3. CI engine - ITER or GITLAB

Actor Testing Framework is prepared to run on both ITER CI (called Bamboo) and GITLAB CI (works like Gateway).

There is a slight difference between these platforms that causes the framework to be configured differently to run tests on each of them.

3.1.  ITER CI Configuration

3.1.1.  ITER Modules

To set up the ITER modules needed to build and run the actor, there is a file called modules/modules_iter.yml , where you need to provide all the necessary modules, preferably full versions.

├── modules
│   ├── modules_gitlab.yml
│   └── modules_iter.yml	# <-- This is file dedicated for ITER modules

##############################################
- example: inside modules_iter.yml:
##############################################
modules:
  - IMAS
  - iWrap
  - INTERPOS/9.1.0-intel-2020b
  - XMLlib/3.3.1-intel-2020b

3.1.2.  Configuration files

3.1.2.1.  Actor configuration

There is YAML file in the configs directory called actor_configuration.yml that contain metadata about the actor being tested. For now, only the fields: actor name and relative path from the project root to the actor description file are to be set.

├── configs
│   ├── actor_configuration.yml	# <-- this file
│   └── ids_configuration.yml

##############################################
- example: inside actor_configuration.yml:
##############################################
actor_name: NAME
actor_path: actor/description/file.yaml
  • No labels