flock2016
LOGS
09:06:38 <nardasev> #startmeeting <Getting new things into Fedora>
09:06:38 <zodbot> Meeting started Tue Aug  2 09:06:38 2016 UTC.  The chair is nardasev. Information about MeetBot at http://wiki.debian.org/MeetBot.
09:06:38 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic.
09:06:38 <zodbot> The meeting name has been set to '<getting_new_things_into_fedora>'
09:06:50 <nardasev> #meetingname flock2016
09:06:50 <zodbot> The meeting name has been set to 'flock2016'
09:07:10 <nardasev> getting something new into Fedora
09:07:18 <nardasev> what is 'something'?
09:07:35 <nardasev> NOT an RPM or a Spin
09:08:08 <nardasev> could be nodejs, rubygem, maven repo, new format for installer image, new container format
09:08:15 <nardasev> if I have a new thing:
09:08:28 <nardasev> talk to release engineering EARLY!
09:08:46 <nardasev> work in the open and engage others for feedback
09:08:58 <nardasev> do not rely on others to do work for you
09:09:30 <nardasev> people have a tendency to create their own wonderful thing
09:09:39 <nardasev> and then others are like, oh...
09:09:48 <nardasev> so you need to keep things open
09:10:59 <nardasev> today it is a bit tricky to do all the pieces of releasing on your own
09:11:06 <nardasev> but we want to make it easier
09:11:43 <nardasev> we make fedora using a set of tools and processes
09:11:53 <nardasev> we build and ship fedora as a unit
09:12:08 <nardasev> PDC is a single source of data about composes and releases
09:12:48 <nardasev> we are looking at automation currently
09:13:05 <nardasev> the 2-week Atomic compose is just a subset of all the pieces in Fedora
09:13:16 <nardasev> PDC is new in Fedora 24
09:13:33 <nardasev> PDC says what is in a compose in a release
09:13:42 <nardasev> you need to be able to reproduce
09:14:09 <nardasev> the build/compose environment needs to be reproducable
09:14:21 <nardasev> reasons for reproducibility:
09:14:32 <nardasev> we know what we went into, how it was made
09:15:03 <nardasev> and that enables us to have security certifications
09:15:18 <nardasev> so it helps the security team
09:15:34 <nardasev> it lets us say definitively what is shipped, when and how
09:15:57 <nardasev> it also enables accountability
09:16:11 <nardasev> the package maintainer is accountable for what went into it
09:16:44 <nardasev> if somebody does something wrong, we can easily go and get that
09:16:59 <nardasev> that applies especially for all new things in Fedora
09:17:20 <nardasev> next:
09:17:34 <nardasev> what we ship needs to be definable
09:17:47 <nardasev> we can't reproduce what we don't know
09:17:58 <nardasev> it lets us understand the pieces
09:18:14 <nardasev> FESCo, QA and releng know it is being done
09:18:33 <nardasev> if QA don't know what they need to test.. how can we ensure what we ship?
09:18:48 <nardasev> FESCo as the technical arbitrator needs to know what is being done
09:19:21 <nardasev> we hope that Fedora name has a certain quality attached to it
09:19:31 <nardasev> which is what we want to keep and improve
09:20:02 <nardasev> we want people to trust Fedora
09:20:06 <nardasev> next:
09:20:13 <nardasev> it needs to be deliverable
09:20:32 <nardasev> official parts of Fedora are eligible to be delivered to locations in /pub
09:21:14 <nardasev> Infrastructure and releng manage 1) mirror manager to distribute requests to hosts; 2) there is no CDN for deliverable
09:21:42 <nardasev> we have this mirror network which is getting more powerful and able to deliver more stuff
09:22:05 <nardasev> two years ago, we were just under 1 TB
09:22:23 <nardasev> now we are at 1.4 - 1.5 TB
09:22:39 <nardasev> ostree doesn't know how to use mirror
09:24:24 <nardasev> we need to have some mirror integration
09:25:30 <nardasev> Q: if I have a cool new thing, do I need to use mirrors or can I use best effort in Atomic?
09:25:51 <nardasev> A: we don't need to use mirrors from day 1, but we need to have a plan
09:26:20 <nardasev> how we deliver stuff really depends on what it is
09:26:28 <nardasev> live CD doesn't need mirror managers
09:26:38 <nardasev> because the users manually get it
09:27:09 <nardasev> but when you deal with tooling, you want to have multiple mirrors in case one of them fails
09:27:16 <nardasev> in the case of modules coming up
09:27:29 <nardasev> we have to figure out how mirroring is going to work
09:27:49 <nardasev> people are still focused on building the module itself
09:28:02 <nardasev> Fedora doesn't have the budget for CDN
09:28:29 <nardasev> we have a CDN that has been donated to us, but we heard that if you send too much traffic to them, they will reject and kick you out
09:28:44 <nardasev> so we can only use it in small scales
09:29:04 <nardasev> as much as the technology how you build and ship it is important, dealing with people is a critical step
09:29:07 <nardasev> SUMMARY:
09:29:14 <nardasev> talk, communicate, and work with us
09:29:21 <nardasev> be open and transparent
09:30:59 <nardasev> the main reason that made me submit this talk:
09:31:50 <nardasev> even if you have a great and successful project, it still needs to be integrated in the process of how we compose Fedora as a whole
09:32:14 <nardasev> if you start solving this at the beginning, it gets much harder later
09:32:20 <nardasev> which happened with Atomic
09:32:46 <nardasev> correction: if you DON'T start solving this at the beginning...
09:33:29 <nardasev> showing a graph of evolution of packages in fedora releases
09:33:52 <nardasev> fedora 7 had around 5000 RPM packages
09:34:04 <nardasev> it's been growing of course
09:35:27 <nardasev> i think modularity will help keep metadata smaller
09:37:21 <nardasev> release engineering has historically been under-resourced
09:37:35 <nardasev> people keep saying "we're going to work with you and talk to you"
09:37:50 <nardasev> question time.
09:38:55 <nardasev> having a native ruby gem repo is easier for a developer to deliver his code
09:39:50 <nardasev> having repos for different versions of Python, etc
09:40:27 <nardasev> if you have several versions of Fedora using a certain version of Python, you can install the particular repo in all the fedoras
09:40:56 <nardasev> there are only speculations
09:42:09 <nardasev> a new trademark will be made for a new repository
09:42:17 <nardasev> it's a new way for people to build things
09:42:43 <nardasev> build ostree is enabled from components in Fedora itself, but it's not an official Fedora delivery
09:43:03 <nardasev> a presentation about how NOT to deliver things into Fedora would be helpful
09:43:17 <nardasev> the delivery process is hard to grasp
09:43:35 <nardasev> and even harder for someone outside of the Fedora infrastructure
09:44:27 <nardasev> it is just as hard to add a new functionality into Koji
09:47:21 <nardasev> we use a containerized environment
09:48:32 <nardasev> we're struggling to keep up with everything
09:49:00 <nardasev> Q: how often do you talk to upstream developers of DNF and RPM?
09:49:18 <nardasev> A: dnf- not as often as we should, RPM much more often
09:49:46 <nardasev> but there is not enough ongoing communication
09:50:15 <nardasev> Q: how about features that would make your lives easier, are you trying to prioritize them?
09:50:20 <nardasev> A: it could be better :)
09:50:54 <nardasev> #endmeeting