-
Notifications
You must be signed in to change notification settings - Fork 3
Adds CI/CD workflows and setup scripts #64
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
base: main
Are you sure you want to change the base?
Conversation
from ormico/github-actions-ci-template
🔄 DbPatchManager PR Build Results
Run ID: |
from ormico/github-actions-ci-template with modifications
Enhances version management to handle scenarios where the `version.json` file is missing. It creates a default `version.json` if one doesn't exist. This prevents errors and ensures the build process can continue even if the version file is absent, using default values where needed. Also adds a test to validate this behaviour.
Refactors the cleanup workflow to focus on artifact and branch cleanup. Removes container image cleanup, and enhances preview release cleanup to target artifacts. Increases default preview cleanup age to 60 days. Adds a CLI package test to the PR build to validate built package. Updates NuGet package publishing and verification in release workflow.
Removes the dedicated CLI package test job and integrates its functionality into the main build job. This simplifies the workflow and avoids redundant testing steps. The build job now includes validation of essential CLI files and execution of the help command. The summary job is updated to reflect the removal of the CLI package test.
Removes the `fail_ci_if_error: false` setting from the CLI testing job in the PR build workflow. This setting is unnecessary because the workflow already captures and handles errors during the CLI testing phase. Removing it simplifies the configuration and avoids potential confusion.
Updates the CLI help command test to check the exit code instead of relying on exception handling, providing more reliable feedback. Adds more verbose logging for failures, including the exit code and a hint about potential setup issues. This prevents false negatives and offers better insights into potential problems during CLI testing.
Updates the build process to allow the CLI help command to fail without causing the entire build to fail. This is useful for scenarios where the CLI may require specific setup or configuration that is not available in the build environment. The exit code is reset to ensure subsequent steps are not affected.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds a comprehensive CI/CD workflow system to the repository, implementing automated build, test, and deployment pipelines using GitHub Actions. The changes introduce a sophisticated DevOps framework with version management, security scanning, and artifact management capabilities.
- Implements 6 core GitHub Actions workflows for PR validation, feature builds, releases, hotfixes, testing, and cleanup
- Adds PowerShell scripts for repository setup and version management with semantic versioning support
- Creates initial version tracking with version.json file and comprehensive documentation
Reviewed Changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| version.json | Establishes initial version tracking at 2.2.1 |
| scripts/setup-repository.ps1 | Comprehensive repository configuration script for branch protection and GitHub settings |
| .github/workflows/*.yml | Five main workflow files implementing complete CI/CD pipeline |
| .github/scripts/*.ps1 | Version management and testing scripts for automation |
| .github/CI-CD-DOCUMENTATION.md | Complete documentation for the CI/CD system |
Comments suppressed due to low confidence (1)
.github/workflows/cleanup.yml:1
- This file correctly uses @v4, but other workflows use @V3. Standardize all upload-artifact actions across workflows to use the same version.
name: Cleanup Old Artifacts
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Improves the CI pipeline by integrating CodeQL for security and quality analysis. Also adds code formatting checks with auto-fix capabilities and reports formatting issues as PR comments. Updates static code analysis to not treat warnings as errors. Adds Super Linter for enhanced code quality checks.
|
This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation. |
Updates the .NET setup action to version 4 in multiple workflow files. This change ensures that the workflows use the latest version of the 'actions/setup-dotnet' action, potentially including new features, performance improvements, and bug fixes. Additionally, updates the publish test results action to v2 with improved configuration for file paths and reporting. This change improves the reliability and presentation of test results.
Unit Test Results10 tests 10 ✅ 0s ⏱️ Results for commit c692590. ♻️ This comment has been updated with latest results. |
Migrates from `dorny/test-reporter` to `EnricoMi/publish-unit-test-result-action` for improved test result publishing. This change provides more comprehensive test result reporting features and configuration options, including better support for different test result formats and improved integration with GitHub checks.
Updates the code formatting check in the CI pipeline to use `--verify-no-changes` instead of `--dry-run`. This ensures that the check fails if there are any formatting issues, providing a more reliable indication of code formatting correctness.
Updates the CI workflow to provide more helpful feedback regarding code formatting issues. Instead of auto-fixing formatting, it now reports the issues and provides instructions on how to fix them locally. Also makes the CI fail if formatting issues are present.
🔧 Code Formatting Issues FoundThis PR has code formatting issues that need to be fixed. To fix locally, run: dotnet format src/Ormico.DbPatchManager.slnThis will automatically format your code according to the project's EditorConfig settings. |
Configures the CI pipeline to automatically fix code formatting issues using `dotnet format`. If formatting changes are detected, the pipeline commits the fixes directly to the PR branch and creates a comment to notify the user. This ensures consistent code style and reduces manual formatting effort.
Modifies the pull request build workflow to allow pushing auto-formatting fixes directly to the pull request branch. This change configures the checkout action to use the GITHUB_TOKEN and specify the head ref, and updates the git push command to push to the correct branch.
🔧 Code Formatting Auto-FixedThis PR had code formatting issues that have been automatically fixed and committed. The following files were updated:
The changes have been pushed to this PR branch. Please pull the latest changes if you're working locally: git pull origin feature/new-cicd |
Prevents accidental committing of in-progress documentation and session notes.
add fail and success notifications
Adds comprehensive CI/CD workflows using GitHub Actions for building, testing, releasing, and deploying .NET applications. Includes setup scripts for configuring the repository and managing versions.