Skip to content

v0.2.3

Choose a tag to compare

@github-actions github-actions released this 26 Sep 09:26
· 2 commits to main since this release
201724d

Fixed

  • The appliance workflow had never run, and died four hundredths of a second
    in.
    mkdir: cannot create directory '/mnt/appliance': Permission denied —
    on a GitHub runner /mnt belongs to root, and that is where the disk space
    is (~70 GB against ~14 on /). No local build could show it, since the
    directory exists and is writable on a developer's machine. A dedicated step
    now creates it with sudo and hands it to the runner.

  • The image is published on every release, not only on minor ones. The old
    rule saved bandwidth and cost more than it saved: the documentation announced
    an appliance the latest release did not carry, and the reader had to work out
    which earlier release did. "The latest release carries the image" is the only
    sentence that needs no caveat, and nothing accumulates since the retention
    step keeps the last two sets. The two workflows now start from the same tag,
    so the upload waits for the Release to exist instead of assuming it — and
    says which workflow to look at if it never does.

Changed

  • The documentation is a path now, not a pile of pages. Read end to end
    against the code, it had breaks that no single page could reveal:

    learner.md promised run right after cloning a catalog, while 66 of the
    Linux catalog's 86 labs
    are vm labs: that run exits 2, the provision
    it suggests exits 1 for want of an SSH key, and neither instructor bootstrap, nor start, nor the word Terraform appeared anywhere on the
    page. It now names what a vm lab asks of a machine, and puts start first
    — the command that plays the whole order and announces each step with the
    command that replays it alone.

    catalog-author.md listed a lab's files without saying what goes in them.
    The scale that validate-structure enforces (### … (20 pts) against a
    N tasks, M points header, and one point per test), the format of
    hints.yaml, and where conftest.py lives — pytest runs from the catalog
    root — were documented nowhere.

    The README reached neither the index nor exit-codes.md,
    machine-output.md and infra-only.md: three reference pages unreachable
    from the front door.

    The SSH key was described as something a catalog ships. It is not: published
    catalogs ignore the whole ssh/ directory, and provision refuses to start
    without the private half. It is generated per clone, by instructor bootstrap, learners included.

    contract-v1.md contradicted itself nine lines apart on whether
    repo.category is required.

  • docs/appliance.md is a step-by-step, from installing VirtualBox to the
    first lab, with the digest check, the memory to give the machine depending on
    the host's, what the first boot looks like in three acts, and a
    troubleshooting table. Both READMEs open on the two ways in, each with its
    own four-step path.

Added

  • Credit where it is due: the appliance is @cedric-ribier's idea, and it
    exists because he had already built one end to end and documented it in
    #91. The one shipped here
    is directly inspired by his.