Skip to content

Commit e8db1a8

Browse files
committed
Adding changes for Fleet v4.64.2 (#26850)
1 parent 662bb29 commit e8db1a8

File tree

12 files changed

+1524
-7
lines changed

12 files changed

+1524
-7
lines changed

CHANGELOG.md

+6
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
## Fleet 4.64.2 (Mar 05, 2025)
2+
3+
### Bug fixes
4+
5+
* Improve validation handling.
6+
17
## Fleet 4.64.1 (Feb 20, 2025)
28

39
### Bug fixes

changes/.keep

-1
This file was deleted.

charts/fleet/Chart.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@ name: fleet
44
keywords:
55
- fleet
66
- osquery
7-
version: v6.4.2
7+
version: v6.4.3-1
88
home: https://github.com/fleetdm/fleet
99
sources:
1010
- https://github.com/fleetdm/fleet.git
11-
appVersion: v4.64.1
11+
appVersion: v4.64.2
1212
dependencies:
1313
- name: mysql
1414
condition: mysql.enabled

charts/fleet/values.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
hostName: fleet.localhost
44
replicas: 3 # The number of Fleet instances to deploy
55
imageRepository: fleetdm/fleet
6-
imageTag: v4.64.1 # Version of Fleet to deploy
6+
imageTag: v4.64.2 # Version of Fleet to deploy
77
podAnnotations: {} # Additional annotations to add to the Fleet pod
88
serviceAnnotations: {} # Additional annotations to add to the Fleet service
99
serviceAccountAnnotations: {} # Additional annotations to add to the Fleet service account

infrastructure/dogfood/terraform/aws/variables.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ variable "database_name" {
5656

5757
variable "fleet_image" {
5858
description = "the name of the container image to run"
59-
default = "fleetdm/fleet:v4.64.1"
59+
default = "fleetdm/fleet:v4.64.2"
6060

6161
variable "software_inventory" {
6262
description = "enable/disable software inventory (default is enabled)"

infrastructure/dogfood/terraform/gcp/variables.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ variable "redis_mem" {
6868
}
6969

7070
variable "image" {
71-
default = "fleetdm/fleet:v4.64.1"
71+
default = "fleetdm/fleet:v4.64.2"
7272
}
7373

7474
variable "software_installers_bucket_name" {
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
variable "customer_prefix" {
2+
type = string
3+
description = "customer prefix to use to namespace all resources"
4+
default = "fleet"
5+
}
6+
7+
variable "ecs_cluster" {
8+
type = string
9+
description = "The ARN of the ECS cluster to use"
10+
nullable = false
11+
}
12+
13+
variable "vpc_id" {
14+
type = string
15+
default = null
16+
}
17+
18+
variable "fleet_config" {
19+
type = object({
20+
vuln_processing_schedule_expression = optional(string, "rate(1 hour)")
21+
vuln_data_stream_schedule_expression = optional(string, "rate(24 hours)")
22+
vuln_database_path = optional(string, "/home/fleet/vuln_data")
23+
vuln_processing_mem = optional(number, 4096)
24+
vuln_processing_cpu = optional(number, 2048)
25+
vuln_data_stream_mem = optional(number, 1024)
26+
vuln_data_stream_cpu = optional(number, 512)
27+
image = optional(string, "fleetdm/fleet:v4.64.2")
28+
family = optional(string, "fleet-vuln-processing")
29+
sidecars = optional(list(any), [])
30+
extra_environment_variables = optional(map(string), {})
31+
extra_iam_policies = optional(list(string), [])
32+
extra_execution_iam_policies = optional(list(string), [])
33+
extra_secrets = optional(map(string), {})
34+
iam_role_arn = optional(string, null)
35+
database = object({
36+
password_secret_arn = string
37+
user = string
38+
database = string
39+
address = string
40+
rr_address = optional(string, null)
41+
})
42+
awslogs = optional(object({
43+
name = optional(string, null)
44+
region = optional(string, null)
45+
create = optional(bool, true)
46+
prefix = optional(string, "fleet-vuln")
47+
retention = optional(number, 5)
48+
}), {
49+
name = null
50+
region = null
51+
prefix = "fleet"
52+
retention = 5
53+
})
54+
networking = object({
55+
subnets = list(string)
56+
security_groups = optional(list(string), null)
57+
})
58+
iam = optional(object({
59+
role = optional(object({
60+
name = optional(string, "fleet-vuln-processing-role")
61+
policy_name = optional(string, "fleet-vuln-processing-iam-policy")
62+
}), {
63+
name = "fleet-vuln-processing-role"
64+
policy_name = "fleet-vuln-processing-iam-policy"
65+
})
66+
execution = optional(object({
67+
name = optional(string, "fleet-vuln-processing-execution-role")
68+
policy_name = optional(string, "fleet-vuln-processing-execution-role")
69+
}), {
70+
name = "fleet-vuln-processing-execution-role"
71+
policy_name = "fleet-vuln-processing-iam-policy-execution"
72+
})
73+
}), {
74+
name = "fleet-vuln-processing-execution-role"
75+
})
76+
})
77+
default = {
78+
vuln_processing_schedule_expression = "rate(1 hour)"
79+
vuln_data_stream_schedule_expression = "rate(24 hours)"
80+
vuln_database_path = "/home/fleet/vuln_data"
81+
vuln_processing_mem = 4096
82+
vuln_processing_cpu = 2048
83+
vuln_data_stream_mem = 1024
84+
vuln_data_stream_cpu = 512
85+
image = "fleetdm/fleet:v4.64.2"
86+
family = "fleet-vuln-processing"
87+
sidecars = []
88+
extra_environment_variables = {}
89+
extra_iam_policies = []
90+
extra_execution_iam_policies = []
91+
extra_secrets = {}
92+
iam_role_arn = null
93+
database = {
94+
password_secret_arn = null
95+
user = null
96+
database = null
97+
address = null
98+
rr_address = null
99+
}
100+
awslogs = {
101+
name = null
102+
region = null
103+
create = true
104+
prefix = "fleet-vuln"
105+
retention = 5
106+
}
107+
networking = {
108+
subnets = null
109+
security_groups = null
110+
}
111+
iam = {
112+
role = {
113+
name = "fleet-vuln-processing-role"
114+
policy_name = "fleet-vuln-processing-iam-policy"
115+
}
116+
execution = {
117+
name = "fleet-vuln-processing-execution-role"
118+
policy_name = "fleet-vuln-processing-iam-policy-execution"
119+
}
120+
}
121+
}
122+
description = "The configuration object for Fleet itself. Fields that default to null will have their respective resources created if not specified."
123+
nullable = false
124+
}
125+
126+
variable "efs_root_directory" {
127+
default = "/"
128+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,209 @@
1+
variable "ecs_cluster" {
2+
type = string
3+
description = "The name of the ECS cluster to use"
4+
nullable = false
5+
}
6+
7+
variable "vpc_id" {
8+
type = string
9+
default = null
10+
}
11+
12+
variable "fleet_config" {
13+
type = object({
14+
task_mem = optional(number, null)
15+
task_cpu = optional(number, null)
16+
mem = optional(number, 4096)
17+
cpu = optional(number, 512)
18+
pid_mode = optional(string, null)
19+
image = optional(string, "fleetdm/fleet:v4.64.2")
20+
family = optional(string, "fleet")
21+
sidecars = optional(list(any), [])
22+
depends_on = optional(list(any), [])
23+
mount_points = optional(list(any), [])
24+
volumes = optional(list(any), [])
25+
extra_environment_variables = optional(map(string), {})
26+
extra_iam_policies = optional(list(string), [])
27+
extra_execution_iam_policies = optional(list(string), [])
28+
extra_secrets = optional(map(string), {})
29+
security_group_name = optional(string, "fleet")
30+
iam_role_arn = optional(string, null)
31+
repository_credentials = optional(string, "")
32+
private_key_secret_name = optional(string, "fleet-server-private-key")
33+
service = optional(object({
34+
name = optional(string, "fleet")
35+
}), {
36+
name = "fleet"
37+
})
38+
database = object({
39+
password_secret_arn = string
40+
user = string
41+
database = string
42+
address = string
43+
rr_address = optional(string, null)
44+
})
45+
redis = object({
46+
address = string
47+
use_tls = optional(bool, true)
48+
})
49+
awslogs = optional(object({
50+
name = optional(string, null)
51+
region = optional(string, null)
52+
create = optional(bool, true)
53+
prefix = optional(string, "fleet")
54+
retention = optional(number, 5)
55+
}), {
56+
name = null
57+
region = null
58+
prefix = "fleet"
59+
retention = 5
60+
})
61+
loadbalancer = object({
62+
arn = string
63+
})
64+
extra_load_balancers = optional(list(any), [])
65+
networking = object({
66+
subnets = optional(list(string), null)
67+
security_groups = optional(list(string), null)
68+
ingress_sources = object({
69+
cidr_blocks = optional(list(string), [])
70+
ipv6_cidr_blocks = optional(list(string), [])
71+
security_groups = optional(list(string), [])
72+
prefix_list_ids = optional(list(string), [])
73+
})
74+
})
75+
autoscaling = optional(object({
76+
max_capacity = optional(number, 5)
77+
min_capacity = optional(number, 1)
78+
memory_tracking_target_value = optional(number, 80)
79+
cpu_tracking_target_value = optional(number, 80)
80+
}), {
81+
max_capacity = 5
82+
min_capacity = 1
83+
memory_tracking_target_value = 80
84+
cpu_tracking_target_value = 80
85+
})
86+
iam = optional(object({
87+
role = optional(object({
88+
name = optional(string, "fleet-role")
89+
policy_name = optional(string, "fleet-iam-policy")
90+
}), {
91+
name = "fleet-role"
92+
policy_name = "fleet-iam-policy"
93+
})
94+
execution = optional(object({
95+
name = optional(string, "fleet-execution-role")
96+
policy_name = optional(string, "fleet-execution-role")
97+
}), {
98+
name = "fleet-execution-role"
99+
policy_name = "fleet-iam-policy-execution"
100+
})
101+
}), {
102+
name = "fleetdm-execution-role"
103+
})
104+
software_installers = optional(object({
105+
create_bucket = optional(bool, true)
106+
bucket_name = optional(string, null)
107+
bucket_prefix = optional(string, "fleet-software-installers-")
108+
s3_object_prefix = optional(string, "")
109+
}), {
110+
create_bucket = true
111+
bucket_name = null
112+
bucket_prefix = "fleet-software-installers-"
113+
s3_object_prefix = ""
114+
})
115+
})
116+
default = {
117+
task_mem = null
118+
task_cpu = null
119+
mem = 512
120+
cpu = 256
121+
pid_mode = null
122+
image = "fleetdm/fleet:v4.64.2"
123+
family = "fleet"
124+
sidecars = []
125+
depends_on = []
126+
mount_points = []
127+
volumes = []
128+
extra_environment_variables = {}
129+
extra_iam_policies = []
130+
extra_execution_iam_policies = []
131+
extra_secrets = {}
132+
security_group_name = "fleet"
133+
iam_role_arn = null
134+
repository_credentials = ""
135+
private_key_secret_name = "fleet-server-private-key"
136+
service = {
137+
name = "fleet"
138+
}
139+
database = {
140+
password_secret_arn = null
141+
user = null
142+
database = null
143+
address = null
144+
rr_address = null
145+
}
146+
redis = {
147+
address = null
148+
use_tls = true
149+
}
150+
awslogs = {
151+
name = null
152+
region = null
153+
create = true
154+
prefix = "fleet"
155+
retention = 5
156+
}
157+
loadbalancer = {
158+
arn = null
159+
}
160+
extra_load_balacners = []
161+
networking = {
162+
subnets = null
163+
security_groups = null
164+
ingress_sources = {
165+
cidr_blocks = []
166+
ipv6_cidr_blocks = []
167+
security_groups = []
168+
prefix_list_ids = []
169+
}
170+
}
171+
autoscaling = {
172+
max_capacity = 5
173+
min_capacity = 1
174+
memory_tracking_target_value = 80
175+
cpu_tracking_target_value = 80
176+
}
177+
iam = {
178+
role = {
179+
name = "fleet-role"
180+
policy_name = "fleet-iam-policy"
181+
}
182+
execution = {
183+
name = "fleet-execution-role"
184+
policy_name = "fleet-iam-policy-execution"
185+
}
186+
}
187+
software_installers = {
188+
create_bucket = true
189+
bucket_name = null
190+
bucket_prefix = "fleet-software-installers-"
191+
s3_object_prefix = ""
192+
}
193+
}
194+
description = "The configuration object for Fleet itself. Fields that default to null will have their respective resources created if not specified."
195+
nullable = false
196+
}
197+
198+
variable "migration_config" {
199+
type = object({
200+
mem = number
201+
cpu = number
202+
})
203+
default = {
204+
mem = 2048
205+
cpu = 1024
206+
}
207+
description = "The configuration object for Fleet's migration task."
208+
nullable = false
209+
}

0 commit comments

Comments
 (0)