-
Notifications
You must be signed in to change notification settings - Fork 351
Delivery Service Active Flag Rework #7099
Conversation
|
Tested the API tests locally, all work (v3/v4/v5) fine. Yet to test DS, DSRs creation with API v5 curl cmds. |
849116f to
2352966
Compare
traffic_ops/traffic_ops_golang/deliveryservice/deliveryservices.go
Outdated
Show resolved
Hide resolved
traffic_ops/testing/api/v5/deliveryservice_request_comments_test.go
Outdated
Show resolved
Hide resolved
traffic_ops/traffic_ops_golang/deliveryservice/servers/servers.go
Outdated
Show resolved
Hide resolved
traffic_ops/app/db/migrations/2022092107561215_ds_explicit_mso.down.sql
Outdated
Show resolved
Hide resolved
2352966 to
b8fb196
Compare
|
This PR depends on #7156 |
c113a2e to
0b1e494
Compare
0b1e494 to
6614b4a
Compare
|
I need to change the migration file names because new migrations have been added since this PR opened. I'm in a meeting atm, I'll do it this afternoon. |
6614b4a to
55b250d
Compare
|
Tested and reviewed the following:
|
|
It looks like I accidentally removed
I think maybe I should clarify. You should be able to create a DS and DSR with any extra fields specified that you want. You could set Also, the legacy structures for DSes use the That said, it looks like DSRs are always showing APIv5 representations in responses to POST requests on this branch - which doesn't fail tests because I guess the APIv3 client doesn't decode/return the
That issue doesn't really exist. I think when I checked for it on master I forgot to generate SSL Keys for the delivery service first. I'll close that.
This endpoint existed in API versions 1 and 2, which existed when that blueprint was written but no longer do. So it's fine to be unreachable, since it would've been before anyway. |
|
Today, if I give So, why is the same strategy not followed for 4.0 and 5.0 in this PR? |
55b250d to
2a79963
Compare
traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.down.sql
Outdated
Show resolved
Hide resolved
traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.up.sql
Outdated
Show resolved
Hide resolved
rimashah25
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few minor comments but overall the PR LGTM from functionality and integration tests perspective.
f89443c to
4881bf2
Compare
(because I forgot them the first time)
5ae2ee1 to
a9c7e9d
Compare
a9c7e9d to
8d7a14a
Compare
zrhoffman
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good.
In accordance with the blueprint from #4654, this changes the
activeproperty of Delivery Services from a simple boolean to a three state system, where the three states are:truetoday.falsetoday.Additionally, because I was making a new DS model already anyway since that's a breaking change, I made some things that are never allowed to be null or undefined into non-reference values (e.g. XMLID is a
stringnot a*stringetc.) and madelastUpdatedformat in RFC3339 in JSON responses.The new model now totally drops
LongDesc1andLongDesc2, which were deprecated in the now-itself-deprecated APIv3 and unavailable for direct use in APIv4 - as an interesting consequence of this and how DSRs are stored internally, it is no longer possible to make a DSR that will set a DS'slongDesc1and/orlongDesc2to anything butnulleven using APIv3. They are shown asnullin responses, but are otherwise totally ignored by Traffic Ops. DSlongDesc1andlongDesc2fields can still be manipulated directly and viewed as normal in APIv3.I also made some changes to the testing utilities, because they weren't registering themselves as helpers so it was difficult to find actual failures.
Fixes #3746
This PR includes documentation, TO changes, and database migrations, but does not actually make the new state work in
t3c, nor does it update Traffic Portal with the ability to deal with it. These efforts are left to a later date.Which Traffic Control components are affected by this PR?
What is the best way to verify this PR?
I've updated the tests, and really there's only one new DS permutation, which has a test case added, so there's not really a whole lot more to do than just run the tests. You can replicate them by using APIv5 to manipulate DSes and DSRs if you like, just make sure everything looks okay.
If this is a bugfix, which Traffic Control versions contained the bug?
PR submission checklist