14:01:23 <slashme> #startmeeting freezer
14:01:24 <openstack> Meeting started Thu Oct 13 14:01:23 2016 UTC and is due to finish in 60 minutes.  The chair is slashme. Information about MeetBot at http://wiki.debian.org/MeetBot.
14:01:25 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote.
14:01:27 <openstack> The meeting name has been set to 'freezer'
14:01:38 <yangyapeng> hello slashme
14:01:54 <slashme> Hello everyone :)
14:02:00 <domhnallw> Hi :)
14:02:01 <slashme> Hi yangyapeng
14:02:09 <yangyapeng> :)
14:02:10 <raliev> hi all
14:02:25 <slashme> Let's wait a few minutes for people to join.
14:02:44 <zhusz> hi all
14:02:45 <slashme> As usual, the agenda is available here: https://etherpad.openstack.org/p/freezer_meetings
14:02:58 <slashme> And is also empry at the moment
14:03:03 <slashme> empty*
14:04:12 <yangyapeng> hello slashme about freezer-api use oslo.db , It will do.
14:05:22 <yangyapeng> slashme: freezer-scheduler have a problem .  https://github.com/openstack/freezer/blob/master/freezer/scheduler/freezer_scheduler.py#L70
14:06:03 <yangyapeng> we should apscheduler addd jobstores  store job scheduler time.
14:07:48 <raliev> slashme, yangyapeng what about plans to migrate freezer from ES to oslo.db(mysql)?
14:07:52 <yangyapeng> use sqlalchemy store job_scheduler instead of memory
14:08:53 <slashme> yangyapeng: This would not work. It would require direct connection between the freezer-scheduler and the mysql db.
14:09:30 <slashme> In many environment, this is not possible
14:09:52 <yangyapeng> slashme: oh, but i have a try, because first we should have a mysql, so oslo.db
14:10:48 <slashme> communication goes like :
14:10:48 <slashme> Freezer-scheduler <=> freezer-api <=> oslo.db <=> mysql
14:10:58 <yangyapeng> slashme: yeah
14:11:29 <slashme> Bare components should not talk directly to databases. This is the role of an API
14:13:13 <yangyapeng> . We should not take the scheduler next_time  store memory
14:13:53 <yangyapeng> when have a restore freezer-scheduler  jobs should have a autostart
14:13:59 <yangyapeng> restart
14:14:14 <slashme> This is already the case
14:14:24 <slashme> If you use just interval
14:14:38 <slashme> Then the scheduler executes the job when restarted
14:14:51 <slashme> and then stores the new next_time in memory.
14:14:59 <yangyapeng> slashme: yes
14:17:23 <yangyapeng> I remeber have a code  to migrate  oslo.db  by daemontool :) :)
14:18:30 <slashme> We are currently working on the schema for the database.
14:18:58 <yangyapeng> https://etherpad.openstack.org/p/freezer_mysql_migration ?
14:18:59 <slashme> After this is figured out, neilus will help us doing the development
14:20:06 <slashme> We can't use mysql as the jobstore for the scheduler. Because the scheduler does not have access to mysql
14:23:22 <yangyapeng> API
14:26:00 <yangyapeng> If there is no other topic to discuss
14:27:54 <zhusz> #topic Permission denied issue when create directory
14:28:55 <yangyapeng> zhusz: :) if have some patch
14:29:34 <szaher> what directory ?
14:30:08 <zhusz> /etc/freezer,/var/lib and so on
14:30:39 <zhusz> Because we use the freezer client under non-root
14:31:07 <yangyapeng> freezerclient ? or apiclient?
14:31:18 <zhusz> freezer client
14:31:24 <slashme> freezer-agent you mean ?
14:32:01 <zhusz> yes, freezer-scheduler also.
14:34:05 <yangyapeng> zhusz: can you submit a bug ?
14:34:20 <yangyapeng> or have a bug link
14:34:50 <zhusz> ok
14:35:11 <zhusz> Fixing lvm snapshot mountpoint, /var/lib/freezer rather than /var/lib
14:35:42 <zhusz> when create directory 'freezer' in the /var/lib, for non-root user, it will be fail.
14:37:10 <slashme> zhusz: this will fail anyway, you need to be root to take an lvm snapshot
14:40:16 <zhusz> The patch https://review.openstack.org/#/c/376411/, same issue, when create the directory 'conf.d' in the /etc/freezer/scheduler
14:40:47 <zhusz> The gate-freezer-devstack-dsvm test fails
14:41:30 <zhusz> In the test script, the non-root user is being used
14:42:08 <yangyapeng> jenkins fails because Permission denied:
14:42:35 <zhusz> Yes.
14:43:45 <zhusz> yapeng, Is there any solution for this fail?
14:44:56 <zhusz> Error while creating directory /etc/freezer/scheduler/conf.d: [Errno 13] Permission denied: '/etc/freezer/scheduler'
14:45:26 <szaher> zhusz: I think this directory shouldn't be created using freezer-scheduler itself !
14:45:48 <szaher> freezer-scheduler should complain if this directory doesn't exists or should be able to use temp directory
14:46:07 <szaher> this directory should be created using the devstack installation script
14:46:41 <szaher> devstack script should grant the right permission on that directory, at least everyone should be able to read from directory
14:46:47 <zhusz> szaher: yes
14:48:47 <zhusz> https://github.com/openstack/freezer/blob/master/freezer/scheduler/shell.py#L178
14:49:10 <zhusz> In the def do_job_download(client, args):
14:50:11 <zhusz> The freezer_utils.create_dir is being used to create directory in the /etc/freezer/scheduler. For non-root user, it will be fail also.
14:51:53 <slashme> Indeed.
14:53:45 <slashme> This one is less bad
14:53:56 <slashme> You can specify that directory:   --conf JOBS_DIR, -f JOBS_DIR
14:53:56 <slashme> Used to store/retrieve files on local storage,
14:53:56 <slashme> including those exchanged with the api service.Default
14:53:57 <slashme> value is /etc/freezer/scheduler/conf.d (Env:
14:53:57 <slashme> FREEZER_SCHEDULER_CONF_D)
14:55:57 <zhusz> slashme: OK.
14:57:39 <slashme> For the freezer-agent, if you plan on using LVM, you need to be root.
14:57:40 <slashme> If not, then you shouldn't need to be root.
14:58:07 <slashme> Do we have a bug ticket to work on that ?
14:58:45 <slashme> The meeting is almost over.
14:58:56 <zhusz> I'll submit a bug for this issue.
14:59:07 <slashme> thank you zhusz :)
14:59:24 <slashme> Here is a list of patch that are waiting for review :
14:59:24 <slashme> Pending Reviews:
14:59:25 <slashme> Support upper-constraints in tox.ini
14:59:25 <slashme> - https://review.openstack.org/#/c/384259
14:59:26 <slashme> - https://review.openstack.org/#/c/384260
14:59:27 <slashme> Using assertEqual instead of assertEquals
14:59:28 <slashme> - https://review.openstack.org/#/c/377693/
14:59:30 <slashme> Remove .pyo before test run
14:59:31 <slashme> - https://review.openstack.org/#/c/385291
14:59:32 <slashme> Remove default=None when set value in Config
14:59:33 <slashme> - https://review.openstack.org/#/c/377727
14:59:34 <slashme> - https://review.openstack.org/#/c/377721/
14:59:36 <slashme> Fixing LVM Snapshot mountpoint
14:59:51 <bswartz> rofl?
15:00:40 <bswartz> paste.openstack.org would be better for this ^
15:01:43 <slashme> - https://review.openstack.org/#/c/304742/
15:01:43 <slashme> Using assertIsNone() instead of assertEqual(None, ...)
15:01:44 <slashme> - https://review.openstack.org/#/c/378139/
15:01:45 <slashme> Updated from global requirements (python-freezerclient)
15:01:46 <slashme> - https://review.openstack.org/#/c/384476
15:01:48 <slashme> Refactoring Freezer Engines
15:01:49 <slashme> - https://review.openstack.org/#/c/381904/
15:01:50 <slashme> Use ConfigParser instead of SafeConfigParser in Python 3
15:01:51 <slashme> - https://review.openstack.org/#/c/375257/
15:01:52 <slashme> Fix docstrings in index.rst & README.rst
15:01:53 <slashme> Thank you all for joining today :)
15:01:54 <slashme> - https://review.openstack.org/#/c/379065/
15:01:55 <slashme> #endmeeting