File: TODO

package info (click to toggle)
piuparts 0.45
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 1,052 kB
  • sloc: python: 4,780; sh: 1,269; makefile: 99
file content (172 lines) | stat: -rw-r--r-- 6,207 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
ahings to do for piuparts
=========================

Please also check the BTS, especially the bugs with a severity
higher than wishlist!


for 0.46:

- sanitize directory structure:
  org/piuparts.debian.org/etc/scripts* ==> custom-scripts/
  org/piuparts.debian.org/htdocs/templates/mail/* ==> bug-templates/
  org/piuparts.debian.org/htdocs/* ==> htdocs/
  org/piuparts.debian.org/etc/piuparts.conf.* ==> ???

- simplify update-piuparts-setup,
  use the Makefile,
  don't install files in user homes, just put a single bin link if needed

- make piuparts-master + piuparts-slave packages work out-of-the-box

- ship sane minimal sudoers in p-s.deb than can be enabled by default
  do we really need anything else than running piuparts as root?

- verify that all scripts in $user/bin/ also work from master-slave packages
  eventually enable some conjobs in the packages

- slave.postinst should setup ~piupartss/.ssh/known_hosts from /etc/ssh,
  even if only for localhost
- slave.postinst should setup ~piupartsm/.ssh/authorized_keys using triggers
    dpkg-trigger piuparts-master-please-install-the-slave-key

- split /etc/piuparts/piuparts.conf in /etc/piuparts/master.conf and
  /etc/piuparts/slave.conf?! or use /etc/default/slave to define sections?

- conf/piuparts.sudoers should be split for master+slave packages.

- merge/cleanup README_piatti.txt and README_server.txt?

- use cdn.debian.net as mirror default (instead of "your.mirror.here") and provide
  a debconf template to overwrite this.

- rework known_problems:
  - use a number prefix for sorting
  - add title information
  - piuparts-report: "discover" the available known_problems, dont hardcode the list
  - drop _issue/_error duplication, have flags inside to indicate thether to generate
    _issues.tpl (pass/) and/or _error.tpl (fail/ bugged/ affected/)

- in maintainer view: sort buggy states up again

- more stats and graphs:
  - packages processed per day (in total and per slave)
  - # of open bugs with tag piuparts
  - generate http://piuparts.debian.org/stable/states.png + testing.png
    from existing data

- piuparts-report.py: fix another FIXME in main()

- sometimes a chroot doesn't get removed on piatti - find out
  why and fix it.
- slave_run: cleanup stale proc mountpoints
  -> there is ~piupartss/bin/slave_cleanup now, maybe it should be executed
  at the beginning of slave_run?

- consider hardlinking instead of copying the logfiles to htdocs
  (and fall back to copying if linking fails)

- piuparts-slave should do the rescheduling of old logs and do so with
  lowest precedence, that is, only when there are no new logs to be tested.

- write reportbug(-like) wrapper for mass bug filing (start
  simple, make it more sophisticated later).

- generate piuparts.1.txt automatically from piuparts.py - see
  this blog post for a nice howto:
  http://andialbrecht.wordpress.com/2009/03/17/creating-a-man-page-with-distutils-and-optparse/

- remove the git repository piatti.git.

- rewrite piuparts-analyze to run over all sections and cache BTS responses

- "decorate" (strike-through) bug links generated by piuparts-analyze
  to indicate resolved state (take package version into account!)

- re-read all documentation carefully


for 0.47:

- accect a PIUPARTS_CONF environment variable everywhere to point to a different piuparts.conf
- read PIUPARTS_CONF or piuparts.conf everywhere to allow overriding builtin defaults
- have all paths etc. configurable in piuparts.conf for simple reconfiguration

- find_default_debian_mirrors: if parts[2] contains a / (think
  stable/updates for security.d.o), you can't ignore this, it
  will break later...

- support for extra-packages-url (for backports, security, etc)

- make it possible to call aptitude (or similar) instead of
  apt-get and allow to override the commandline arguments of the
  used program (to be able to test with and without recommended
  packages or authentication).

- piuparts-slave: timestamps to log messages

- the templates used by update-reports.py should be taken from
  /etc/piuparts/templates/ and not be included in the python
  source


for 0.48 and later:

- mounting /proc and perhaps others (usbfs, sysfs, /dev/pts,
  etc.) in the chroot might be a good idea because some packages
  might need this.

- report:
  - write stats about the reasons for failures, as its done with
    shell scripts now (piuparts-analyze.py is an existing
    "fragment".)
  - RSS feeds of logs
  - do more fancy R graphs, eg. also per state
  - sort packages on maintainer pages alphabetically (states first
    though)
  - link (and target) to piuparts.d.o configuration is static to
    piatti. should refer to the actual hosts configuration, eg
    goldwassers

- a redirect of http://piuparts.d.o/foo to
  http://p.d.o/source/f/foo.html would be nice

- monitor: master.log grows to fast and there is no mechanism to stop it
  - use logrotate


for 0.50 and later:

- really support multiple architectures:
  - piuparts-report should have a list of available arch and list
    packages only available on untested archs in a new state
    "(depends-)not-available-on-tested-archs"
  - master should (per default) only schedule packages which are
    not available on the master arch to slaves of different archs
  -> "schedule-evenly-to-slaves = no"

- piuparts-master: keep track of to whom a reservation was given

- piuparts can't currently test upgrades of required packages.
  (Because they cannot be removed, it assumes these are
  untestable, which is only true for removal tests...

- not sure if it's a sensible thing to to, but provide a way to
  turn off debugging output for piuparts.py - see
  http://docs.python.org/library/logging.html

- commandline-switches for all programms

- move shell cronjobs functionality into master, slave & report


1.0 should really have automated testing of piuparts itself...
-----------------------------------------------------------------

- create archive of broken packages to provide test cases for
  piuparts testing.

- create emacspeak-broken-dpkg-preconfigure package for broken
  repo. (then later put more broken packages in there and use
  that for testing piuparts)