)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"change_message_id":"650a91892719447281f75eac8e352aca37de71d3","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Tony Breeds \u003ctony@bakeyournoodle.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2023-12-14 14:51:20 +1100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"[docs] Add symlink when cycle.release-ids differns from cycle.series_name"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This is a \"flexible\" solution to make linking to specific cycle details"},{"line_number":10,"context_line":"less error prone."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"746bae18_a0d636fb","line":7,"range":{"start_line":7,"start_character":42,"end_line":7,"end_character":50},"updated":"2023-12-14 03:57:53.000000000","message":"*differs","commit_id":"6ad46dff5b9811ba6ecb2234cdd7ae9626a0e053"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"change_message_id":"06cd1b0f499e5a6a1edd3e8ce7d59c587761e6d4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"49819a76_089be75f","updated":"2023-12-14 06:01:52.000000000","message":"Looking at the tarball[1] the symlink is there and looks correct.  I suspect that either he fetch-output role doesn\u0027t handle symlinks; or the cloud storeage/swift doesn\u0027t ... could be both I guess.\n\n\n[1] https://storage.bhs.cloud.ovh.net/v1/AUTH_dcaab5e32b234d56b626f72581e3644c/zuul_opendev_logs_bbf/903635/1/check/openstack-tox-docs/bbf822a/docs-html.tar.gz","commit_id":"6ad46dff5b9811ba6ecb2234cdd7ae9626a0e053"},{"author":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"change_message_id":"e663f135500a7c3936f5411e0ad49e01ad052c28","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"8a386b66_4b95d04c","updated":"2023-12-14 03:57:31.000000000","message":"This is set to WIP as I haven\u0027t verified that these symlinks don\u0027t cause errors in subsequent builds.","commit_id":"6ad46dff5b9811ba6ecb2234cdd7ae9626a0e053"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"f58626e957c12237069f7a97148e205939ac1f20","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"37139bd5_66a9ebfe","updated":"2023-12-14 08:32:24.000000000","message":"object storage does not handle symlinks, yes, I\u0027d have to check whether AFS does, where the content will be stored.\n\nbut then IIUC duplicating content is also frowned upon by search engines, so I\u0027d suggest to install a HTTP redirect instead","commit_id":"6ad46dff5b9811ba6ecb2234cdd7ae9626a0e053"},{"author":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"change_message_id":"5728bd8d9775f00f54b58c7261d31acd703f892b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"957e37e4_68cf5b4a","in_reply_to":"37139bd5_66a9ebfe","updated":"2023-12-15 01:47:18.000000000","message":"Based on [1] it sounds like AFS is fine with symlinks.\n\nI wanted to avoid redirects 301/302 as that will mean that the client sees the URL so going to https://releases.openstack.org/2023.2/highlights.html will redirect to https://releases.openstack.org/bobcat/highlights.html which I thought was undesireable.\n\nWe could use a RewriteRule (which may need to be enabled on the vhost).\nOption 1:\n RewriteRule \"^/2023.1/(.*)$\" /antelope/$1 [NC, END]\n Functionally the same as a symlink\n \nOption 2:\n RewriteRule \"^/2023.1/(.*)$\" /antelope/$1 [R, NC, END]\n Functionally the same as redirects\n\nI found this[2] article helpful.  It seems we could \"somewhat easily\" specify the canonical URL and then robots will \"do the right thing\" with multiple paths to the same content\n\n[1] https://docs.openafs.org/Reference/1/symlink.html\n[2] https://developers.google.com/search/blog/2009/02/specify-your-canonical","commit_id":"6ad46dff5b9811ba6ecb2234cdd7ae9626a0e053"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"3db9e3ebb2d12ef4227e76c7ea2e41d391184836","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"79ca8904_d3638334","updated":"2023-12-20 08:50:17.000000000","message":"I like the \"rel\u003dcanonical\" idea, but iiuc that only should appear only in the duplicated pages, not in the canonical one.\n\nSo neither the solution proposed here via symlinks nor the rewrite in the webserver would work for that, we would actually need to duplicate the content. (which seems kind of ironic in itself?)\n\nSo -1 since this patch could not be amended, but would need to be reverted and replaced by a different solution. I\u0027d also prefer to do the whole migration in one go, it can be split into multiple patches if needed, but it should be able to be merged and applied together.","commit_id":"a62054e0cba93b5d5f9f4fbd3d7de854937875f3"}]}
