Skip to content
This repository has been archived by the owner on May 16, 2024. It is now read-only.

Script to generate badge control board #48

Closed
wants to merge 4 commits into from

Conversation

bwrsandman
Copy link
Contributor

Proposal for a script which will display in markdown the travis and coverage status of all branches in OCA.

TODO:

  • argparse to remove hardcoded org_name, username and ignore
  • each project in table should link to repo
  • display unusual branch names
  • don't display repos which have all their branches ignored
  • add a requirements.txt
  • add a README.md

The aim is to put the output in a readme of this project to display the following:

Good branch names

./generate_control_board.py -u bwrsandman -O OCA -x gh-pages 4.2 5.0 6.0

OCA repo quality control board

repo 6.1 7.0 8.0 master
OCB Build StatusCoverage Status Build StatusCoverage Status
account-analytic Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
account-budgeting Build StatusCoverage Status Build StatusCoverage Status
account-closing Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
account-consolidation Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
account-financial-reporting Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
account-financial-tools Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
account-fiscal-rule Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
account-invoice-reporting Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
account-invoicing Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
account-payment Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
bank-statement-reconcile Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
banking Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
carrier-delivery Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
commission Build StatusCoverage Status Build StatusCoverage Status
community-data-files Build StatusCoverage Status Build StatusCoverage Status
connector Build StatusCoverage Status Build StatusCoverage Status
connector-accountedge Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
connector-cmis Build StatusCoverage Status
connector-ecommerce Build StatusCoverage Status Build StatusCoverage Status
connector-interfaces
connector-lims Build StatusCoverage Status
connector-magento Build StatusCoverage Status Build StatusCoverage Status
connector-prestashop Build StatusCoverage Status Build StatusCoverage Status
connector-redmine
connector-sage-50 Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
contract Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
contribute-md-template Build StatusCoverage Status
crm Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
department Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
e-commerce Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
edition-mgmt Build StatusCoverage Status
geospatial Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
hr Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
hr-timesheet Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
knowledge Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
l10n-argentina
l10n-belgium Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
l10n-canada Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
l10n-colombia
l10n-france Build StatusCoverage Status
l10n-italy Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
l10n-luxemburg Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
l10n-mexico
l10n-spain Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
l10n-switzerland Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
l10n-venezuela
maintainer-quality-tools Build StatusCoverage Status
maintainers-tools Build StatusCoverage Status
management-system Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
manufacture Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
manufacture-reporting Build StatusCoverage Status Build StatusCoverage Status
margin-analysis Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
mrp
multi-company Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
odoo-community.org
partner-contact Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
pos
product-attribute Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
product-kitting Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
product-variant Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
program Build StatusCoverage Status Build StatusCoverage Status
project-reporting Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
project-service Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
purchase-reporting Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
purchase-workflow Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
report-print-send Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
reporting-engine Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
rma Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
runbot-addons Build StatusCoverage Status
sale-financial Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
sale-reporting Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
sale-workflow Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
server-tools Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
stock-logistics-barcode Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
stock-logistics-reporting Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
stock-logistics-tracking Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
stock-logistics-warehouse Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
stock-logistics-workflow Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
vertical-construction Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
vertical-hotel Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
vertical-isp Build StatusCoverage Status Build StatusCoverage Status
vertical-medical Build StatusCoverage Status Build StatusCoverage Status
vertical-ngo Build StatusCoverage Status Build StatusCoverage Status
vertical-travel Build StatusCoverage Status Build StatusCoverage Status
web Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
webkit-tools Build StatusCoverage Status Build StatusCoverage Status Build StatusCoverage Status
website Build StatusCoverage Status

Odd branch names

./generate_control_board.py -u bwrsandman -O OCA -x gh-pages 4.2 5.0 6.0 6.1 7.0 8.0 master

OCA repo quality control board

repo 7.0-update-audit-translations r1 r2
maintainer-quality-tools Build StatusCoverage Status Build StatusCoverage Status
management-system Build StatusCoverage Status

@dreispt
Copy link
Member

dreispt commented Jul 25, 2014

Great idea!

Suggestions:

  • add a requirements.txt
  • show the board from 6.0 onward only

@dreispt
Copy link
Member

dreispt commented Jul 25, 2014

[ ] display unusual branch names

Not sure it that's worth the trouble. Better discuss why we need unusual branch names before implementing this.

@bwrsandman
Copy link
Contributor Author

  • display unusual branch names

Not sure it that's worth the trouble. Better discuss why we need unusual branch names before implementing this.

  • show the board from 6.0 onward only

