Conversation
|
@mboersma, @helgi and @kmala are potential reviewers of this pull request based on my analysis of |
|
Why a new model? |
|
The reason behind the new model is that I'd be interested in eventually adding more TLS-specific settings in the future like cipher suites, TLS protocols, enabling/disabling the session cache, session timeout, using session tickets, and the buffer size. Instead of trying to wedge all this logic into one generic "app settings" model, I decided to break it out into a single class so all TLS-related logic can be logically separated inside the controller. Would you prefer to not split out this logic and just use the existing AppSettings model? I'm just concerned about adding more boilerplate to the AppSettings model, then in the future we decide to break it out because we don't want to do some TLS-specific business logic that doesn't exactly fit into the AppSettings model. |
aa3ac2d to
56fac88
Compare
|
I was mostly wondering the reasoning since the same can be said about health checks, registry and bunch more - they are no longer Do you see this somehow tracking releases? rollbacks, etc involved? |
I strongly disagree with embedding a For example, this function in the Config object is a "data migration" from the "v1" healthcheck to the "v2" healthcheck which we must now maintain. If we had gone with well-defined model implementations in the first place, we could've handled this migration much cleanly through a SQL data migration. Future changes to the Config code base will require limits migrations, tags migration, or more healthcheck data migrations which cannot be handled by Another example where JSON objects become hard to manage/maintain can be seen in the scheduler.
If you're referring to a "release summary" for the model to inform users what changed in the TLS object, I could see that being part of the TLS's The problem with tying this object to releases means that it's now part of the release process for an application. Since this stands alone to just modify the router annotations, I don't believe we should attach it to the release process unless we intend to consider it part of the application configuration. |
|
I see, earlier in your comments you didn't seem so opposed to put this data elsewhere so I wanted to double check. I'm working on the autoscale stuff right now and put it into AppSettings, using All in all, I'm fine with doing a new model but I want it to be very well understood what that means for us. And especially how that will connect up into releases / rollbacks. I don't really care about the Maybe we are back in the territory of having multiple diff Models connected to the As far as the data migrations. We haven't used south since Django |
4f9f034 to
4e0dcaf
Compare
Current coverage is 86.68% (diff: 96.05%)@@ master #1004 diff @@
==========================================
Files 28 29 +1
Lines 3244 3282 +38
Methods 0 0
Messages 0 0
Branches 552 555 +3
==========================================
+ Hits 2809 2845 +36
- Misses 287 288 +1
- Partials 148 149 +1
|
4e0dcaf to
f77ab12
Compare
|
Migration needs to be renamed and based off the master since #1010 got merged in |
f77ab12 to
a2a3684
Compare
|
done |
|
|
||
| dependencies = [ | ||
| migrations.swappable_dependency(settings.AUTH_USER_MODEL), | ||
| ('api', '0013_auto_20160816_2122'), |
There was a problem hiding this comment.
Doesn't this also need to depend on 0014? Suppose the migration system could be smart enough to resolve things
There was a problem hiding this comment.
fixed immediately after I pushed
a2a3684 to
7204711
Compare
closes #579