← The board

B6 Controlling a stack on another machine

Area
B — Running it
Audience
operator
Kind
feature
Status
accepted
Maturity
shipped
Shipped in
0.15.0
Labels
cli, network
Relates to
B2C6G1

The feature in the specification · Read at

Requirements

  1. B6-R1acceptedMUST

    The web UI MUST bind to loopback by default.

    locked by
    0.15.0 met
    recorded done
    lemonfibercrates/lemonfiber/src/ui/reach.rscrates/lemonfiber/src/ui.rscrates/lemonfiber-api/src/admission/sessions.rs
    cited by
    lemonfiber@ca2bb6639flemonfiber@ecd8ed52b2
  2. B6-R2acceptedMUST

    LAN binding MUST be an explicit opt-in and MUST be refused unless authentication is configured.

    locked by
    0.15.0 met
    recorded done
    lemonfibercrates/lemonfiber/src/ui/reach.rscrates/lemonfiber/src/ui.rscrates/lemonfiber-api/src/admission/sessions.rs
    cited by
    lemonfiber@ca2bb6639flemonfiber@ecd8ed52b2
  3. B6-R3acceptedMUST

    Removing authentication while LAN-bound MUST immediately revert to loopback binding.

    locked by
    0.15.0 met
    recorded done
    lemonfibercrates/lemonfiber/src/ui/reach.rscrates/lemonfiber/src/ui.rscrates/lemonfiber-api/src/admission/sessions.rs
    cited by
    lemonfiber@ca2bb6639flemonfiber@ecd8ed52b2
  4. B6-R4acceptedMUST

    lemonfiber MUST honour DOCKER_HOST and named Docker contexts.

    locked by
    0.15.0 met
    recorded done
    lemonfibercrates/lemonfiber-ports/src/docker/target.rscrates/lemonfiber-adapters/src/docker/context.rscrates/lemonfiber/src/context.rscrates/lemonfiber-core/src/stack/compose.rscrates/lemonfiber-core/src/model/envelope.rscrates/lemonfiber/src/render/host.rs
    cited by
    lemonfiber@2e3e492ec0lemonfiber@ecd8ed52b2
  5. B6-R5acceptedMUST

    With a remote context active, lemonfiber MUST verify stack files exist on the remote host before executing any lifecycle operation.

    locked by
    0.15.0 met
    recorded done
    lemonfibercrates/lemonfiber-adapters/src/docker/presence.rscrates/lemonfiber-ports/src/docker/locations.rscrates/lemonfiber-ports/src/seams.rscrates/lemonfiber-core/src/app/engine/remote.rscrates/lemonfiber-core/tests/integration/one_host_answers_for_both.rscrates/lemonfiber-adapters/tests/integration/engine.rs
    cited by
    lemonfiber@8c00ab78d4lemonfiber@2e3e492ec0lemonfiber@ecd8ed52b2
  6. B6-R6acceptedMUST

    With a remote context active, every command's output MUST name the host being operated on.

    locked by
    0.15.0 met
    recorded done
    lemonfibercrates/lemonfiber-ports/src/docker/target.rscrates/lemonfiber-adapters/src/docker/context.rscrates/lemonfiber/src/context.rscrates/lemonfiber-core/src/stack/compose.rscrates/lemonfiber-core/src/model/envelope.rscrates/lemonfiber/src/render/host.rs
    cited by
    lemonfiber@2e3e492ec0lemonfiber@ecd8ed52b2
  7. B6-R7acceptedMUST

    Name-resolution failure, connection refusal and SSH authentication failure MUST be reported distinctly.

    locked by
    0.15.0 met
    recorded done
    lemonfibercrates/lemonfiber-ports/src/docker/target.rscrates/lemonfiber-adapters/src/docker/context.rscrates/lemonfiber/src/context.rscrates/lemonfiber-core/src/stack/compose.rscrates/lemonfiber-core/src/model/envelope.rscrates/lemonfiber/src/render/host.rs
    cited by
    lemonfiber@2e3e492ec0lemonfiber@ecd8ed52b2
  8. B6-R8acceptedMUST

    Concurrent lifecycle operations from multiple clients MUST be serialised.

    locked by
    0.15.0 met
    recorded done
    lemonfibercrates/lemonfiber-core/src/app/engine/lock.rscrates/lemonfiber-api/src/jobs.rscrates/lemonfiber-core/tests/integration/lock.rs
    cited by
    lemonfiber@f30886371flemonfiber@396e997791lemonfiber@2a92c2554alemonfiber@8a0dacf1f4lemonfiber@ecd8ed52b2
  9. B6-R9acceptedMUST

    When serving over unencrypted HTTP, lemonfiber MUST state that the connection is not encrypted.

    locked by
    0.15.0 met
    recorded done
    lemonfibercrates/lemonfiber/src/ui/reach.rscrates/lemonfiber/src/ui.rscrates/lemonfiber-api/src/admission/sessions.rs
    cited by
    lemonfiber@ca2bb6639flemonfiber@ecd8ed52b2
  10. B6-R10acceptedMUST

    lemonfiber MUST NOT orchestrate services across more than one host.

    locked by
    0.15.0 met
    recorded done
    lemonfibercrates/lemonfiber-core/tests/integration/one_stack_one_host.rscrates/lemonfiber-api/tests/integration/nothing_is_carried_through.rscrates/lemonfiber-core/src/app/ctx.rscrates/lemonfiber-core/src/stack/compose.rs
    cited by
    lemonfiber@ca2bb6639flemonfiber@ecd8ed52b2
  11. B6-R11acceptedMUST

    Docker API version mismatch MUST be detected at connection and MUST report both versions.

    locked by
    0.15.0 met
    recorded done
    lemonfibercrates/lemonfiber-ports/src/docker/target.rscrates/lemonfiber-adapters/src/docker/context.rscrates/lemonfiber/src/context.rscrates/lemonfiber-core/src/stack/compose.rscrates/lemonfiber-core/src/model/envelope.rscrates/lemonfiber/src/render/host.rs
    cited by
    lemonfiber@2e3e492ec0lemonfiber@ecd8ed52b2
  12. B6-R12acceptedMUST

    Client disconnection MUST NOT abort a server-side operation already in progress.

    locked by
    0.15.0 met
    recorded done
    lemonfibercrates/lemonfiber-api/src/jobs.rs
    cited by
    lemonfiber@ca2bb6639flemonfiber@ecd8ed52b2