-
Notifications
You must be signed in to change notification settings - Fork 1
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
Introduce repo configuration with pull request #153
Comments
So imo this ticket should be moved to probably This is definitely something we're gonna have to learn how to tackle if we move over to GitHub issues as we do not have a monorepo where everything lives and we can just throw things in there. |
@nicholas-codecov makes sense, I'll move it over there. As the issue creator, there is a "transfer issue" action that sends it to another repo. Though it requires write access to do so; I'll make the request and transfer it over there. In terms of feedback about the issue and implementation investigation; should we also rope in Scott? Or were you going to comment on that separately? |
I don't have much knowledge on the API side of things, so I would recommend @scott-codecov, @adrian-codecov, or @RulaKhaled, they should be able to help out with the estimation and implementation on the API side of things. Frontend wise, this is a fairly simple exercise as we're just making a mutation request on an event, then have the API return the URL for the pull request then direct the user to that location once the API response is successful. |
Moved this to platform as 95% of the work will be done there. |
Just throwing this out there cause it doesn't exactly match the design that we have on the ticket. I discussed this both with @dana-yaish and @adrian-codecov , and we kinda come to the agreement that (1) it's hard to produce a useful workflow file, but we think it can be done AND (2) producing a codecov.yml is very nice and useful. We kinda envisioned a part of the UI where you have forms or buttons or toggles or things of the nature that you can edit and see a real-time template example of what your PR comment will look like with those settings, for example. Also things like flags and components and what not. |
Allow me to express my opinions on this question
TL;DR Long version
Depends on the level of accuracy you want the end result to have. That is, assuming no mods on the part of the user, how useful do you want the proposed PR to be? There's a lot of complexity that goes into modifying CI files automatically, for example:
So we should probably take on this effort incrementally. Some example stages:
So... we start with GitHub Actions and CircleCI I assume? |
@giovanni-guidini Thank you for the write up!
I am comfortable with less than 100% accuracy, my hunch is that most sane engineers aren't going to just blindly push merge on something without at least giving it a glance first. In this case I would strive to not let perfect be the enemy of good enough. I'm not sure I fully understand the template piece - are you able to give me a little more info there? |
A template is some generic configuration that we could use as the changes to propose. name: Build-Test-Coverage
on:
pull_request:
jobs:
build-test-coverage:
runs-on: ubuntu-latest
steps:
# Checkout code
- uses: actions/checkout@v3
# Install Python
- uses: actions/setup-python@v2
with:
python-version: '3.10.10'
# EDITME - build project
- name: Build project
run: pip install -r requirements.txt
# EDITME - ruin tests and generate coverage reports
- name: Test with coverage
run: python -m pytest --cov=./
# Upload coverage reports to codecov
- name: Upload to codecov
run: |
pip install codecov-cli
codecovcli upload-process --flag unit --token=${{ secrets.CODECOV_TOKEN }} --fail-on-error |
[Applications] Deprioritized for Q3 |
Problem to solve
Today, when a developer configures a repository with Codecov, the process begins on the Codecov app. However, this experience often requires users to navigate between the app, documentation, their CI provider, and their repository provider, resulting in a fragmented workflow. During user testing, we noticed that users can become overwhelmed by extensive blocks of text and may even anticipate a simpler "on switch" solution. The challenge lies in the fact that relying solely on written documentation and multiple steps is not conducive to a fast and efficient setup process.
Solution
Offer users a smoother "learn-by-doing" configuration experience, where we provide a lower-friction setup process with an intuitive "on switch" approach.
Open questions
Prototype:
Screen.Recording.2023-09-07.at.5.37.47.AM.mov
Tasks
The text was updated successfully, but these errors were encountered: