Title: feat: Add feast apply init container to automate registry population on pod start by ntkathole · Pull Request #6106 · feast-dev/feast · GitHub
Open Graph Title: feat: Add feast apply init container to automate registry population on pod start by ntkathole · Pull Request #6106 · feast-dev/feast
X Title: feat: Add feast apply init container to automate registry population on pod start by ntkathole · Pull Request #6106 · feast-dev/feast
Description: What this PR does / why we need it: When deploying Feast via the Feast Operator, users must manually run feast apply after every CRD creation to populate the feature store registry. This is an extra operational step that is easy to forget and creates a poor user experience. This PR adds a feast-apply init container to the Feast deployment that runs feast apply automatically before the main server containers start. This ensures the registry is always populated on every pod start. The init container inherits env vars, envFrom, and volume mounts from all configured server containers (registry, online, offline) to ensure DB/store connectivity. Users can set spec.services.runFeastApplyOnInit to false to disable the automatic apply behavior. The feature can also be disabled globally via the existing spec.services.disableInitContainers: true field. Surface container failure details in CRD status when the deployment is unavailable. Instead of the generic "Deployment is not available", the controller now inspects pod init/container statuses and reports the specific failure (e.g., Init container 'feast-apply' failed with exit code 1). Fix _apply_object race condition in SqlRegistry by wrapping the insert in a savepoint and catching IntegrityError, so concurrent feast apply calls from multiple pods don't crash on duplicate key conflicts. This was done to fix intermittent failures on rest-api tests. Make replicas field optional in the FeatureStore CRD spec (json:"replicas,omitempty"), removing it from the required list so it defaults to 1 without requiring explicit specification.
Open Graph Description: What this PR does / why we need it: When deploying Feast via the Feast Operator, users must manually run feast apply after every CRD creation to populate the feature store registry. This is an extr...
X Description: What this PR does / why we need it: When deploying Feast via the Feast Operator, users must manually run feast apply after every CRD creation to populate the feature store registry. This is an extr...
Opengraph URL: https://github.com/feast-dev/feast/pull/6106
X: @github
Domain: github.com
| route-pattern | /:user_id/:repository/pull/:id/files(.:format) |
| route-controller | pull_requests |
| route-action | files |
| fetch-nonce | v2:5e71995d-3427-12d0-71b5-a52ed45cd9fc |
| current-catalog-service-hash | ae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b |
| request-id | E536:32C21D:BDED75:11480D3:6A4E25D2 |
| html-safe-nonce | 5c5e26c8a52ac53dfa7fcaf26658d8b2c7f53869c5412d6141ba9bc694b3efb9 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFNTM2OjMyQzIxRDpCREVENzU6MTE0ODBEMzo2QTRFMjVEMiIsInZpc2l0b3JfaWQiOiI2MjQyNzQ0NDYyNjkyMTk3ODQyIiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | 28b89408e189f57129fa30e9805bb1527f84204adc6648a8148576b7d00daea6 |
| hovercard-subject-tag | pull_request:3398815035 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/feast-dev/feast/pull/6106/files |
| twitter:image | https://avatars.githubusercontent.com/u/16951913?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/16951913?s=400&v=4 |
| og:image:alt | What this PR does / why we need it: When deploying Feast via the Feast Operator, users must manually run feast apply after every CRD creation to populate the feature store registry. This is an extr... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | 030096ee0db095447bfe77409d33bfac127ca7128299c58deef27c52eaa1b1f0 |
| turbo-cache-control | no-preview |
| diff-view | unified |
| go-import | github.com/feast-dev/feast git https://github.com/feast-dev/feast.git |
| octolytics-dimension-user_id | 57027613 |
| octolytics-dimension-user_login | feast-dev |
| octolytics-dimension-repository_id | 161133770 |
| octolytics-dimension-repository_nwo | feast-dev/feast |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 161133770 |
| octolytics-dimension-repository_network_root_nwo | feast-dev/feast |
| turbo-body-classes | logged-out env-production page-responsive full-width |
| disable-turbo | true |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | d9dd20d38f8ae3c4cb6b597807431db300d0bd2a |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width