{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":697029443,"defaultBranch":"main","name":"keystone-rxt","ownerLogin":"rackerlabs","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-09-26T22:59:52.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/84293?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1720466579.0","currentOid":""},"activityList":{"items":[{"before":"73917b0026e10197218913acd72c530e2bc0c688","after":"f5afdf25a286d8d6e33e396f2939ebf0f0450b23","ref":"refs/heads/main","pushedAt":"2024-07-08T19:22:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"feat: update keystone-rxt to use the new rxt role (#6)\n\nThis change makes it possible to run the keystone rxt plugin in\r\nan environment using the os_flex attribute.\r\n\r\nThis change includes\r\n* multi-account detection and autoprovisioning\r\n* new mapping defaults for scheme version 2.0\r\n\r\nTwo new options have been added to support the creation of the\r\nrole attribute methods, allowing a user to be a member of more\r\nthan one project.\r\n\r\n[rackspace]\r\nrole_attribute_enforcement \r\nrole_attribute \r\n\r\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"feat: update keystone-rxt to use the new rxt role (#6)"}},{"before":"41d2bcd8751af237a9d4b0e231d87487c55d86d0","after":"73917b0026e10197218913acd72c530e2bc0c688","ref":"refs/heads/main","pushedAt":"2024-04-26T16:03:29.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"ci: fix my fail in 41d2bcd8751 (#5)\n\nSigned-off-by: Doug Goldstein ","shortMessageHtmlLink":"ci: fix my fail in 41d2bcd (#5)"}},{"before":"d339923d08df289f5961b48ee04be913ca491930","after":"41d2bcd8751af237a9d4b0e231d87487c55d86d0","ref":"refs/heads/main","pushedAt":"2024-04-26T15:30:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"feat: deploy all containers and add OpenStack 2024.1 (#4)\n\n* fix: avoid storing tmp cache bits for pip\r\n\r\nSigned-off-by: Doug Goldstein \r\n\r\n* ci: build all the containers on deploy\r\n\r\nSigned-off-by: Doug Goldstein \r\n\r\n* ci: ensure the right registry is always used\r\n\r\nSigned-off-by: Doug Goldstein \r\n\r\n* feat: build OpenStack 2024.1 container\r\n\r\nSigned-off-by: Doug Goldstein \r\n\r\n* ci: skip the need for a checkout\r\n\r\nbuildx will use the git context and not need a checkout in the runner.\r\n\r\nSigned-off-by: Doug Goldstein \r\n\r\n* ci: set annotations on the containers as well\r\n\r\nSigned-off-by: Doug Goldstein \r\n\r\n---------\r\n\r\nSigned-off-by: Doug Goldstein ","shortMessageHtmlLink":"feat: deploy all containers and add OpenStack 2024.1 (#4)"}},{"before":"5bc0a4e83e550df9416305ddd05c8fb079554cdf","after":"d339923d08df289f5961b48ee04be913ca491930","ref":"refs/heads/main","pushedAt":"2024-02-08T15:11:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"ci: publish tags to PyPi and make GitHub releases (#3)\n\nThis builds every push to the main branch to ensure it builds and also\r\ntakes every tag or GitHub release and makes a GitHub release if one\r\nisn't there. Uploads the release to PyPi. Following\r\nhttps://packaging.python.org/en/latest/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/\r\n\r\nSigned-off-by: Doug Goldstein ","shortMessageHtmlLink":"ci: publish tags to PyPi and make GitHub releases (#3)"}},{"before":"422cf359d37f0ed648302eb2cf30d168d11aeb19","after":"5bc0a4e83e550df9416305ddd05c8fb079554cdf","ref":"refs/heads/main","pushedAt":"2024-01-22T19:43:12.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"ignore non-OpenStack Rackspace products (#2)\n\nThe Rackspace service catalog returns roles for non-OpenStack products\r\nthat Rackspace offers. These do not using the same types of values or\r\nmappings that OpenStack uses which causes an issue. They aren't\r\nsomething that would be supported in keystone anyway since they exist\r\noutside of identity for roles and permissions so ignore them from this\r\nplugin.\r\n\r\nSigned-off-by: Doug Goldstein ","shortMessageHtmlLink":"ignore non-OpenStack Rackspace products (#2)"}},{"before":"449e5d9f63d95bd22737bec4de2dadc831701a5d","after":"422cf359d37f0ed648302eb2cf30d168d11aeb19","ref":"refs/heads/main","pushedAt":"2024-01-05T22:04:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Update after repo move (#1)\n\nThis change addresses the doc references from the old location.\r\n\r\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"Update after repo move (#1)"}},{"before":"316b77d5eb12474b09e83455a89e279e0d62357e","after":"449e5d9f63d95bd22737bec4de2dadc831701a5d","ref":"refs/heads/main","pushedAt":"2023-12-11T04:02:24.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"add workflows\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"add workflows"}},{"before":"afc8339850d9dcaab42577f1a6ae809800cfd2b3","after":"316b77d5eb12474b09e83455a89e279e0d62357e","ref":"refs/heads/main","pushedAt":"2023-12-11T03:58:29.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"add workflows\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"add workflows"}},{"before":"98330c6210928b398c085d1283938f1511006880","after":"afc8339850d9dcaab42577f1a6ae809800cfd2b3","ref":"refs/heads/main","pushedAt":"2023-12-11T03:48:59.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"add workflows\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"add workflows"}},{"before":"b0358a0026a03fab056a05f022b5d0b896561498","after":"98330c6210928b398c085d1283938f1511006880","ref":"refs/heads/main","pushedAt":"2023-12-11T03:45:16.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"add workflows\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"add workflows"}},{"before":"e9bb1c0feb860ff7719883891b16ebd324562830","after":"b0358a0026a03fab056a05f022b5d0b896561498","ref":"refs/heads/main","pushedAt":"2023-12-11T03:26:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"add workflows\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"add workflows"}},{"before":"88b0e8269f94102682dad1a5db42a12a72114a17","after":"e9bb1c0feb860ff7719883891b16ebd324562830","ref":"refs/heads/main","pushedAt":"2023-10-02T17:41:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"add i18n support for all log messages\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"add i18n support for all log messages"}},{"before":"62820ecab4285268001b9e5ae58c7facfaea9349","after":"88b0e8269f94102682dad1a5db42a12a72114a17","ref":"refs/heads/main","pushedAt":"2023-10-02T17:23:20.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"cleanup imports\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"cleanup imports"}},{"before":"0d6d3f941616bf1265dd79e99e98e81b71d10839","after":"62820ecab4285268001b9e5ae58c7facfaea9349","ref":"refs/heads/main","pushedAt":"2023-10-02T15:22:06.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Remove documentation note\n\nThe note about requiring caching is no longer needed.\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"Remove documentation note"}},{"before":"5e147543c0a1535a681fb3903c660767919d9658","after":"0d6d3f941616bf1265dd79e99e98e81b71d10839","ref":"refs/heads/main","pushedAt":"2023-10-01T23:36:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Lots of class cleanup\n\nThis change updates our class layout so that we're removing quite a\nbit of internal logic.\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"Lots of class cleanup"}},{"before":"1fd70fb6220d7bbe49c4f6f63e1d0e28f0bf23eb","after":"5e147543c0a1535a681fb3903c660767919d9658","ref":"refs/heads/main","pushedAt":"2023-10-01T19:14:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Improve caching and user auth process\n\nWe're now following the keystone multi-auth process which will ensure\nwe're following instructions without setting override environment\nvariables.\n\nCaching has been improved to log in debug and ensure that we're\nonly storing and using objects for a specific period of time, unless\nthe service catalog has been expired.\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"Improve caching and user auth process"}},{"before":"402840dc9ef68fe26ffb81c22d8067d287ad003b","after":"1fd70fb6220d7bbe49c4f6f63e1d0e28f0bf23eb","ref":"refs/heads/main","pushedAt":"2023-09-30T01:36:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Add Multi-factor auth and caching\n\nThe keystone-rxt plugin will now allow a user to auth with passwords,\napikeys, and leverage multi-factor auth following the multifactor\nauthentication standards implemented by Rackspace Identity. These\nimprovements make it possible for all users of Rackspace Identity to\nleverage an OpenStack environment with their existing credentials,\nin the way that best suits their requirements.\n\nOn top of the interaction features this change also adds caching,\nwhich will ensure we're able to efficiently interact with Rackspace\nIdentity without creating an authentication storm. The plugin will\nnow pull the service catalog from Rackspace Identity when needed\nand then inspect the expires time, should the cached catalog expire,\na new one will be pulled. The same is true for the sessionID used\nwhen dealing with multi-factor auth. Because Rackspace MFA requires\ntwo requests, caching the session will allow us to shortcut the\nnumber of repeat calls being made should a user run many commands\nin short order. The caching implementation is fairly basic, but\nextends our current capabilities and ensures good user experiences.\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"Add Multi-factor auth and caching"}},{"before":"e9895fef402bb5b40d9b8ce82feb6209b6771b09","after":"402840dc9ef68fe26ffb81c22d8067d287ad003b","ref":"refs/heads/main","pushedAt":"2023-09-29T02:31:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Remove hard coded config\n\nThis change cleans up the temp hard-coded config, which is now\nno longer needed. This simplifies installation and ensures our\nplugin can be installed in an environment respecting existing\nopenstack configurations.\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"Remove hard coded config"}},{"before":"1d04e709d1941c1c40d6bace4aad671b53d59dc8","after":"e9895fef402bb5b40d9b8ce82feb6209b6771b09","ref":"refs/heads/main","pushedAt":"2023-09-29T02:27:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"force caching true when the auth plugin is loaded\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"force caching true when the auth plugin is loaded"}},{"before":"a2505f7c2f976daf121ba5ee5cafbc9b81a67fcf","after":"1d04e709d1941c1c40d6bace4aad671b53d59dc8","ref":"refs/heads/main","pushedAt":"2023-09-29T02:09:56.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Improve group mapping so that we've a more simple rbac\n\nThis change simplifies the basic RBAC setup and will now focus on\nreader, member, and admin groups. While more complex groups could\nexist, we need a simple out of the box method to maintaining our\ngroup membership which follows the upstream documentation.\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"Improve group mapping so that we've a more simple rbac"}},{"before":"60d4eef8ba3e278b3b079d9c7bbc45f48c3f96b6","after":"a2505f7c2f976daf121ba5ee5cafbc9b81a67fcf","ref":"refs/heads/main","pushedAt":"2023-09-29T01:25:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"update json example files\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"update json example files"}},{"before":"91db710b31cffba296751b05f7a37e2b693dc934","after":"60d4eef8ba3e278b3b079d9c7bbc45f48c3f96b6","ref":"refs/heads/main","pushedAt":"2023-09-29T01:23:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Updates the authentication process to support passwordCredentials\n\nThis change adds some structure to the auth process to ensure that\nwe're able provide access to a cloud using both the password or\nthe apikey from Rackspace Identity. The auth method will check,\nif the provided password value is a valid hash and if so, it use\nthe API key authentication method first. In the event of a failure\nthe method will retry using the password authentication method.\nIf the hash validation check fails the plugin will assume the\nuser is attempting basic password authentication.\n\nThis change also adds input validation and logging so that we're\nbetter able to debug the plugin in the event of an issue.\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"Updates the authentication process to support passwordCredentials"}},{"before":"0a3014fc9796d17e7f01fbaef66c1a6980073afe","after":"91db710b31cffba296751b05f7a37e2b693dc934","ref":"refs/heads/main","pushedAt":"2023-09-28T18:53:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Fix typo\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"Fix typo"}},{"before":"2441a96ec7f816ab8943f8e21174650fc5e61cc4","after":"0a3014fc9796d17e7f01fbaef66c1a6980073afe","ref":"refs/heads/main","pushedAt":"2023-09-28T15:03:00.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Add package files\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"Add package files"}},{"before":"889450bc69c615dd469d329c2ba89fed7295d557","after":"2441a96ec7f816ab8943f8e21174650fc5e61cc4","ref":"refs/heads/main","pushedAt":"2023-09-28T14:58:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Create python-publish.yml","shortMessageHtmlLink":"Create python-publish.yml"}},{"before":"a9169ad2516a93e8160b4c0c9d8587406034071e","after":"889450bc69c615dd469d329c2ba89fed7295d557","ref":"refs/heads/main","pushedAt":"2023-09-28T14:27:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Add gitignore\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"Add gitignore"}},{"before":"b6a57678978b8b14caf4f7dd8670e4bc18fbb259","after":"a9169ad2516a93e8160b4c0c9d8587406034071e","ref":"refs/heads/main","pushedAt":"2023-09-28T13:52:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"add history section to the README\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"add history section to the README"}},{"before":"e85b41c2de497217c7eb1db54c1400485d5d730a","after":"b6a57678978b8b14caf4f7dd8670e4bc18fbb259","ref":"refs/heads/main","pushedAt":"2023-09-28T01:22:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Update the readme so that we can read it\n\nThe readme now makes more sense.\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"Update the readme so that we can read it"}},{"before":"f608e3b6249d7e2ffb8ca2d502cf9d6bebb42753","after":"e85b41c2de497217c7eb1db54c1400485d5d730a","ref":"refs/heads/main","pushedAt":"2023-09-28T00:43:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"Cleaned up example mapping\n\nThis change removes the groups found within the mapping.\nThe original assumption was that we could use dyamic groups,\nthat was wrong.\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"Cleaned up example mapping"}},{"before":"6c6102ba0363af62fe79956659097bc260bf7fc9","after":"f608e3b6249d7e2ffb8ca2d502cf9d6bebb42753","ref":"refs/heads/main","pushedAt":"2023-09-27T21:32:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cloudnull","name":"Kevin Carter","path":"/cloudnull","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2066292?s=80&v=4"},"commit":{"message":"adjust mapping for roles\n\nSigned-off-by: Kevin Carter ","shortMessageHtmlLink":"adjust mapping for roles"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEefKtFQA","startCursor":null,"endCursor":null}},"title":"Activity ยท rackerlabs/keystone-rxt"}