I propose to count how many times a branch is used and if it is bellow a percentage, it is unusual. Hide the unususal branches or display them outside of the table in a section for them. That way we know that there are some branches that should not be there.

That way, only branches from 6.0 onward are shown. I might even move 6.0 to a table lower down the output. Master should get its own section, since we don't want addon repos to have a master, but we want meta repos such as this one to have one.

@bwrsandman
Copy link
Contributor Author

@dreispt

  • add a requirements.txt

I was wondering about this, would it be a good idea to also include a setup.py?

I will also add a readme

@dreispt
Copy link
Member

dreispt commented Jul 25, 2014

Maybe a setup.py would be an overkill. If you're adding a README, maybe a requirements.txt for a couple of dependencies is also a overkill: just give the installation instructions on the README.

@bwrsandman
Copy link
Contributor Author

Well, I like requirements.txt because you can do pip install -r requirements.txt :P

@dreispt
Copy link
Member

dreispt commented Jul 31, 2014

@bwrsandman can you label this as a WIP?

@gurneyalex
Copy link
Member

good idea.

@bwrsandman
Copy link
Contributor Author

I know this sounds like offloading my work, but if anyone wants to use this, I made a checklist for contributions.

I will eventually get to this, but I am in a bit of a rush at the moment.

@yvaucher yvaucher removed the 0052cc label Aug 14, 2014
@dreispt
Copy link
Member

dreispt commented Sep 17, 2014

@bwrsandman I see open Issues as something waiting for an action. Since the discussion has ended here, could we close this until someone has more to add on it?

@dreispt
Copy link
Member

dreispt commented Sep 26, 2014

Closing this for now, since no actions are required at the moment.

@dreispt dreispt closed this Sep 26, 2014
@bwrsandman bwrsandman reopened this Oct 16, 2014
@bwrsandman bwrsandman changed the title WIP - script to generate badge control board Script to generate badge control board Oct 16, 2014
@bwrsandman
Copy link
Contributor Author

Any suggestions what to put into the README.md?

@veloutin
Copy link
Member

@bwrsandman I think the contents of your initial comment describing what this does and its output would fill up a README quite nicely. It sums up what it does and how to use it.

@lepistone
Copy link
Member

That's a great initiative @bwrsandman (that I missed until you mentioned it this week). Great, thanks!

For the record, our sysadmin colleagues work on many puppet modules, and have a dashboard as well. Their use case is a bit different, because repositories are owned by the company, and the dashboard shows also private ones if they are visible with your github token.

The dashboard: http://puppet.camptocamp.net/modules

Code: https://github.com/camptocamp/github-repositories-dashboard

@dreispt
Copy link
Member

dreispt commented Jun 15, 2015

@bwrsandman Is this intended to be a helper script? Should it go in maintainer-tools instead?

@dreispt
Copy link
Member

dreispt commented Jul 3, 2015

Got an error when testing:

$ ./generate_control_board.py -u dreispt -O OCA -x gh-pages 4.2 5.0 6.0
Password:
Traceback (most recent call last):
  File "./generate_control_board.py", line 94, in <module>
    main()
  File "./generate_control_board.py", line 87, in main
    out = generate_badge_file(username, password, org_name, exclude)
  File "./generate_control_board.py", line 61, in generate_badge_file
    pbar.update(i)
  File "/usr/local/lib/python2.7/dist-packages/progressbar/__init__.py", line 276, in update
    if not self._need_update(): return
  File "/usr/local/lib/python2.7/dist-packages/progressbar/__init__.py", line 251, in _need_update
    if self.currval >= self.next_update or self.finished: return True
AttributeError: next_update

@bwrsandman
Copy link
Contributor Author

@dreispt what version of progressbar are you using?

@dreispt
Copy link
Member

dreispt commented Jul 3, 2015

progressbar (2.3)

Sandy Carter added 3 commits July 3, 2015 13:47
Example usage:
```bash
pip install -r requirements.txt
./generate_control_board.py -u bwrsandman -O OCA -o badges.md -x gh-pages
```
@bwrsandman
Copy link
Contributor Author

It works with progressbar 2.2, I am looking at 2.3 now. There was a big change between these versions.

@bwrsandman bwrsandman force-pushed the control-board branch 4 times, most recently from 665475f to 18ffdc9 Compare July 3, 2015 18:07
@bwrsandman
Copy link
Contributor Author

Move PR to OCA/maintainer-tools#71

@bwrsandman bwrsandman closed this Jul 3, 2015
em230418 pushed a commit to em230418/maintainer-quality-tools that referenced this pull request Mar 22, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants