Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create QA GitHub Actions Workflow #8

Open
maikbasel opened this issue Oct 20, 2023 · 0 comments
Open

Create QA GitHub Actions Workflow #8

maikbasel opened this issue Oct 20, 2023 · 0 comments

Comments

@maikbasel
Copy link
Owner

No description provided.

@maikbasel maikbasel added this to the Setup project milestone Oct 20, 2023
@maikbasel maikbasel removed this from the Setup project milestone Dec 21, 2023
@maikbasel maikbasel self-assigned this Dec 21, 2023
maikbasel added a commit that referenced this issue Dec 21, 2023
A new Quality Assurance Checks workflow has been added to the
project's GitHub Actions. This workflow automatically runs on every
push and pull request to the master branch. It includes various
checks including code linting with ESLint and unit tests with Jest.
This ensures that all code changes are properly verified for quality
before being merged.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
This commit corrects syntax errors across the file 'SidebarMenu.test
.tsx' and updates the jest configuration included in 'jest.config.ts'
. It also corrects string quotations in the 'frontend_qa.yml'
workflow file for consistency and code quality.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
This commit reforms code formatting for better readability and
adjusts the import order for better organization. It changes multiple
 files, while no actual functionality is changed. The more structured
  code can improve understanding and ease of maintenance.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
This commit simplifies the code structure in two functions that
extract configuration and credentials from AWS profile. It removes
unnecessary variable assignments to enhance code readability and
maintainability.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
This commit introduces a new GitHub Actions workflow for backend
Quality Assurance checks. These checks include the building of code,
running cargo-tarpaulin,test-threads, running Rustfmt and Clippy.
Also modified the frontend QA workflow to use latest checkout action
and ignore backend QA file changes.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
This commit specifies the default working directory for every step in
 the check job of the workflow.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
This commit specifies the default working directory for every job in
 the backend_qa workflow.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
Modified the GitHub Actions workflow for backend QA to include the
specific manifest-path for Cargo in each cargo command. This
adjustment explicitly sets the directory context where the commands
are run.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
Updated the GitHub Actions workflow for backend quality assurance to
include a step for installing dependencies on Ubuntu 20.04 platform.
This ensures the necessary libraries are available for the build and
test processes to work correctly on the Ubuntu platform.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
…rkflow

Updated the GitHub Actions workflow for backend quality assurance by
removing the step for installing dependencies on Ubuntu 20.04
platform. Also removed the part of the workflow that builds the code,
 and added failure threshold to cargo-tarpaulin. This simplifies the
 workflow and adds stricter quality controls.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
The args parameter in the GitHub Actions workflow for backend quality assurance was updated. A minor change was made to correct the path for src-tauri/Cargo.toml file by enclosing it in quotes ensuring its accurate parsing.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
The GitHub Actions workflow for backend QA has been updated to
install the latest version of cargo-tarpaulin using the
actions-rs/install action instead of actions-rs/tarpaulin.
Additionally, the arguments for running cargo-tarpaulin have been
restructured for better clarity. The path "src-tauri/Cargo.toml" is
now specifically passed to the command.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
The backend QA workflow has been updated to not only install the
latest version of cargo-tarpaulin using actions-rs/install, but to
also add the Tauri dependencies which are specific to Ubuntu.
Furthermore, the tool cache is now being utilized while running
cargo-tarpaulin for optimal performance.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
The updated CI workflow now uses the nightly Rust toolchain and
includes additional Tauri dependencies specific to Ubuntu.
Additionally, the cargo-tarpaulin setup has been replaced by grcov.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
This change updates the test run arguments to specify a manifest file
 for Cargo by using `--manifest-path=src-tauri/Cargo.toml`.
 Additionally, it removes the cargo-tarpaulin stage that was
 duplicating test coverage efforts.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
…A workflow

This commit changes the Rust toolchain from nightly to stable in the
backend QA workflow and adds a new step for generating code coverage.
 It also replaces the previous testing step with a parameterized
 cargo llvm-cov command that allows for explicit Cargo.toml path
 specification. Additionally, cargo-llvm-cov is now installed as part
  of the workflow.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
The commit modifies the command used to generate code coverage in the
 backend QA workflow. The new command excludes the
 "--manifest-path=src-tauri/Cargo.toml" argument.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
The 'target/' directory has been added to .prettierignore. This
ensures that the Prettier tool does not take this directory into
account when checking or formatting the project's code.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
The code coverage generation method has been updated in the backend
QA workflow. It now uses the actions-rs/tarpaulin@v1 action instead
of the previous cargo llvm-cov command.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
Corrected the "/target/" syntax in .prettierignore and added
"/target/" to .gitignore file to ensure proper ignoring of the target
 folder during actions.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
Switched from actions-rs/tarpaulin to actions-rs/install and adjusted
 commands to use cargo-tarpaulin for test coverage.

Refs: #8
maikbasel added a commit that referenced this issue Dec 21, 2023
The backend QA workflow has been updated to use cargo-tarpaulin for
test coverage. This switch involves dropping
actions-rs/tarpaulin in favor of actions-rs/install, and also
adjusting the relevant commands within the workflow file.

Refs: #8
maikbasel added a commit that referenced this issue Dec 22, 2023
Added a new configuration file, tarpaulin.toml, for better management
 of test coverage settings in the Cargo backend. Additionally,
 updated the Cargo.lock file with new dependencies resulting from
 package installations and upgrades.

Refs: #8
maikbasel added a commit that referenced this issue Dec 22, 2023
The sequence in the backend QA workflow has been updated. The 'Run
Clippy' step has been moved after the 'Install Tauri dependencies'
step to ensure all dependencies are installed before running code
linting with Clippy.

Refs: #8
maikbasel added a commit that referenced this issue Dec 22, 2023
The `tarpaulin-report.html` file has been added to both `.gitignore`
and `.prettierignore` files. This will prevent the tarpaulin coverage
 reports from being tracked by Git and formatted by Prettier
 respectively.

Refs: #8
maikbasel added a commit that referenced this issue Dec 22, 2023
Updated members section and added resolver "2" in the Cargo.toml file
. This modification is intended to manage the workspace and
dependency resolution appropriately in the project.

Refs: #8
maikbasel added a commit that referenced this issue Dec 22, 2023
Added the tarpaulin_exclude attribute to the main function and
get_profiles function in order to exclude these sections from test
coverage calculations. Also, restructured the get_profiles function
declaration for better clarity and functionality.

Refs: #8
maikbasel added a commit that referenced this issue Dec 22, 2023
The test case functions have been slightly altered to improve
readability and maintainability. The code inside the function
'should_return_empty_printable_attachments_given_only_non_printable_attachments_are_attached'
has been reformatted, as well as the usage of assert_eq! in
'should_return_printable_attachments_given_only_printable_attachments_are_attached'.

Refs: #8
@maikbasel maikbasel removed their assignment Dec 22, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant