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
- Creation of systemd timers (pull request #4645).
- Display Time Information for systemd Timer Jobs. (pull request #4503)
Work left to be done on the project
- 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.
- An option to set-up systemd timers for already existing services.
- Deletion of timers.
- Modification of timers.
Bugs or issues known
- It is difficult to schedule end of the month days for services. (https://github.com/systemd/systemd/issues/3861)
- Test failures (during boot timer restarts, due to timeouts, PolicyKit daemon disconnected from the bus on CentOS).
- Getting started with GSoC 2016 with Cockpit.
- GSoC Week 2 : Displays all loaded timers and calculates its next run time.
- GSoC week 3: Creation of timer playground app.
- GSoC week 4: Timer Playground App.
- GSoC week 5: Timer App Design Changes.
- GSoC Week 6: Timer Design Changes.
- GSoC week 7-8 : Different dates issue during testing.
- GSoC week 9: Integration test cases.
- GSoC : Creating timers in Cockpit.
- Wiki page about systemd-timers on Cockpit. (https://github.com/cockpit-project/cockpit/wiki/Feature:-Systemd-timers)
- Display Time Information for systemd Timer Jobs. (https://www.youtube.com/watch?v=2mGAlpZWQUQ)
Commits and Issues
- RFE: Allow creating persistent units via D-Bus.
- RFE: Support for scheduling end of the month days on timers.
- RFE: Crontab management.