People

Agenda

  • Discuss and decide goals for this iteration.

Notes

  • This iteration is about moving ick towards being hostable. The current roadmap for that is reproduced below, and is on the roadmap page as well.

  • There are currently to major aspects that need work: isolating users from each other, and having a friendly web user interface.

  • For isolation, we will make each "resource" in the ick API be owned by a user, and for that we will need to change API use to rely on access tokens that identify the user. This means moving form the OAuth2 client credential authentication to OpenID Connect, extended with "API tokens".

  • For the web user interface, Ivan and Daniel have agreed to collaborate. Lars will stay out of it, since he's not a front-end developer. The current plan is to use React, and to build the static JS files in a container, using npm, and deploying the generated files to a server.

Roadmap for hostable ick

Roadmap for this iteration

Tasks for this week

Tasks may be part of a project or be random small ones (max an hour) that just need doing.

what Who estimate(h)
Draft spec for API tokens in Qvisqve Lars 1
Draft spec for variable expansion in .ick files Lars 1
Set up a server to host ick web UI Lars 1
Prepare React App framework repository and populate with Hello World app Ivan 4
Verify independent ability to build and run webapp Daniel 2
Total Lars 3
Total Daniel 2
Total Ivan 4

Task descriptions

  • Draft spec for API tokens in Qvisqve: Draft a specification for how API tokens would work in Qvisqve, and how they would be used by icktool. Offer draft for review.

    Acceptance criteria: At least one person says +1 and nobody has serious objections.

  • Draft spec for variable expansion in .ick files: To let users reduce repetition in .ick files, and to shorten them, it would be nice to be able to use variables. Draft a specification for how that would work, with examples. Probably based on the Mustache specification.

    Acceptance criteria: At least one person says +1 and nobody has serious objections.

  • Set up a server to host ick web UI: Set up a VM, domain name, and TLS certificate to serve the static files generated from the ick web UI. Later on, this will also host the ick UI facade application (which will be necessary to do logins securely). The demo ick workers, and Daniel, and Ivan, should have ssh logins and passwordless sudo access on the host.

    Acceptance criteria: Daniel and Ivan accept the server setup and confirm they can log in and become root with sudo.

  • Prepare React App framework repository and populate with Hello World app: The application should say "hello, world" (or some similar greeting), and use the React machinery to do so: npm to install dependencies, whatever the React build command is chosen to do the build.

    Acceptance criteria: Ivan says OK.

  • Verify independent ability to build and run webapp: Review the work by Ivan to make sure the application can be built and run by someone else than Ivan. This is a necessary step to automate build and deployment.

    Acceptance criteria: Daniel says OK.