Skip to content

Commit

Permalink
Create exercise1.md
Browse files Browse the repository at this point in the history
  • Loading branch information
rr-tri committed Dec 9, 2023
1 parent 6d09ccf commit 657f74e
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions exercise1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# `Exercise 1`

`In a hypothetical scenario where a team of six is actively developing an application, let's consider a language like Python for the project.`

## CI Steps in Python Ecosystem:

1. Linting: For Python, flake8 and pylint are commonly used tools for code linting. These tools help maintain code quality by checking for style issues, errors, and potential bugs.
2.Testing: pytest and unittest are popular testing frameworks in Python. They allow developers to write and execute tests to ensure the application's functionality.
2. Building: Python projects might use tools like setuptools or poetry to manage dependencies and package the application for distribution.

## Alternatives to Jenkins and GitHub Actions:

1. Travis CI: A cloud-based CI/CD service supporting various languages and offering ease of integration with GitHub repositories.
2. CircleCI: Another cloud-based CI/CD platform providing flexibility in configuring pipelines and supporting Python projects among others.
3. GitLab CI/CD: Integrated within GitLab, offering self-hosted and cloud-based options, enabling CI/CD pipelines for Python projects.

## Self-hosted vs. Cloud-based CI Environment:

1. Decision Factors: Considerations such as team expertise, infrastructure costs, scalability needs, and maintenance efforts.
2. Self-hosted: Offers greater control over the CI environment, suitable for specialized requirements or strict security policies.
3. Cloud-based: Provides ease of setup, scalability, and maintenance handled by the service provider, suitable for teams focusing on rapid development and deployment.

`To decide between self-hosted or cloud-based CI, gather information on the team's expertise in managing infrastructure, budget constraints, security needs, and scalability requirements.
A self-hosted setup might be beneficial for stringent security needs or specialized configurations, while a cloud-based environment might suit teams focusing on agility and cost-effectiveness.`

0 comments on commit 657f74e

Please sign in to comment.