File: TODO

package info (click to toggle)
boxer 1.3.0-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 1,172 kB
  • sloc: perl: 1,335; sh: 25; makefile: 6
file content (83 lines) | stat: -rw-r--r-- 3,674 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
  * Only optionally (not by default) include tweaks.
  * Include README on whether it is a Debian Blend or Debian Pure Blend.
  * Isolate package auto-install flagging only relevant for upgrades.
  * Fail (or optionally warn) if both installing and avoiding a package.
  * Handle bugs as parameters, and extend data documentation.
  * Resolve default suite from system, favored over hardcoded string.
  * Resolve named suites (e.g. stretch) from relative (e.g. testing).
  * Use warnings::warnif instead of carp (and croak?). Or Throwable?
  * Use IPC::PrettyPipe
  * Introduce compose option --nodepath (and maybe deprecate --nodedir)
    + nodepath is colon-separated lookup list for node
    + dirs without *.yml files are silently skipped
    + dirs with subdirs are skipped with warning that it is unsupported
      - Avoids confusing error if reclass is fed non-node YAML data.
    + default nodepath is environment variable BOXER_NODE_PATH
    + BOXER_NODE_PATH internal default is .:${XDG datadir + suite/nodes}
  * Resolve skeleton template variables in Boxer::File::WithSkeleton
    (not in Boxer::Task::Serialize).
  * Introduce compose option --style with default "preseed,script",
    and warn if omitted that the option will become mandatory
    + Deprecate compose formats preseed script.
    + Deprecate skeleton template variable tweaklist.
  * Introduce compose style bootstrap
    + Include skeleton files for debootstrap, multistrap, and mmdebstrap.

Initial release:

  * Reimplement commands and classes from current make-based boxer:
    + install
    + Bootstrap::Multistrap
    + Install::Device

Later releases...

  * Use Object::Remote
    + Add subclass to use Rex::Inline
    + Add subclass to use debootstrap/cdebootstrap/multistrap
  * Limit coercion and type checks
    <http://blogs.perl.org/users/joel_berger/2013/05/typetiny-rescues-moo.html#comment-1104703>
  * Implement additional commands and classes to create a system:
    + bless
    + Bootstrap::Debootstrap
    + Bootstrap::Live-build
    + Bless::Extlinux
  * Implement commands and classes to interact with an existing system:
    + refresh
    + detect
    + distill
  * Implement commands and classes to interact with config classes:
    + list
    + enable
    + disable
  * Implement commands and classes to echange config classes:
    + push
    + pull
    + publish
  * Implement trojan" functionality for install and bless classes, to
    embed as trigger unfolding at first boot in target environment.
  * Implement alternate CLI shim tools which mimic conventional tools,
    to bring boxer flexibility to existing unmodified scripts.
  * Implement web export and/or service usable with debian-installer for
    static/live boxer-driven "Hands-off" <http://www.hands.com/d-i/>.
  * Implement commands and classes to interact with bug trackers:
    + triage
  * Implement PXE target - i.e. DHCP+TFTP services serving preseed file.
    + <https://wiki.fogproject.org/wiki/index.php?title=IPXE>.
    + <https://wiki.fogproject.org/wiki/index.php?title=FOG_on_a_MAC>
  * Improve testsuite
    + Test implicit --skeldir (by setting ENV variable instead)


misc.

  * Borrow boilerplate patterns from https://metacpan.org/pod/Sympatic
  * Maybe implement warning field.
    Examples:
    + Reference <https://lists.debian.org/debian-boot/2018/05/msg00250.html>
      when including package unattended-upgrades.
    + Tweaking conffiles
      (known to fail later upgrade: See bug#311188).
  * Use MooX::StrictConstructor.
  * Track unit testing code coverage:
    <https://stackoverflow.com/questions/533553/perl-build-unit-testing-code-coverage-a-complete-working-example>