All checksums have been double-checked against existing RMD160 and
SHA512 hashes
The following distfiles could not be fetched (possibly fetched
conditionally?):
./misc/libreoffice/distinfo libreoffice/harfbuzz-2.6.4.tar.xz
Changes from 2.8:
Support the new "gpufw" set.
Actually reduce the default test timeout to 1 hour as documented in
version 2.5 when anita is invoked as a program rather than as a
library.
Log a message to the structured log file on timeout so that the time
when the timeout occurred can be determined from the message timestamp.
Define a scratch disk for alpha (wd1c) so that ATF test results can
be exported to the host.
In addition to the plain-text ATF test report printed to the console
as the tests progress, also store a clean copy without other console
output in test.txt and export it to the host. Suggested by
Greg Troxel.
Fix failure to destroy the Xen DomU used by the installation stage
before trying to create the one for the boot stage when running
under Python 3.
Fix failure to log in after reboot when running "anita test" on a
self-resizing image without running a separate "anita install" first.
From Joerg Sonnenberger.
Support coypu's proposed sysinst entropy patch.
Remove extra newline in reponse to entropy prompt.
Changes from 2.7:
Preemeptively support sysinst requesting entropy as a single line.
Fix bug in 2.7 that caused the provision of entropy to the installer
to fail when running under Python 3.
Omit ",cdrom" when passing a CD-ROM device to a Xen PV domain because
doing so will cause NetBSD/Xen to ignore device since xenbus_probe.c
1.51.
Changes from 2.5:
Support upcoming sysinst changes to support interactive input of
entropy.
Add support for NetBSD/alpha targets.
The "interact" mode now supports interaction with the boot process,
except when the --run option is used.
Changes from 2.2:
Deal with curses sometimes optimizing away the final "s" in "Debug
symbols", causing the debug set to not be installed.
Increase default memory size for amd64 from 128M to 192M, as the
installer no longer runs reliably in 128M without exhausting memory.
Keep logging the console output for a few seconds after shutdown to
catch the autoconf detach messages and possible panics on detach.
When logging shell commands, avoid line breaks between options and
their arguments.
Support the "virt" machine type for evbarm-eamv7hf as an alternative
to the default of vexpress-a15. To enable, use the command line
option --machine virt.
pkglint -r --network --only "migrate"
As a side-effect of migrating the homepages, pkglint also fixed a few
indentations in unrelated lines. These and the new homepages have been
checked manually.
Changes from 2.1:
Clean up some b'' quoting that appeared around strings in the log
output under python3.
New command line option --image-format for selecting the guest disk
image format. Supported values are "dense" (the default) and
"sparse".
Reset the install timeout whenever a new set extraction or other
command is started by sysinst, and reduce the timeout to 1 hour.
This allows hangs in the install phase to be detected more quickly.
Reset the test timeout whenever a new test program is started by ATF,
and reduce the default timeout to 2 hours. If you are passing a
non-default test timeout with the --test-timeout option, it can also
be reduced. This allows hangs during test runs to be detected more
quickly.
Fix the sparc64 CD install which was broken in 2.1, by adding an
index=2 attribute to the virtual CD drive.
Make NetBSD-current/macppc boot by passing "-prom-env qemu_boot_hack=y"
to qemu-system-ppc. From Joerg Sonnenberger.
Changes from 2.0:
Add support for the newly added rescue set.
Deal with the sysinst changes of 2019-11-16.
Add support for macppc targets, based on a patch from Joerg
Sonnenberger.
Fix failure to install the sharesrc set due to curses optimization.
Changes from 1.49:
In the test suite, run the tests in parallel to reduce the run time.
Downloads can now be interrupted using SIGINT (control-C).
On NetBSD, invoke makefs using its absolute path /usr/sbin/makefs
as /usr/sbin may not be in PATH.
Add support for Python 3.
When using qemu from pkgsrc, log the exact pkgsrc version of qemu and
glib2, including any nb suffix.
Changes from 1.48:
Fix issue introduced in 1.48 that caused the Xen install kernel to be
used instead of the regular Xen kernel when booting the installed
system.
Changes from 1.47:
When sysinst offers a choice of partitioning schemes, anita now uses
the one listed first. Therefore, i386 and amd64 installs of versions
where sysinst offers GPT as the first choice will use GPT rather than
MBR as was previously the case.
Add support for NetBSD/hppa targets.
Support some upcoming sysinst UI changes.
The structured log file is now flushed after each line so that
it can be used to debug a hung installation without waiting for
it to time out first.
Move the automatic determination of the type of the URL argument
(e.g., distribution directory vs. installation ISO) into a new library
function anita.distribution() so that it can be used not only from the
command line but also by Python programs calling anita as a library.
When using a pre-installed image, "anita install" will now boot it to
let it resize itself, rather than postponing the resize to when the
image is later booted in another mode such as "anita test".
Changes from 1.45:
Add support for NetBSD/evbarm-aarch64 targets.
Add support for NetBSD/sparc64 targets, from Utkarsh Anand.
The run_tests() method now halts the VM, to ensure that the
scratch disk containing ATF test results is flushed by the
guest before being read by the host.
Changes from 1.44:
Support xz compressed distribution sets.
Support NetBSD/vax via simh. Installing and booting works;
running the ATF tests does not. From Utkarsh Anand.
Mark the NumberedVersion and Release classes as deprecated.
Remove the obsolete clases DailyBuild and LocalBuild.
Fix a bug that caused the guest OS to unnecessarily boot twice
when entering "interact" mode since version 1.43.
Don't send a spurious "x" at the end of installation.
Log the pexpect version.
Changes since 1.42:
Disable optimization avoiding copies when installing from a file: URL
or local path, as it broke installation of source sets.
Deal with pexpect 4.3.1 requiring delayafterclose and
delayafterterminate to be set in two different places
(https://github.com/pexpect/pexpect/issues/462).
Support installing on disks with a corrupt or out-of-date MBR.
Log the command line arguments on startup.
- 1.43 released -
Log interactive mode input and output to the structured log file.
Add support for NetBSD/hpcmips targets, from Utkarsh Anand.
VM console input is no longer logged to stdout, to keep it from
appearing twice when echoed by the VM.
Fix VM console output appearing twice in interact mode (again).
Add support for gxemul as a new VMM and NetBSD/pmax as a new guest.
From Utkarsh Anand.
Increase the default test timeout to 24 hours, as the tests now
take much longer to run than before due to a combination of
the addition of new tests and qemu performance regressions.
Added target support for NetBSD/evbarm-earmv7hf, from Utkarsh Anand.
This installs from a pre-built image rather than using sysinst.
When installing from a file: URL or local path, avoid creating
unnecessary copies of the release files. From Utkarsh Anand.
New command line option --tests for explicitly selecting the the Kyua
test framework instead of ATF, from Utkarsh Anand.
Update xen dependency in options.mk from 4.1 to 4.2
since 4.1 is no longer in pkgsrc.
Make the build not fail when PKGSRC_RUN_TEST=yes.
Upstream changes since 1.40:
If the VMM exits unexpectedly while running the ATF tests or some
other shell command, log the exit status and the signal that caused it
to exit (if any).
Log the qemu version used to stdout.
Fix reference to uninitialized variable when reporting a
timeout waiting for VM halt confirmation.
Increase default child timeout from 300 to 600 seconds
to support VMMs where power-up takes a long time.
Increase child.delayafterclose and child.delayafterterminate
to support VMMs where power-down takes a long time.
Run more network diagnostics after failed network installs.
Add timestamps to structured log output.
Work around a bug in the urllib library of Python 2.7.12 that causes
FTP transfers to fail with the error message "[Errno ftp error] 200
Type set to I"; see https://bugs.python.org/issue27973.
When halting the child results in an EOF, don't print the exception
since that may be confused with a failure.
Run vmstat -s at the end of the ATF tests to help diagnose issues
like excessive paging due to insufficient memory.
Increase the default of the --test-timeout option from 3 hours to 8
hours, since the sparc tests are now taking more than 5 hours.
Increase the default disk size to 1526M, as 1G is no longer enough
for amd64.
Pass format=raw in the qemu -drive option to suppress warnings in
recent qemu versions.
Changelog:
- 1.39 released -
Deal with incompatible change in the output format of the "info block"
command in qemu 2.5.0.
Fix bug where the exit status of the shell command specified with the
--run option was not propagated to the exit status of anita.
New public method start_boot, to facilitate writing test cases that
interact with the boot prompt.
The structured log file now also contains informational messages,
of the form info('message').
Problems found locating distfiles:
Package colorls: missing distfile ls.tar.gz
Package molden: missing distfile molden-4.6/molden4.6.tar.gz
Package softmaker-office-demo: missing distfile ofl06trial.tgz
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
Deal with the sysinst message changes of 2015-04-30.
When halting the VM, don't quit as soon as the text "halted" is seen,
because it may be part the message "halted by root", which is printed
before disks have been synced. Instead look for "The operating system
has halted", EOF, or a timeout.
The global test() function is no longer supported, use the run_tests()
method of the Anita object instead.
When halting the VM, do not attempt to log in if already logged in.
Make the distinctive shell prompts different from one invocation of
anita to another, so that anita can run itself recursively on the VM
without the outer instance mistaking a shell prompt from an inner
instance for one of its own.
The previous commit message accidentally contained the changes from
1.35 to 1.36 rather than those from 1.34 to 1.35. The changes from
1.34 to 1.35 were:
Support Linux host systems that have genisoimage but not mkisofs, such
as Debian 7.
New command line option --run-timeout.
When running a shell command, wrap the exit status in distictive text
so that it can be reliably matched in the presence of buffered output
containing other numeric strings.
Halt the VM when done.
Print the qemu command.
Do not require releases to contain install floppies, since amd64 no
longer has them.
The default value of the --boot-from option is now "cdrom" if the
install floppies are missing.
When reporting a failed download of optional files, be clearer that
this is not an error. Also, don't treat arbitrary exceptions during
downloads as indicating a missing file, only the expected IOError.
Increase the default disk size from 768M to 1G, as 768M is no
longer sufficient for amd64.
New command line option --structured-log-file. This is like
--structured-log but takes the name of a log file as an
argument, and the structured logging is in addition to, not
instead of, the traditional logging to stdout.
Increase installation timeout from 1 hour to 3 hours so that
a system built with DEBUG and LOCKDEBUG can be installed under
qemu without timing out.
Unconditionally print a greeting message including the version number
of startup, so that logs from automated anita runs will always
indicate the version used.
In --structured-log mode, log the string matched by expect() instead
of the return value, as the latter is always zero and therefore
conveys no useful information.
Support recent versions of sysinst (CVS date 2014.08.03.16.09.38 or
newer), where set selection happens after disk partitioning rather
than before.
Document qemu 2.0.0nb4 as a known working version.
New command line option --structured-log.