GSoC 2016: Final Submission

Hello everyone, this is a report on the work done as part of Google Summer of Code 2016. I sincerely thank everyone in Cockpit community, including my mentors Dominik Perpeet and Peter Volpe of Red Hat.

Proposed features as part of GSoC 2016

1. A working systemd timer interface to schedule unit services in Cockpit web interface.
2. Addition and modification of the timer properties to create, modify and schedule tasks.
3. Implement a timer interface as described in https://trello.com/c/1B2lZViZ/74-timers-and-cron.

Work completed during GSoC 2016

  1. Creation of systemd timers (pull request #4645).
  2. Display Time Information for systemd Timer Jobs. (pull request #4503)

Work left to be done on the project

  1. Once systemd implements creation of persistent units via systemd D-BUS , it will be easier to create timers and services in Cockpit via D-BUS.
  2. An option to set-up systemd timers for already existing services.
  3. Deletion of timers.
  4. Modification of timers.

Bugs or issues known

  1. It is difficult to schedule end of the month days for services. (https://github.com/systemd/systemd/issues/3861)
  2. Test failures (during boot timer restarts, due to timeouts, PolicyKit daemon disconnected from the bus on CentOS).

Blog Posts

  1. Getting started with GSoC 2016 with Cockpit.
  2. GSoC Week 2 : Displays all loaded timers and calculates its next run time.
  3. GSoC week 3: Creation of timer playground app.
  4. GSoC week 4: Timer Playground App.
  5. GSoC week 5: Timer App Design Changes.
  6. GSoC Week 6: Timer Design Changes.
  7. GSoC week 7-8 : Different dates issue during testing.
  8. GSoC week 9: Integration test cases.
  9. GSoC : Creating timers in Cockpit.

Further Information

  1. Wiki page about systemd-timers on Cockpit. (https://github.com/cockpit-project/cockpit/wiki/Feature:-Systemd-timers)
  2. Display Time Information for systemd Timer Jobs. (https://www.youtube.com/watch?v=2mGAlpZWQUQ)
  3. http://cockpit-project.org/blog/cockpit-0.113.html

Mock-up

Commits and Issues

Screenshots