boozallen / aissemble

Booz Allen's lean manufacturing approach for holistically designing, developing and fielding AI solutions across the engineering lifecycle from data processing to model building, tuning, and training to secure operational deployment
Other
34 stars 8 forks source link

Feature: Publish aggregated Cucumber report from cucumber-report-aggregator #474

Open habibimoiz opened 1 week ago

habibimoiz commented 1 week ago

Description

As part of #447 was to generate an aggregated report of the Cucumber tests for the entire aiSSEMBLE report. The next objective is to take the generated report and publish that to a public site such that the report can be accessible outside of aiSSEMBLE. Currently, the aggregated report is generated locally in the /target directory under /cucumber-reports/cucumber-html-reports/overview-features.html. Theoretically, this local HTML directory can be published.

Approach 1: GitHub Pages (peaceiris)

Upon doing research, the gh-actions-pages plugin from peaceiris appears to be a promising approach. This is a GitHub Action to deploy your static files to GitHub Pages. This deploy action can be combined simply and freely with Static Site Generators. (Hugo, MkDocs, Gatsby, mdBook, Next, Nuxt, and so on).

We can potentially use the Deploy to Subdirectory destination_dir option from their plugin to get the aggregated Cucumber report deployed to GitHub Pages.

Approach 2: Explore the option on Publishing to Cucumber.io

Explore the ability to see if Cucumber allows an already generated report to be pushed to Cucumber.io; contact Cucumber support to see the possibility.

Approach 3: GitHub Pages (Jameslves)

Upon doing research, using the github-pages-deploy-action plugin from Jameslves appears to be an alternate approach to gh-actions-pages plugin. The same concerns exist with the use of this plugin. The only thing that stands out with this plugin however is the parallel use of our Antora docs with this.

Questions / Concerns

C: The aggregated report is generated every time the :cucumber-report-aggregator is ran. If the publishing happens in the CI build and then deployed to GitHub pages, will GitHub pages store the directory locally, or will it point to a target directory? If it does point to the target directory, this will fail. In this case, we will need to checkin the HTML directory such that the GitHub pages has a something concrete to point to.

C: By using GitHub pages, we have to ensure that the aiSSEMBLE docs are not disturbed.

DOD

Acceptance criteria required to realize the requested feature

Test Strategy/Script

References/Additional Context

habibimoiz commented 1 week ago

DoD reviewed and approved by @jacksondelametter.