Skip to content
Open
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions docker/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -828,6 +828,8 @@ If containers show unhealthy states (e.g., `Restarting`, `Exited`):
| `FIFTYONE_DEFAULT_APP_PORT` | The host port that `fiftyone-app` should bind to; the default is `5151` | Yes |
| `FIFTYONE_DO_EXPIRATION_DAYS` | The amount of time in days that a delegated operation can run before being automatically terminated. Default is 1 day. | No |
| `FIFTYONE_DO_EXPIRATION_MINUTES` | The amount of time in minutes that a delegated operation can run before being automatically terminated. Default is `FIFTYONE_DO_EXPIRATION_DAYS` converted to minutes. If this field is provided it will override `FIFTYONE_DO_EXPIRATION_DAYS`. | No |
| `FIFTYONE_DO_REQUEUE_DELAY_MINUTES` | The number of minutes an operation can sit in a queued state before being requeued. Can be any positive number. Default is `30`. | No |
| `FIFTYONE_DO_REQUEUE_MAX_ATTEMPTS` | The number of times an operation is requeued before being terminated. `-1` will never terminate. `0` will terminate without requeue. Default is `3`. | No |
| `FIFTYONE_ENCRYPTION_KEY` | Used to encrypt storage credentials in MongoDB | Yes |
| `FIFTYONE_ENV` | GraphQL verbosity for the `fiftyone-teams-api` service; `production` will not log every GraphQL query, any other value will | No |
| `FIFTYONE_LOGGING_FORMAT` | The format to use for log messages; `json` or `text`. The default is `text`. | No |
Expand Down
2 changes: 2 additions & 0 deletions helm/fiftyone-teams-app/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -687,6 +687,8 @@ If pods show unhealthy states (e.g., `0/1`, `CrashLoopBackOff`, `Pending`):
| apiSettings.dnsName | string | `""` | Controls whether `teams-api` is added to the chart's ingress. When an empty string, a rule for `teams-api` is not added to the chart managed ingress. When not an empty string, becomes the value to the `host` in the ingress' rule and set `ingress.api` too. Additionally, the `apiSettings.dnsName` is used by `teams-api` to generate the `API_EXTERNAL_URL` environment variable for configuring external orchestrators. |
| apiSettings.env.FIFTYONE_DO_EXPIRATION_DAYS | int | `1` | The amount of time in days that a delegated operation can run before being automatically terminated. Overridden by "FIFTYONE_DO_EXPIRATION_MINUTES" if provided. |
| apiSettings.env.FIFTYONE_DO_EXPIRATION_MINUTES | int | `nil` | The amount of time in minutes that a delegated operation can run before being automatically terminated. Overrides "FIFTYONE_DO_EXPIRATION_DAYS" if provided. |
| apiSettings.env.FIFTYONE_DO_REQUEUE_DELAY_MINUTES | int | `30` | The number of minutes an operation can sit in queued before being requeued. Can be any positive number. |
| apiSettings.env.FIFTYONE_DO_REQUEUE_MAX_ATTEMPTS | int | `3` | The number of times an operation is requeued before being terminated. `-1` will never terminate. `0` will immediately terminate. |
| apiSettings.env.FIFTYONE_ENV | string | `"production"` | Controls FiftyOne GraphQL verbosity. When "production", debug mode is disabled and the default logging level is "INFO". When "development", debug mode is enabled and the default logging level is "DEBUG". Can be overridden by setting `apiSettings.env.LOGGING_LEVEL`. |
| apiSettings.env.FIFTYONE_INTERNAL_SERVICE | bool | `true` | Whether the SDK is running in an internal service context. When running in FiftyOne Enterprise, set to `true`. |
| apiSettings.env.FIFTYONE_LOGGING_FORMAT | string | `"text"` | The format to use for log messages. Can be one of `json` or `text`. |
Expand Down
14 changes: 14 additions & 0 deletions helm/fiftyone-teams-app/values.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,20 @@
"null"
]
},
"FIFTYONE_DO_REQUEUE_DELAY_MINUTES": {
"default": 30,
"description": "The number of minutes an operation can sit in queued before being requeued.\nCan be any positive number.",
"required": [],
"title": "FIFTYONE_DO_REQUEUE_DELAY_MINUTES",
"type": "integer"
},
"FIFTYONE_DO_REQUEUE_MAX_ATTEMPTS": {
"default": 3,
"description": "The number of times an operation is requeued before being terminated.\n`-1` will never terminate. `0` will immediately terminate.",
"required": [],
"title": "FIFTYONE_DO_REQUEUE_MAX_ATTEMPTS",
"type": "integer"
},
"FIFTYONE_ENV": {
"default": "production",
"description": "Controls FiftyOne GraphQL verbosity.\nWhen \"production\", debug mode is disabled and the default logging level is \"INFO\".\nWhen \"development\", debug mode is enabled and the default logging level is \"DEBUG\".\nCan be overridden by setting `apiSettings.env.LOGGING_LEVEL`.",
Expand Down
6 changes: 6 additions & 0 deletions helm/fiftyone-teams-app/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,12 @@ apiSettings:
# -- (int) The amount of time in minutes that a delegated operation can run before being automatically terminated.
# Overrides "FIFTYONE_DO_EXPIRATION_DAYS" if provided.
FIFTYONE_DO_EXPIRATION_MINUTES:
# -- The number of minutes an operation can sit in queued before being requeued.
# Can be any positive number.
FIFTYONE_DO_REQUEUE_DELAY_MINUTES: 30
# -- The number of times an operation is requeued before being terminated.
# `-1` will never terminate. `0` will immediately terminate.
FIFTYONE_DO_REQUEUE_MAX_ATTEMPTS: 3

# -- Secret variables to be passed to the `teams-api` containers.
secretEnv: {}
Expand Down
148 changes: 98 additions & 50 deletions tests/unit/helm/api-deployment_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -486,14 +486,22 @@ func (s *deploymentApiTemplateTest) TestContainerEnv() {
}
}
},
{
"name": "FIFTYONE_DO_EXPIRATION_DAYS",
"value": "1"
},
{
"name": "FIFTYONE_DO_EXPIRATION_MINUTES",
"value": ""
},
{
"name": "FIFTYONE_DO_EXPIRATION_DAYS",
"value": "1"
},
{
"name": "FIFTYONE_DO_EXPIRATION_MINUTES",
"value": ""
},
{
"name": "FIFTYONE_DO_REQUEUE_DELAY_MINUTES",
"value": "30"
},
{
"name": "FIFTYONE_DO_REQUEUE_MAX_ATTEMPTS",
"value": "3"
},
{
"name": "FIFTYONE_ENV",
"value": "production"
Expand Down Expand Up @@ -583,14 +591,22 @@ func (s *deploymentApiTemplateTest) TestContainerEnv() {
}
}
},
{
"name": "FIFTYONE_DO_EXPIRATION_DAYS",
"value": "1"
},
{
"name": "FIFTYONE_DO_EXPIRATION_MINUTES",
"value": ""
},
{
"name": "FIFTYONE_DO_EXPIRATION_DAYS",
"value": "1"
},
{
"name": "FIFTYONE_DO_EXPIRATION_MINUTES",
"value": ""
},
{
"name": "FIFTYONE_DO_REQUEUE_DELAY_MINUTES",
"value": "30"
},
{
"name": "FIFTYONE_DO_REQUEUE_MAX_ATTEMPTS",
"value": "3"
},
{
"name": "FIFTYONE_ENV",
"value": "production"
Expand Down Expand Up @@ -694,14 +710,22 @@ func (s *deploymentApiTemplateTest) TestContainerEnv() {
}
}
},
{
"name": "FIFTYONE_DO_EXPIRATION_DAYS",
"value": "1"
},
{
"name": "FIFTYONE_DO_EXPIRATION_MINUTES",
"value": ""
},
{
"name": "FIFTYONE_DO_EXPIRATION_DAYS",
"value": "1"
},
{
"name": "FIFTYONE_DO_EXPIRATION_MINUTES",
"value": ""
},
{
"name": "FIFTYONE_DO_REQUEUE_DELAY_MINUTES",
"value": "30"
},
{
"name": "FIFTYONE_DO_REQUEUE_MAX_ATTEMPTS",
"value": "3"
},
{
"name": "FIFTYONE_ENV",
"value": "production"
Expand Down Expand Up @@ -750,8 +774,8 @@ func (s *deploymentApiTemplateTest) TestContainerEnv() {
func(envVars []corev1.EnvVar) {
expectedEnvVarJSON := `[
{
"name": "API_EXTERNAL_URL",
"value": ""
"name": "API_EXTERNAL_URL",
"value": ""
},
{
"name": "CAS_BASE_URL",
Expand Down Expand Up @@ -802,14 +826,22 @@ func (s *deploymentApiTemplateTest) TestContainerEnv() {
}
}
},
{
"name": "FIFTYONE_DO_EXPIRATION_DAYS",
"value": "1"
},
{
"name": "FIFTYONE_DO_EXPIRATION_MINUTES",
"value": ""
},
{
"name": "FIFTYONE_DO_EXPIRATION_DAYS",
"value": "1"
},
{
"name": "FIFTYONE_DO_EXPIRATION_MINUTES",
"value": ""
},
{
"name": "FIFTYONE_DO_REQUEUE_DELAY_MINUTES",
"value": "30"
},
{
"name": "FIFTYONE_DO_REQUEUE_MAX_ATTEMPTS",
"value": "3"
},
{
"name": "FIFTYONE_ENV",
"value": "production"
Expand Down Expand Up @@ -898,14 +930,22 @@ func (s *deploymentApiTemplateTest) TestContainerEnv() {
}
}
},
{
"name": "FIFTYONE_DO_EXPIRATION_DAYS",
"value": "1"
},
{
"name": "FIFTYONE_DO_EXPIRATION_MINUTES",
"value": ""
},
{
"name": "FIFTYONE_DO_EXPIRATION_DAYS",
"value": "1"
},
{
"name": "FIFTYONE_DO_EXPIRATION_MINUTES",
"value": ""
},
{
"name": "FIFTYONE_DO_REQUEUE_DELAY_MINUTES",
"value": "30"
},
{
"name": "FIFTYONE_DO_REQUEUE_MAX_ATTEMPTS",
"value": "3"
},
{
"name": "FIFTYONE_ENV",
"value": "production"
Expand Down Expand Up @@ -994,14 +1034,22 @@ func (s *deploymentApiTemplateTest) TestContainerEnv() {
}
}
},
{
"name": "FIFTYONE_DO_EXPIRATION_DAYS",
"value": "1"
},
{
"name": "FIFTYONE_DO_EXPIRATION_MINUTES",
"value": ""
},
{
"name": "FIFTYONE_DO_EXPIRATION_DAYS",
"value": "1"
},
{
"name": "FIFTYONE_DO_EXPIRATION_MINUTES",
"value": ""
},
{
"name": "FIFTYONE_DO_REQUEUE_DELAY_MINUTES",
"value": "30"
},
{
"name": "FIFTYONE_DO_REQUEUE_MAX_ATTEMPTS",
"value": "3"
},
{
"name": "FIFTYONE_ENV",
"value": "production"
Expand Down
Loading