dawidniezgodka/Input Validator
An action encapsulating the Validation Step of the CB-Framework
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stalelast commit Jan 8, 2024
- License
- MIT
Pinned Snippet
uses: dawidniezgodka/inputvalidator@5e444531cb78f7f710576a1730cc562334d0f250 # no releases — HEAD as of 2026-07-11tags can be moved; commit SHAs can't. why a SHA?
Inputs
| name | description | required | default |
|---|---|---|---|
| bench_dir | If the benchmark-related files and folders are in a subdirectory of the repository, please specify its name here. If the value is specified, the assumption will be made that the directory the value points to contains both ansible and terraform folders. The main idea behind this input is that you don't have to prepend all the paths with the directory name. If you don't want this behaviour, you can use the snr_directory and infra_directory inputs. | no | — |
| number_of_metrics_to_evaluate | The number of metrics that will be evaluated | no | — |
| infra_instance_meta_public_key | The public key that will be added to the instance. The private part will be used to enable SSH access to the instance and execute Ansible commands (the private key must be set using secrets). | yes | — |
| infra_custom_inventory_file_path | Whether to use custom Terraform inventory file. | no | terraform/templates/hosts.tpl |
| infra_vars_file_path | Path to Terraform variables file (.tfvars). | yes | — |
| infra_variables | A multiline string of Terraform variables (key-value pairs). | no | "" |
| infra_destroy_after_run | Whether to destroy the infrastructure after the benchmark is finished. If this input is set to true, the infrastructure will be destroyed regardless of the benchmark result. | no | false |
| infra_lock_id | If you received an error message that the state file is locked, you can use this input to unlock it. Please provide the lock id that was given to you in the error message. | no | — |
| infra_extra_file_uploaded_name | Extra file for deploy step. The file will be downloaded to the root of the repository using download-artifact action. This input related to the name of the uploaded artifact. | no | — |
| infra_extra_file_name | Extra file for deploy step. The file will be downloaded to the root of the repository using download-artifact action. | no | — |
| infra_extra_file_target_path | Indicates where the extra file shall be moved. | no | — |
| snr_existing_config_path | Path to the existing Ansible configuration file. If this input is provided, the default config won't be created and your configuration will be added to the ANSIBLE_CONFIG env variable. | no | — |
| snr_def_cfg_dir | Path to the directory where the default Ansible configuration will be created. | no | ansible |
| snr_def_cfg_file_name | The name of the default Ansible configuration file. | no | ansible.cfg |
| snr_def_cfg_inventory_file_path | The default inventory file path for Ansible. | no | hosts.cfg |
| snr_def_cfg_privilege_escalation | The default privilege escalation for Ansible. | no | — |
| snr_def_cfg_private_key_file_path | The private key file path for Ansible that will be added to the default configuration. | — | — |
| snr_def_cfg_host_checking | The default host checking for Ansible. | no | — |
| snr_directory | Relative path to the Ansible directory. | no | ansible |
| snr_playbook_directory | Relative path to the directory where playbooks that represent different benchmark phases are stored. | no | playbooks |
| snr_execution_order | The order in which the framework will execute the Ansible playbooks. | yes | — |
| snr_requirements | Path to Ansible requirements file. | no | — |
| snr_extra_options_string | A list of extra options to be passed to Ansible. Please read the docs to learn more about the format and the way of escaping secrets and environment variables. | no | — |
| snr_extra_options_file | A .yml file with extra options to be passed to Ansible. Please read the docs to learn more about the format and the way of escaping secrets and environment variables. | no | — |
| snr_extra_file_uploaded_name | Extra file for the setup and run step. The file will be downloaded to the root of the repository using download-artifact action. This input related to the name of the uploaded artifact. | no | — |
| snr_extra_file_name | Extra file for the setup and run step. The file will be downloaded to the root of the repository using download-artifact action. | no | — |
| snr_extra_file_target_path | Indicates where the extra file shall be moved. | no | — |
| eval_bench_group_name | The name of a specific benchmark. The name will be appended to the data where all the benchmark results are stored. The name can be used to change graphs and compare results. | no | Benchmark |
| eval_metrics_to_evaluate | The metrics that will be evaluated. | no | — |
| eval_branch_with_bench_data | The name of the branch that contains the benchmark data. | no | bench_data |
| eval_previous_data_storage_folder | The first use of this variable is in step called "Checkout the branch with previous bench res to a given folder". Thus, it is used to specify the folder where the previous benchmark data will be checked out. Afterward, in the logic of the BenchEval action, the folder and the file (file_with_previous_bench_data) are used to specify the location where the current benchmark data will be appended so that it can be saved by executing the step "Save the current benchmark to the file with all bench data". | no | bench_data |
| eval_file_with_previous_bench_data | The name of the file that contains the previous benchmark data. This file will be also used to append the current benchmark data. See the description of the previous_data_storage_folder variable for more details. | no | data.json |
| eval_bucket_results_folder_path | The path to the GCP bucket folder that contains the benchmark results. | no | — |
| eval_bucket_result_file_path | The path to the file that contains the benchmark result in the GCP bucket. | no | — |
| eval_local_download_path_for_results | The path to the local folder where the benchmark results will be downloaded. | no | results |
| eval_save_current_bench_res | Save the benchmark data pointed to by current_bench_res_file to a file located in benchmark_data_file'. | no | true |
| eval_add_action_page_job_summary | Leave a job summary with benchmark result comparison in the actions tab of a repo. | no | on |
| eval_link_to_templated_gh_page_with_results | The link to the GitHub page with the templated benchmark results. | no | — |
| eval_comparison_margins | Describes by how much percentage a given value can deviate from the desired value (threshold or prev) to still qualify the benchmark as successful. If you have selected range as one of the modes in the above set of modes, and it is not the only function, please provide values of -1 for the remaining functions. For example, if you previously entered: smaller, smaller, range, and your range is 20%, this input should look as follows: "-1, -1, 20" | — | — |
| eval_failing_condition | — | no | any |
| eval_bench_group_to_compare | The name of the benchmark that will be compared to the current benchmark. | no | — |
| eval_action_page_job_summary | Leave a short summary on the workflow page. Possible values are on, off, if_failed. | no | on |
| eval_evaluation_method | The method that will be used to evaluate the benchmark. The possible values are 'previous', 'previous_successful', 'threshold', 'jump_detection', 'trend_detection_moving_ave', 'threshold_range', 'trend_detection_deltas' | yes | — |
| eval_threshold_values | Comma-separated list of threshold values for comparison. | no | — |
| eval_comparison_operators | Comma-separated list of operators for threshold comparison. The possible values are smaller, bigger, and tolerance. | no | — |
| eval_alert_users_if_bench_failed | Commas-separated list of users to alert if the benchmark failed. | no | — |
| eval_comment_to_commit | Add commit comment with the detailed benchmark info. Possible values are on, off, if_failed. | no | if_failed |
| eval_threshold_upper | Comma-separated list of upper threshold values for range comparison. | no | — |
| eval_threshold_lower | Comma-separated list of lower threshold values for range comparison. | no | — |
| eval_jump_detection_thresholds | The threshold values for jump detection. | no | — |
| eval_trend_thresholds | The threshold value for both deltas trend detection and moving average. | no | — |
| eval_moving_ave_window_size | The window size for moving average trend detection. | no | — |
| eval_trend_det_no_sufficient_data_strategy | The strategy to use when there is not enough data to perform trend detection. The possible values are use_available and fail. | no | use_available |
| eval_trend_det_successful_release_branch | The name of the branch that contains the successful benchmark result in a release branch. If not specified, the main branch will be used. | no | main |
| eval_extra_file_uploaded_name | Extra file for the eval step. The file will be downloaded to the root of the repository using download-artifact action. This input related to the name of the uploaded artifact. | no | — |
| eval_extra_file_name | Extra file for the eval step. The file will be downloaded to the root of the repository using download-artifact action. | no | — |
| eval_extra_file_target_path | Indicates where the extra file shall be moved. | no | — |
| eval_result_files_merge_strategy_for_each_metric | The strategy to use when merging the the benchmark results from the downloaded folder. This should be a comma separated list of strategies. Each strategy corresponds to a metric. The possible values are: sum, average, max, min, median. | no | — |
Outputs
no outputs