People

Agenda

  • Discuss and decide goals for this iteration.

Notes

  • This iteration is about advancing the ick web UI that Ivan is working on: we want to add a facade, which runs between the frontend (Javascript in the browser) and the backend (controller and other ick components with and API). The facade is necessary for authentication security.

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)
Update arch doc about OIDC authentication Lars 2
Review updated arch doc Daniel 1 (timebox)
Give Ivan access to ickui server Lars 0
Write trivial facade for ickui Ivan 1
Create ick pipeline to deploy ickui facade Ivan 2
Total Lars 2
Total Daniel 1
Total Ivan 3

Task descriptions

  • Update arch doc about OIDC authentication: The architecture document currently claims only OAuth2 authetication is used. Update it to explain how OpenID Connect if used to authenticate end-users, and why a separate facade is needed.

    Acceptance criteria: Daniel says OK.

  • Review updated arch doc: Review changes to the ərchitecture document and either say they're OK, or provide feedback on what needs improvement. Repeat with Lars until OK.

    Acceptance criteria: Daniel says OK.

  • Give Ivan access to ickui server: Ivan will need to deploy the ickui facade on the ickui server. For this, he needs to log in and have root access. Make it so.

    Acceptance criteria: Ivan confirms he can do ssh ivan@ick-ui.vm.liw.fi sudo id and have it report the root user. No password is needed.

  • Write trivial facade for ickui: Write a facade that provides a trivial /version endpoint, which reports the facade's version, without requiring a login.

    Acceptance criteria: Facade /version can be tested manually with curl. The output includes the git commit, if the facade is running from a git clone.

  • Create ick pipeline to deploy ickui facade: Set up a project on the demo ick instance, which deploys the ickui facade on the ickui server, on an empty freshly installed one, or upgrading an existing server.

    This can be done by cloning the facade git repo to a suitable location on the server. Additionally, any systemd units, haproxy, etc, need to be set up, and any missing dependencies installed, by the ick project.

    Acceptance criteria: When the facade git repo is updated, the ick CD project is triggered, and after it's done, the running facade reports a new version. This works even if the ickui server has been deleted and a new one created.