diff --git a/docs/ci_workflow.md b/docs/ci_workflow.md index 9cbaf90..0e55e27 100644 --- a/docs/ci_workflow.md +++ b/docs/ci_workflow.md @@ -1,29 +1,43 @@ -# Continuous Integration (CI) Workflow +# Continuous Integration (CI) Workflow ๐Ÿš€ -Our repository is equipped with a Continuous Integration (CI) workflow that runs automatically whenever changes are pushed to the codebase. By leveraging Forgejo and GitHub Actions, we ensure that every update is thoroughly validated, resulting in a reliable and error-free image being delivered to the Forgejo registry. +Our repository includes a **Continuous Integration (CI) workflow** that runs automatically whenever changes are pushed to the codebase. By leveraging Forgejo and GitHub Actions, we ensure that every update is thoroughly validated, resulting in a reliable and error-free image being delivered to the Forgejo registry. --- ## How It Works -### Automatic Trigger on Code Changes +1. **Automatic Trigger on Code Changes** + Each time you push a new commit or open a pull request, a CI workflow is initiated. You can monitor these runs by navigating to the Actions tab within your GitHub project. -Each time you push a new commit or open a pull request, a CI workflow is initiated. You can monitor these runs by navigating to the Actions tab within your GitHub project. +2. **Workflow Steps** -### Workflow Steps + The CI pipeline consists of several predefined steps designed to ensure quality and security before publishing the final image: -The CI pipeline consists of several predefined steps designed to ensure quality and security before publishing the final image: + - **๐Ÿ“ฅ Checkout:** + Retrieves the latest version of the repository to ensure the workflow is working with the most recent code. -- **Checkout:** Retrieves the latest version of the repository to ensure the workflow is working with the most recent code. -- **Linting (using xxx):** Analyzes the code for potential issues, formatting errors, or stylistic inconsistencies. -- **Docker Login:** Authenticates with your Docker registry so that the newly built image can be pushed securely. -- **Build Application & Image:** Constructs the application and packages it into a Docker image. -- **Vulnerability Scanning (using xxx):** Scans the final image for known security vulnerabilities, ensuring any issues are identified and addressed early on. -- **Push Image to Registry:** Uploads the successfully built image to the Forgejo registry, making it available for deployment. + - **๐Ÿ“ Linting (using xxx):** + Analyzes the code for potential issues, formatting errors, or stylistic inconsistencies. + + - **๐Ÿ”‘ Docker Login:** + Authenticates with your Docker registry so that the newly built image can be pushed securely. + + - **๐Ÿ”ง Build Application & Image:** + Constructs the application and packages it into a Docker image. + + - **๐Ÿ›ก๏ธ Vulnerability Scanning (using xxx):** + Scans the final image for known security vulnerabilities, ensuring any issues are identified and addressed early on. + + - **โฌ†๏ธ Push Image to Registry:** + Uploads the successfully built image to the Forgejo registry, making it available for deployment. ### Monitoring Workflow Progress and Logs -Once the workflow starts, you can view its current status and duration on the Actions page. Each step in the workflow displays both its individual runtime and the total workflow duration. To diagnose issues or understand the CI process in more detail, simply click on an action to access its logs. These logs provide valuable insight into the workflowโ€™s operations, including any errors, warnings, or test results encountered during the run. +Once the workflow starts, you can visit the **Actions** page to: + +- view the current status and total runtime of the entire workflow +- check individual action runtimes and results +- access detailed logs by clicking on each action (provides insights into what happened in each action, making debugging and auditing easier) ---