[
https://issues.apache.org/jira/browse/COMDEV-495?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tim Bossenmaier updated COMDEV-495:
-----------------------------------
Labels: StreamPipes gsoc gsoc2022 gsoc2023 mentor part-time streampipes
(was: gsoc gsoc2022 gsoc2023 mentor part-time streampipes)
> Code Insights for Apache StreamPipes
> ------------------------------------
>
> Key: COMDEV-495
> URL: https://issues.apache.org/jira/browse/COMDEV-495
> Project: Community Development
> Issue Type: Improvement
> Components: GSoC/Mentoring ideas
> Reporter: Tim Bossenmaier
> Priority: Major
> Labels: StreamPipes, gsoc, gsoc2022, gsoc2023, mentor,
> part-time, streampipes
>
> h3. *Apache StreamPipes*
> Apache StreamPipes (incubating) is a self-service (Industrial) IoT toolbox to
> enable non-technical users to connect, analyze and explore IoT data streams.
> StreamPipes offers several modules including StreamPipes Connect to easily
> connect data from industrial IoT sources, the Pipeline Editor to quickly
> create processing pipelines and several visualization modules for live and
> historic data exploration. Under the hood, StreamPipes utilizes an
> event-driven microservice paradigm of standalone, so-called analytics
> microservices making the system easy to extend for individual needs.
> h3. *Background*
> StreamPipes has grown significantly throughout recent years. We were able to
> introduce a lot of new features and attracted both users and contributors.
> Putting the cherry on the cake, we were graduated as an Apache top level
> project in December 2022. We will of course continue developing new features
> and never rest to make StreamPipes even more amazing. Although, since we are
> approaching with full stream towards our `1.0` release, we want to project
> also to get more mature. Therefore, we want to address one of our Achilles'
> heels: our test coverage.
> Don't worry, this issue is not about implementing myriads of tests for our
> code base. As a first step, we would like to make the status quo transparent.
> That means we want to measure our code coverage consistently across the whole
> codebase (Backend, UI, Python library) and report the coverage to
> [codecov|https://about.codecov.io]. Furthermore, to benchmark ourselves and
> motivate us to provide tests with every contributing, we would like to lock
> the current test coverage as an lower threshold that we always want to
> achieve (meaning in case we drop CI builds fail etc). With time we then can
> increase the required coverage lever step to step.
> More than monitoring our test coverage, we also want to invest in better and
> more clean code. Therefore, we would like to adopt
> [sonarcloud|https://www.sonarsource.com/products/sonarcloud/] for our
> repository.
> h3. *Tasks*
> - [ ] calculate test coverage for all main parts of the repo
> - [ ] send coverage to codeCov
> - [ ] determine coverage threshold and let CI fail if below
> - [ ] include sonarcloud in CI setup
> - [ ] include automatic coverage report in PR validation (see an example
> [here|https://github.com/pydantic/pydantic/pull/648#issuecomment-509855300] )
> -> optional
> - [ ] include automatic sonarcloud report in PR validation -> optional
> - [ ] what ever comes in your mind š” further ideas are always welcome
> Ā
> h3. *āImportant Noteā*
> Do not create any account in behalf of Apache StreamPipes in Sonarcloud or in
> CodeCov or using the name of Apache StreamPipes for any account creation.
> Your mentor will take care of it.
> Ā
> h3. *Relevant Skills*
> - basic knowledge about GitHub worfklows
> h3.*Learning Material*
> - [GitHub workflow docs|https://docs.github.com/en/actions/using-workflows]
> - [Apache StreamPipes
> workflows|https://github.com/apache/streampipes/tree/dev/.github/workflows]
> - [Sonarcloud for
> Monorepos|https://docs.sonarcloud.io/advanced-setup/monorepo-support/]
> - Using code cov for a monorepo:
> [https://www.curtiscode.dev/post/tools/codecov-monorepo/] &
> [https://docs.codecov.com/docs/flags]
> Ā
> h3. *Name and Contact Information*
> Name: Tim Bossenmaier
> email: Ā bossenti[at]apache.org
> community: dev[at]apache.org
> website: [https://streampipes.apache.org/]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]