Skip to content

Conversation

@pstackebrandt
Copy link
Owner

many changes, i stopped implementation, because I decided to simplify the implementation.
I want to check in all changes, even if they contain bugs.
I want to fix them later during the simplification.

…Insights integration

- Created a GitHub Actions workflow for building and deploying the ASP.NET Core application to Azure.
- Added Application Insights for monitoring and diagnostics.
- Introduced appsettings.Production.json for production configuration.
- Updated Program.cs to include Application Insights telemetry and health checks.
- Added comprehensive documentation for Docker and Azure deployment processes.
- Included a pre-publishing checklist to ensure readiness for deployment.
Refactor: Replace PowerShell scripts with Git Bash equivalents

- Deleted outdated PowerShell command generation rules for Git.
- Added new Git Bash scripting guidelines to streamline shell usage.
- Introduced PowerShell scripting guidelines for better integration.
- Created shell choice guidelines to clarify when to use PowerShell vs. Git Bash.
- Added Markdown guidelines and a publishing checklist for improved documentation.
- Implemented a Markdown linting pre-commit hook in Bash for consistent formatting.
…ct structure, and deployment

- Created markdown-guidelines.mdc and mdc-guidelines.md for effective Markdown file creation.
- Added project-structure.md to outline the folder organization of the Clarus Mens project.
- Introduced application-insights.md and docker-azure-deployment.md for Azure integration and deployment processes.
- Developed publishing-checklist.md and prepublishing-checklist.md to ensure readiness before deployment.
- Added shell-usage-guidelines.md to clarify the use of PowerShell and Git Bash in development.
- Implemented testing-guide.md for API testing using REST Client in VS Code.
- Established template-usage.md to guide users in creating new projects based on the ClarusMens template.
- Deleted markdown-guidelines.mdc and PROJECT_STRUCTURE.md as they were redundant.
- Updated README.md to provide a clearer overview of the documentation structure.
- Added new documentation files for configuration management, deployment processes, and troubleshooting.
- Introduced guidelines for using MDC files and PowerShell execution policies.
- Established a comprehensive pre-publishing and publishing checklist for deployment readiness.
- Improved shell usage guidelines to clarify the use of PowerShell and Git Bash.
- Added troubleshooting guide for common development issues.
- Improved formatting in troubleshooting.md for better readability.
- Split long lines in troubleshooting.md to adhere to line length standards.
- Added fix-markdown.ps1 script to automate markdown formatting corrections.
- Introduced fix-multiple-blanks.ps1 script to handle consecutive blank lines in markdown files.
…x duplicate health check issue

- Added a Table of Contents to README.md for better navigation.
- Improved clarity in the About section of README.md.
- Introduced Docker-based testing instructions in README.md.
- Created new documentation files for Docker build configuration and health check issues.
- Resolved duplicate health check endpoint registration in Program.cs to prevent runtime errors.
- Added guidelines for suppressing the web server during tests to improve resource efficiency.
- Updated tests/README.md to include Docker-based testing strategies.
- Added a note in README.md to run tests from the root directory.
- Updated markdown-guidelines.mdc to include line length recommendations.
- Refactored tasks in tasks.json to point to the new scripts directory.
- Enhanced prepublishing and publishing checklists with Table of Contents for better navigation.
- Moved Update-Version.ps1 script for managing version updates in Directory.Build.props.
- Adjusted paths in tests to reflect the new script location.
- Changed reference in README.md to the new API request file.
- Named api-manual-endpoint-requests.http with testing various API endpoints.
- Added a checkbox for configuring Application Insights in Program.cs.
- Marked API endpoint verification as completed in the checklist.
- Revised README.md to better reflect the purpose and scope of the project.
- Enhanced documentation in docs/README.md to clarify project goals.
- Updated architecture documentation to emphasize best practices for .NET API development.
- Improved MVP specification to focus on deployment and testing aspects.
- Added Table of Contents to various documentation files for better navigation.
- Updated titles and focus of checklists to reflect training/template API project.
- Streamlined sections for clarity and added essential steps for deployment.
- Enhanced documentation with specific tasks for Docker setup and local testing.
- Improved organization of content and added checkboxes for better tracking.
- Updated prerequisites and verification steps for deployment readiness.
- Introduced docker-compose.yml for managing API services in development, staging, and production.
- Enhanced Dockerfile to optimize build layers and implement a health check script.
- Created ApiConfiguration class for environment-specific configuration and secrets management.
- Updated Program.cs to integrate configuration setup and validation.
- Added new documentation files for API versioning strategy and documentation standards.
- Revised prepublishing checklist to include configuration management and security measures.
- Removed outdated documentation standards file and streamlined existing guidelines.
- Added Azure Training Guide for recommended Microsoft training resources.
- Updated README.md to include a link to the new Azure Training Guide.
- Renamed Docker Azure Deployment documentation for clarity.
- Enhanced existing Azure deployment documentation with account setup details.
- Improved organization of deployment documentation for better navigation.
- Introduced a new bash script to create a service principal
  and assign it the acrpull role for a specified Azure Container
  Registry.
- Added parameter validation and usage instructions for the script.
- Implemented checks for Azure CLI login and Container Registry existence.
- Improved error handling for role assignment process.
- Updated comments for clarity and guidance on script usage.
@pstackebrandt pstackebrandt self-assigned this Mar 30, 2025
@pstackebrandt pstackebrandt linked an issue Mar 30, 2025 that may be closed by this pull request
12 tasks
Comment on lines +12 to +44
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Login to Azure Container Registry
uses: docker/login-action@v3
with:
registry: ${{ secrets.REGISTRY_URL }}
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_PASSWORD }}

- name: Build and push Docker image
uses: docker/build-push-action@v5
with:
context: .
push: true
tags: ${{ secrets.REGISTRY_URL }}/clarusmens-api:${{ github.sha }}

- name: Login to Azure
uses: azure/login@v2
with:
creds: ${{ secrets.AZURE_CREDENTIALS }}

- name: Deploy to Azure App Service
uses: azure/webapps-deploy@v3
with:
app-name: "clarusmens-api"
images: ${{ secrets.REGISTRY_URL }}/clarusmens-api:${{ github.sha }}

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions Job or Workflow does not set permissions
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.

Prepare deployment

2 participants