Skip to content

Latest commit

 

History

History
64 lines (48 loc) · 3.77 KB

REQUIREMENTS.md

File metadata and controls

64 lines (48 loc) · 3.77 KB

Requirements

Glossary

  • A Host is a machine, virtual or not, accessible from the server that is going to host Docker containers.
  • The Server is the machine hosting Docker Commander
  • A Container is a Docker container that is being host in a Host.
  • A Commander is a User of the application. Has Hosts associated.## MoSCoW Requirements

Host Requirements

  • As the Commander, I Must know if a Host is down or not so I'll know as fast as possible that one or more containers could be down

    • Acceptance criteria:
      • A registered host is turned off. It appears like down in the dashboard
      • A registered host is on. It appears like online in the dashboard
      • A registered Host that appears like online is turned off. The app shows down after the refreshing period has passed
      • A registered Host that appears like down is turned on. The app shows online after the refreshing period has passed.
  • As the Commander, I Must know the Images a Host is hosting so I have some insight of the host load

    • Acceptance criteria:
      • A Host without Images appears like empty.
      • A Host with 2 Images appears correctly.
      • In a Host with 2 Images we add one more. 3 Images must appear after refreshing period has passed
      • In a Host with 3 Imags we delte one. 2 Images must appear after refreshing period has passed.
  • As the Commander, I Should know the latency I'm getting against a Host so I can detect potential connectivity problems

    • Acceptance criteria:
      • In each refreshing period cycle, a latency for each Host must appear in ms must appear in the dashboard.
    • A Host is turned off. Latency must show timeout.
  • As the Commander, I Must know the running Containers in a Host so I have full knowledge of the Host's Containers

    • Acceptance criteria:
      • No Containers are running. A Container is run. It appears after refreshing period has passed
      • A Container is running. The Container is killed. It dissapears from the dashboard after the refreshing period has passed.
  • As the Commander, I Should know all exposed ports in a Host

    • Acceptance criteria:
      • A Host has no exposed ports. No ports appears on the Container description.
      • A Host has a Container running with one exposed port. The mapping appears in the dashboard.
      • A Host has a Container with 2 exposed ports. Both mapping appears in Container description.

Containers Requirements

  • As the Commander, I Must know the full status and details of a container

    • Acceptance criteria:
      • A More info query is done against a Container. The result must show as much info as possible TODO.
  • As the Commander, I Must know if a selected Image is actually running

    • Acceptance criteria:
      • An Image installed in Docker is "selected". The Image has an associated Container running. The dashboard must show the associated Container.
      • An Image installed in Docker is "selected". The Image does not have an associated Container running. The dashboard must show no associated Containers.
  • As the Commander, I Should know the exposed ports of a Container and their associated mapping ports in Host so I know that available ports in Host

    • Acceptance criteria:
      • A Container that is running has no exposed ports. The result in dashboard shows no ports.
      • A Container that is running has one exposed port. The result in dashboard shows one mapped port and their associated ports in Host.
      • A Container that is running has 3 exposed ports. The result in dashboard shows 3 mapped ports and their associated ports in Host.

Commander Requirements

TODO