You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Fleet] Improve installation of bundled packages in airgapped environments (elastic#230992)
Closeselastic#224954
## Summary
Improve installation of bundled packages in airgapped environments.
- Add a fallback fetch of bundled packages / cached packages when
possible
- Improve error handling when EPR is not available
- Fetch bundled packages as fallback when is possible (regardless of EPR
being available or not)
Approach explained
[here](elastic#224954 (comment))
### Testing steps
Configuration in `kibana.dev.yml`:
```
xpack.fleet:
isAirGapped: true
registryUrl: http://not-reachable
developer.bundledPackageLocation: "/Users/<USERNAME>/Dev/kibana/x-pack/platform/plugins/shared/fleet/target/bundled_packages"
```
Bundled packages (APM, synthetics, etc) need to be present in the above
folder. Download them from EPR
- Put an older version of APM (for instance 7.16) in the folder and
install it going to `app/integrations/apm-7.16/overview`, add it to a
new agent policy. I tested with a policy that doesn't have `system`
installed
- temporarily remove the configs `isAirGapped` and `registryUrl` to be
able to reach the registry and add a newer version of the package to
`bundled_packages` folder (I used apm-8.2.0)
- To trigger the package upgrade, go to
`app/integrations/apm-8.2.0/overview`
- Put back the configs in `kibana.dev.yml` and now upgrade the package
and the policies
- The upgrade should work properly and the policy revision is aligned
<img width="1862" height="965" alt="Screenshot 2025-08-11 at 11 13 29"
src="https://github.com/user-attachments/assets/690068f9-e43e-4685-b341-b3e4139e421e"
/>
<img width="1866" height="1159" alt="Screenshot 2025-08-11 at 11 13 58"
src="https://github.com/user-attachments/assets/9a12e223-6215-4759-ab89-eb554d6bc63e"
/>
**NOTE**: When I tested with a policy that has also other packages
installed (like system), the policy recompile still fails with a
connection error. I'm not quite sure how to solve this, since Fleet
needs to reach EPR to fetch the packages that are not bundled.
### Checklist
Check the PR satisfies following conditions.
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [ ] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
---------
Co-authored-by: Elastic Machine <[email protected]>
0 commit comments