Additions
- Populate bundle status from bundleDeployment status resources by @rubhanazeem in #2535
- Add strict TLS mode support by @weyfonk in #2507
- Adding NodeSelection for Controller Shards by @Tommy12789 in #2505
- Extend strict TLS mode to
fleet-agent
container by @weyfonk in #2556 - Gitcloner recurses submodules by @manno in #2557
- Bundle content storage in OCI by @0xavi0 in #2561
- Add metrics to gitops controller by @Tommy12789 in #2530
- Use bundleDeployment to store resources in gitRepo status by @rubhanazeem in #2523
- Adds extraEnv to gitjob and fleet-controller deployments by @0xavi0 in #2493
- Deprecate "fleet test" command, previously used to debug chart by @manno in #2113
- Support for Azure DevOps Webhook for gitRepos using SSH URL by @0xavi0 in #2440
- Keep CRDs when deleting a Bundle by @raulcabello in #2028
- Add correctDrift to targetCustomization by @raulcabello in #2014
- Add target/deploy/dry-run CLI commands by @manno in #2102
- Adds option to disable polling for Git repos by @0xavi0 in #2226
- Only create Content resource if Bundle matches any target by @manno in #2239
- Removes cluster node status reporting from agent by @0xavi0 in #2190
- Merge controller and gitjob images by @weyfonk in #2236
- Add static sharding support by @weyfonk in #2323
- Add Prometheus Metrics by @p-se in #2172
- Merge binaries by @manno in #2361
- Configurable leader election via chart values by @aruiz14 in #1981
- Replace ImageScan and Bundle Labels With fleet.yaml Labels by @Tommy12789 in #2360
- Reduce logging for bundles from cleanup controller by @manno in #2393
- Delete namespace when a gitRepo is deleted by @rubhanazeem in #2373
- Add readOnlyRootFilesystem to deployment_gitjob.yaml by @thardeck in #2379
- Creation of a New Webhook endpoint for Github test Webhook by @Tommy12789 in #2395
- Add a Parameter to Configure Worker count for fleet-controller by @Tommy12789 in #2430
Bugfixes
- Ignore status fields during drift detection by @aruiz14 in #2522
- Fixes error display and improves user experience in git poller by @0xavi0 in #2542
- Honor Helm's MaxHistory when using drift correction by @aruiz14 in #2519
- Remove trailing comma from bootstrap template by @Danil-Grigorev in #2452
- Do not count deleted bundledeployments in cluster status by @manno in #2454
- Fixes infinite job generation after ForceSyncGeneration changed by @0xavi0 in #2477
- GitRepo Initial Checkout when DisablePolling is True by @Tommy12789 in #2469
- Filter namespaces by the kubernetes.io/metadata.name label by @raulcabello in #2009
- Catch OCI version errors and return them by @manno in #2311
- Make AlphabeticalPolicy string check case insensitive by @aditditto in #2216
- Ignore not-found errors when deleting bundle deployments by @weyfonk in #2329
- Bump helm fork to 3.14.4 by @manno in #2337
- Add missing serviceName in fleet-agent statefulset by @p-se in #2045
- Fix gitjob log messages for controller and webhook by @manno in #2367
- Fix helm deployer ignoring kubeconfig CLI arg by @manno in #2112
- Return commit for revision instead of HEAD by @0xavi0 in #2410
- Merges gitrepo and gitops controllers by @0xavi0 in #2537
- Partially replace cleanup with finalizers by @weyfonk in #2431
- Moves functionality from gitrepo to gitjob controller by @0xavi0 in #2475
Redesign
- Convert fleet-agent to controller-runtime by @manno in #1772
- Convert fleetcontroller to controller-runtime by @manno in #2018
- Move
rancher/gitjob
logic to this repository by @weyfonk in #2098 - Split fleet-agent by @manno in #1905
- Switch container images to busybox and suse/git by @manno in #1940
- Remove
GitJob
resource by @weyfonk in #2129 - Clustergroup controller migration by @manno in #2400
Performance
- Reduce the number of times that Bundle resources are serialized by @aruiz14 in #1952
- Replace json-based implementation of DeepCopy on GenericMap by @aruiz14 in #1915
What's Changed
- Keep schemebuilder type by @manno in #2524
- Rename sharding labels by @manno in #2463
- Fix
fleet apply
command description by @weyfonk in #2467 - Fix example values.yaml for enabling OCI storage by @bigkevmcd in #2494
- Refactor Gitops Controllers by @manno in #2490
- Add authorize and defaults to gitjob controller by @manno in #2491
- Security context needs to be on container by @manno in #2506
- Adds DeleteFunc to bundle's predicate in gitrepo's controller by @0xavi0 in #2508
- Add SecurityContext to job container by @raulcabello in #1860
- Revert "Add SecurityContext to job container" by @raulcabello in #1872
- Add SecurityContext to job container by @raulcabello in #1875
- Add security context to token cleanup job by @puffitos in #1862
- Drop wrangler-cli dependency by @aruiz14 in #1896
- Small refactor of debug flags handling by @aruiz14 in #1899
- Move cleanup to a different container by @raulcabello in #1885
- Fix typo in README.md by @guitarmanvt in #1907
- Replace wrangler for kubebuilder for generating CRDs by @raulcabello in #1904
- Remove leftovers from controller-gen migration by @aruiz14 in #1920
- Fix debug flag in agent commands by @manno in #1924
- Move agent management to a separate container by @raulcabello in #1910
- Improve pull request template by @thardeck in #1941
- Add docs link by @weyfonk in #1951
- Change variables to constants in bundle type by @manno in #1986
- Agent Bundle/Release Cleanup Ignores Non-Fleet Releases by @manno in #1976
- Move agentmanagement modules into its folder by @manno in #2032
- Improve container security by @weyfonk in #2042
- Remove bd requeue, rely on drift correction by @manno in #1985
- Remove k8s replace from go.mod by @manno in #2086
- Use apimachinery yaml package directly by @manno in #2099
- Extract apply to applied by @manno in #2097
- Refactor targeting/bundle controller by @manno in #2111
- Use git-core pkg instead of git by @weyfonk in #2105
- Update helm fork, rename ForceAdopt/Adopt to TakeOwnership by @manno in #2146
- Move
gitjob
binary tointernal/cmd
by @weyfonk in #2148 - Cleanup unused durations constants by @jhoblitt in #2286
- Propagate bundle and bundledeployment status updates to GitRepo by @weyfonk in #2223
- Remove Windows agent image and docs by @weyfonk in #2237
- Remove manifest templates by @weyfonk in #2233
- Switch fetchNamespace to Get instead of list by @manno in #2205
- Switch fleet repo branch to main by @manno in #2240
- Use portable API for bind mounts in integration tests by @weyfonk in #2229
- Controller image only install ssh clients by @manno in #2335
- Remove unused update status code from bundle reconciler by @manno in #2349
- Simplify shards configuration detection by @weyfonk in #2354
- Switch to tini by @manno in #2336
- Hide global CLI flags on sub commands by @manno in #2376
- CLI deploy prints to stdout by @manno in #2453
- metrics: optimize collection calls in reconciliation loops by @p-se in #2406
- Refactoring CreateJob and UpdateStatus methos in Gitjob Reconciler by @Tommy12789 in #2434
- Gitjob controller updates GitRepo with generation it is reconciling by @manno in #2451
CI / Automation
- Improve release api description and default by @thardeck in #2548
- Fix flaky e2e tests by @weyfonk in #2539
- dev: Make setup-single-cluster capable of setting up multiple clusters by @p-se in #2461
- Remove linter from release pipeline by @thardeck in #2562
- Fix flaky GitRepo status tests by @weyfonk in #2534
- Include drift end-to-end tests in CI workflows by @weyfonk in #2531
- Ignore typos in embedded file by @aruiz14 in #2528
- Switch from omg.howdoi.website to sslip.io by @p-se in #2466
- Fix summary and details tags in bug report template by @sbulage in #2476
- Increase timeout and waiting for testcontainers by @manno in #2502
- Add status reconcile tests by @manno in #2416
- Fix flaky agent modified status test by @manno in #2504
- E2e test to checks status fields by @rubhanazeem in #2503
- Fixes flaky agent integration test by @0xavi0 in #2509
- Use the same linter version in GoReleaser as for prs by @thardeck in #2511
- Fix flaky integration test for git job with polling disabled by @weyfonk in #2514
- Add tmate debugging info to Nightly E2E workflow by @weyfonk in #1847
- Reduce replica count in rancher integration tests by @manno in #1840
- Remove cache action for Go build artifacts by @weyfonk in #1867
- Prevent debug images from creating GitHub releases by @aruiz14 in #1873
- Use configmap example for
keepResources
E2E tests by @weyfonk in #1870 - Clean up e2e test resources by @weyfonk in #1876
- Update exact Fleet version when releasing against Rancher by @weyfonk in #1880
- Use private configmap chart for OCI testing by @weyfonk in #1898
- Lower debug level in dev scripts by @manno in #1903
- Fix flaky smoke test for cluster registration by @weyfonk in #1913
- Add acceptance tests to AKS and GKE CI workflows by @weyfonk in #1914
- Make sure that all go.mods are tidy for new prs by @thardeck in #1942
- Provide release.yaml charts version as array by @thardeck in #1971
- Switch bundle diff test to use random target namespaces by @manno in #1975
- Switch upgrade test to fleet-test-data repo by @manno in #1936
- Remove s390x as runners are not available by @raulcabello in #1995
- Add config for user/passwords in test infra by @manno in #1987
- Fix flaky gitrepo test by @manno in #1999
- Add workflow for porting issues by @aruiz14 in #2012
- Use a different secret for GITHUB_TOKEN by @aruiz14 in #2016
- Adapt release script to build.yaml by @thardeck in #2015
- Add initial gitrepo controller integration test by @manno in #2034
- Update CI up to k8s 1.29 by @manno in #2073
- Disable cache in golangci-lint action by @manno in #2075
- Release scripts chart dir var by @manno in #2081
- Remove remaining s390x by @manno in #2078
- Remove nightly image build by @manno in #2122
- Infra e2e command uses a published fleet module by @manno in #2137
- Add dev docs for changing the infra command by @manno in #2147
- Add gitjob end-to-end tests with SSH key by @weyfonk in #2109
- Add CI workflow releasing Fleet charts against a test repo by @weyfonk in #2296
- Add initial Renovate configuration by @renovate-rancher in #2274
- CI script to update fleet reset values by @manno in #2261
- CI: Revert typos back to master by @0xavi0 in #2272
- Disable FOSSA check for RC releases by @manno in #2316
- Upgrade Fleet in Rancher only triggered manually by @manno in #2241
- Remove zube label handling by @manno in #2270
- Replace Drone pipeline with Github actions by @weyfonk in #2168
- Optimize renovate config by @thardeck in #2283
- Remove drone and dapper scripts by @manno in #2207
- Do not mess up go toolchain during release by @thardeck in #2209
- Duplicate integrationtests scripts for devs by @manno in #2259
- Fix "Upgrade Fleet in Rancher To HEAD" CI by @manno in #2260
- Fix Helm chart version computation in release workflow by @weyfonk in #2227
- Improve release scripts by @thardeck in #2312
- Fixes for image reference and CI by @manno in #2253
- Improve release scripts by @thardeck in #2321
- Bump Fleet version used within installation documentation to 0.9.3 by @rancherbot in #2338
- Make pre-release detection automatic by @weyfonk in #2333
- Update dev/README Dockerfile for act container image by @p-se in #2326
- Add developer docs for monitoring by @p-se in #2189
- Publish to docker.io/rancher (@manno)
- Clean up metrics tests by @manno in #2387
- Remove go.mod from infra test setup command by @manno in #2378
- Simplify sharding end-to-end tests by @weyfonk in #2396
- Remove go work section from dev README by @manno in #2380
- metrics: Add E2E test for cluster deletion by @p-se in #2371
- Ignore gosec errors in end-to-end tests infra setup by @weyfonk in #2392
- Add sharding to Fleet deployments in CI workflows running end-to-end tests by @weyfonk in #2405
- dev-scripts: Change apiServerURL for setup-fleet-downstream by @p-se in #2052
- Improve logging and document issue running
act
in a linked git worktree by @p-se in #2372 - metrics: make sure metrics work well with sharding by @p-se in #2420
- Re-enable fossa by @olblak in #2446
Full Changelog: v0.9.5...v0.10.0-rc.21