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

Feature/gha #3

Merged
merged 21 commits into from
Jan 22, 2025
Merged

Feature/gha #3

merged 21 commits into from
Jan 22, 2025

Conversation

ivangrynenko
Copy link
Collaborator

Checklist before requesting a review

  • I have formatted the subject to include ticket number as [#123] Verb in past tense with dot at the end.
  • I have added a link to the issue tracker
  • I have provided information in Changed section about WHY something was done if this was not a normal implementation
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have added tests that prove my fix is effective or that my feature works
  • I have run new and existing relevant tests locally with my changes, and they passed
  • I have provided screenshots, where applicable

Changed

  1. Setting up GHA workflow.

Screenshots

- Introduced a new workflow in `.github/workflows/test.yml` to automate testing for the scaffold testing package.
- Configured MySQL service and PHP setup with necessary extensions.
- Added steps to create a Drupal project, install it, and run PHPUnit and Behat tests.
- Updated Behat configuration in `tests/behat/behat.yml` to include additional contexts and improve error handling.

This commit enhances the testing framework and ensures better integration with Drupal, facilitating continuous integration and deployment.
…github/workflows/test.yml`. This change allows the workflow to run on all branches for pull requests, enhancing flexibility in testing across different feature branches.
- Updated `composer.json` to reflect a new description and improved dependency management.
- Introduced a new `composer.json` for Drupal project setup in `.github/drupal/`.
- Added PHPUnit configuration file and unit tests for the `Installer` class.
- Enhanced the `Installer` class to support feature file installation with override options.
- Updated GitHub Actions workflow to streamline testing processes, including installation of system dependencies and verification of Drupal files.
- Added a sample EICAR test file for security testing in Behat.

These changes improve the testing framework's integration with Drupal and enhance the overall development workflow.
- Removed deprecated path repository configuration from `composer.json`.
- Updated GitHub Actions workflow to trigger on the `main` branch for both push and pull request events.
- Changed the checkout action version to v2 and streamlined the installation of system dependencies.
- Enhanced project structure setup by copying source files directly instead of using the scaffold-testing path.
- Simplified Composer installation process and improved test execution steps for PHPUnit and Behat.

These changes improve the workflow's efficiency and maintainability, ensuring better integration with the Drupal project.
- Added a new Behat configuration file to streamline testing setup.
- Updated `composer.json` to include new dependencies for Behat extensions.
- Introduced a new directory structure for Behat tests, including bootstrap files.
- Removed outdated unit test file and added a new scaffold test to verify directory structure.
- Updated existing Behat feature files to improve clarity and maintainability.

These changes improve the testing framework's integration with Drupal and enhance the overall development workflow.
- Removed the obsolete Behat configuration file to streamline the testing process.
- Updated `composer.json` to include new autoloading paths for Behat tests.
- Simplified the GitHub Actions workflow by removing unnecessary services and steps, focusing on PHP setup and project structure.
- Enhanced the `FeatureContext` class by integrating the `ScaffoldTestingTrait` for improved test functionality.

These changes improve the maintainability and efficiency of the testing framework, ensuring better integration with the Drupal project.
- Added versioning to `composer.json` and updated autoload paths for improved test organization.
- Introduced new `.editorconfig` and `.gitattributes` files for consistent coding standards and Git behavior.
- Created a Dockerfile for a streamlined testing environment, ensuring dependencies are installed correctly.
- Updated PHPUnit configuration and added new unit tests for the `Installer` class, improving test coverage.
- Enhanced GitHub Actions workflow to automate testing with Docker, ensuring a consistent environment for running tests.

These changes improve the maintainability and efficiency of the testing framework, ensuring better integration with the Drupal project.
- Updated README files to provide comprehensive developer documentation, including installation, configuration options, and testing guidelines.
- Added detailed sections on unit tests, test cases, and running tests locally using Docker.
- Improved configuration examples for better clarity and usability.
- Removed outdated installation instructions and streamlined the overall documentation structure.

These changes improve the onboarding experience for developers and enhance the maintainability of the testing framework.
…tions development

- Bumped version in `composer.json` to 0.4.4 for release.
- Added comprehensive section in `README.developers.md` for running GitHub Actions locally using the `act` tool, including prerequisites and common issues.
- Introduced a new `renovate-gh.json` configuration file for managing dependencies with Renovate.
- Updated `.github/drupal/composer.json` to improve dependency management and removed deprecated repository configuration.
- Enhanced GitHub Actions workflow in `.github/workflows/renovate.yml` to allow manual triggering and improved validation steps.

These changes improve the developer experience and streamline the dependency management process.
- Added phpunit.xml to the export-ignore list in .gitattributes to prevent it from being included in package exports.

This change helps streamline the export process by excluding unnecessary test configuration files.
- Removed unnecessary mock dependencies and setup code from InstallerTest.
- Added a new test method to verify the existence of the Installer class.
- Streamlined the test structure for improved clarity and maintainability.

These changes enhance the testing framework by reducing complexity and ensuring that the Installer class is correctly defined.
- Deleted the composer.lock file to allow for more flexible dependency management.
- Updated the PHP testing workflows to use a simpler PHP image and streamlined the installation of dependencies.
- Enhanced the installation steps in the workflows to include necessary system dependencies and Composer installation.
- Simplified PHPUnit test execution by removing Docker build steps and directly running tests in the workflow.

These changes improve the efficiency and maintainability of the testing framework, ensuring a more straightforward setup for developers.
- Added a step in the GitHub Actions workflow to copy the phpunit.xml file to the working directory before running tests.
- This change ensures that PHPUnit is configured correctly during the testing process, improving the reliability of test execution.

These updates enhance the testing framework's setup, ensuring a smoother workflow for developers.
- Modified the GitHub Actions workflow to copy all project files to the working directory before running tests, ensuring that all necessary files are available during the testing process.
- This change enhances the reliability of the test execution by providing a complete project context, improving the overall testing framework's setup.
- Added 'tree' command to display the directory structure at various stages of the testing process, providing better insight into the file organization.
- Included debug output for the PHPUnit execution to facilitate troubleshooting.
- Ensured that the phpunit.xml file is correctly located before running tests, enhancing the reliability of the testing framework.

These changes improve the clarity and maintainability of the testing workflow, aiding developers in understanding the project structure during test execution.
- Modified the workflow to copy the phpunit.xml file from the .github/drupal directory to the working directory before executing tests, ensuring proper PHPUnit configuration.
- Improved visibility of the directory structure by listing files in the .github/drupal directory during the setup process.
- Enhanced debug output by displaying the contents of the phpunit.xml file, aiding in troubleshooting and ensuring the correct configuration is used.

These changes improve the reliability and clarity of the testing framework, facilitating a smoother testing process for developers.
… debugging

- Updated the workflow to create a phpunit.xml file dynamically instead of copying it from the .github/drupal directory, ensuring the correct configuration is always used.
- Enhanced debug output by displaying workspace paths and current directory contents, aiding in troubleshooting.
- Improved visibility of the directory structure before and after copying project files, facilitating better understanding of the testing environment.

These changes enhance the reliability and clarity of the testing framework, streamlining the testing process for developers.
- Updated the workflow to generate the phpunit.xml file using echo instead of a heredoc, improving readability and maintainability.
- Enhanced debug output by displaying the contents of the generated phpunit.xml file, aiding in troubleshooting and ensuring correct configuration.
- These changes streamline the testing setup, ensuring a more reliable and clear testing process for developers.
- Deleted the phpunit.yml file from the GitHub Actions workflows, streamlining the testing setup.
- This change reflects a shift in the testing strategy, potentially indicating a move towards a different testing framework or configuration approach.

These updates simplify the repository's workflow structure, enhancing maintainability for developers.
@ivangrynenko ivangrynenko merged commit f120199 into main Jan 22, 2025
3 checks passed
@ivangrynenko ivangrynenko deleted the feature/gha branch January 22, 2025 07:50
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

Successfully merging this pull request may close these issues.

1 participant