arillso.container.fleet role – Manage Rancher Fleet GitRepos, Bundles, Clusters, and Workspaces

Note

This role is part of the arillso.container collection (version 1.0.2).

It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it use: ansible-galaxy collection install arillso.container.

To use it in a playbook, specify: arillso.container.fleet.

Entry point auth – Manage Fleet authentication secrets only

Synopsis

  • Manages Kubernetes secrets for GitRepo authentication

Parameters

Parameter

Comments

client_secret_name

string

Name of the Kubernetes secret for Git authentication

git_known_hosts

string

Known hosts for SSH authentication

git_ssh_private_key

string

SSH private key for authentication

git_token

string

Git token for authentication

git_username

string

Git username for token authentication

Authors

  • arillso Team

Entry point bundles – Manage Fleet Bundles only

Synopsis

  • Useful for direct Kubernetes manifest deployments

Parameters

Parameter

Comments

fleet_bundles

list / elements=dictionary

List of Fleet Bundles to manage

Default: []

Authors

  • arillso Team

Entry point clusters – Manage Fleet Clusters only

Synopsis

  • Useful for multi-cluster setup and management

Parameters

Parameter

Comments

fleet_clusters

list / elements=dictionary

List of Fleet Clusters to manage

Default: []

Authors

  • arillso Team

Entry point gitrepos – Manage Fleet GitRepos only

Synopsis

  • Useful for GitOps-focused deployments

Parameters

Parameter

Comments

fleet_gitrepos

list / elements=dictionary

List of Fleet GitRepos to manage

Default: []

Authors

  • arillso Team

Entry point main – Manage Rancher Fleet GitRepos, Bundles, Clusters, and Workspaces

Synopsis

  • This role manages Rancher Fleet resources on Kubernetes clusters

  • Supports GitOps-based continuous deployment workflows

  • Manages GitRepos, Bundles, Clusters, and Workspaces

Parameters

Parameter

Comments

fleet_api_version

string

Fleet API version to use

Default: "fleet.cattle.io/v1alpha1"

fleet_bundles

list / elements=dictionary

List of Fleet Bundles to manage

Default: []

annotations

dictionary

Additional annotations for the Bundle

Default: {}

correct_drift

dictionary

Drift correction configuration

enabled

boolean

Enable drift correction

Choices:

  • false ← (default)

  • true

force

boolean

Force drift correction

Choices:

  • false ← (default)

  • true

keep_fail_history

integer

Number of failed attempts to keep

Default: 1

create_namespace

boolean

Create namespace if it doesn’t exist

Choices:

  • false

  • true ← (default)

default_namespace

string

Default namespace for resources

depends_on

list / elements=dictionary

List of dependencies

Default: []

name

string / required

Name of the dependency

selector

dictionary

Dependency selector

diff

dictionary

Diff configuration

compare_patches

list / elements=dictionary

List of patches for comparison

Default: []

force_update

integer

Force sync generation number

Default: 0

helm

dictionary

Helm chart configuration

atomic

boolean

Atomic Helm operations

Choices:

  • false ← (default)

  • true

chart

string

Helm chart name or path

disable_pre_process

boolean

Disable pre-processing

Choices:

  • false ← (default)

  • true

force

boolean

Force Helm operations

Choices:

  • false ← (default)

  • true

max_history

integer

Maximum number of release history entries

Default: 5

release_name

string

Helm release name

repo

string

Helm repository URL

take_ownership

boolean

Take ownership of existing resources

Choices:

  • false ← (default)

  • true

timeout

string

Helm operation timeout

Default: "5m"

timeout_force_delete

boolean

Force delete on timeout

Choices:

  • false ← (default)

  • true

values

dictionary

Helm values

Default: {}

values_files

list / elements=string

List of Helm values files

Default: []

values_from

list / elements=dictionary

Helm values from secrets

Default: []

version

string

Helm chart version

keep_resources

boolean

Keep resources when Bundle is deleted

Choices:

  • false ← (default)

  • true

kustomize

dictionary

Kustomize configuration

dir

string

Kustomize directory path

labels

dictionary

Additional labels for the Bundle

Default: {}

name

string / required

Name of the Bundle resource

namespace

string

Kubernetes namespace for the Bundle

Default: "fleet-default"

paused

boolean

Pause Bundle deployment

Choices:

  • false ← (default)

  • true

resources

list / elements=dictionary

List of Kubernetes resources

Default: []

content

string / required

YAML content of the resource

name

string / required

Name of the resource

rollout_strategy

dictionary

Bundle rollout strategy

auto_partition_size

integer

Automatic partition size

Default: 0

max_unavailable

integer

Maximum unavailable replicas

Default: 1

max_unavailable_partitions

integer

Maximum unavailable partitions

Default: 0

partitions

list / elements=dictionary

List of rollout partitions

Default: []

service_account

string

Service account for Bundle operations

Default: "default"

target_namespace

string

Target namespace for Bundle deployment

target_restrictions

list / elements=dictionary

List of target restrictions

Default: []

targets

list / elements=dictionary

List of cluster targets for deployment

Keys are automatically transformed from snake_case to camelCase for Fleet API compatibility

Use snake_case notation (cluster_selector, match_labels) which will be converted to camelCase

Default: []

cluster_group

string

Cluster group name for targeting

cluster_group_selector

dictionary

Cluster group selector for targeting

cluster_selector

dictionary

Cluster selector for targeting

match_expressions

list / elements=dictionary

Match expressions for cluster selection

Default: []

match_labels

dictionary

Match labels for cluster selection

Default: {}

name

string

Name of the target (optional - defaults to ‘target000’ format if not specified)

yoda_mode

dictionary

Yoda mode configuration

enabled

boolean

Enable yoda mode

Choices:

  • false ← (default)

  • true

fleet_clusters

list / elements=dictionary

List of Fleet Clusters to manage

Default: []

agent_env_vars

list / elements=dictionary

Environment variables for Fleet agent

Default: []

agent_namespace

string

Namespace for Fleet agent

Default: "fleet-system"

agent_private_ca

string

Private CA for Fleet agent

agent_tls_mode

string

TLS mode for Fleet agent

Choices:

  • "system-store" ← (default)

  • "strict"

  • "skip"

annotations

dictionary

Additional annotations for the resource

Default: {}

client_id

string

Client ID for cluster authentication

create_namespace

boolean

Create namespace if it doesn’t exist

Choices:

  • false

  • true ← (default)

kubeconfig_secret

string

Secret containing kubeconfig for cluster access (optional for label-only mode)

kubeconfig_secret_namespace

string

Namespace of the kubeconfig secret

labels

dictionary

Additional labels for the resource

Default: {}

name

string / required

Name of the resource

namespace

string

Kubernetes namespace for the resource

Default: "fleet-default"

private_repo_url

string

Private repository URL

template_values

dictionary

Template values for cluster

Default: {}

fleet_defaults

dictionary

Global Fleet default values

Default: {"create_namespace": true, "force_update": false, "namespace": "fleet-default", "polling_interval": "15s", "service_account": "default"}

create_namespace

boolean

Create namespace by default

Choices:

  • false

  • true ← (default)

force_update

boolean

Default force update setting

Choices:

  • false ← (default)

  • true

namespace

string

Default namespace for Fleet resources

Default: "fleet-default"

polling_interval

string

Default polling interval

Default: "15s"

service_account

string

Default service account

Default: "default"

fleet_enable_bundles

boolean

Enable Fleet Bundle management

Choices:

  • false ← (default)

  • true

fleet_enable_gitrepos

boolean

Enable Fleet GitRepo management

Choices:

  • false ← (default)

  • true

fleet_gitrepos

list / elements=dictionary

List of Fleet GitRepos to manage

Default: []

annotations

dictionary

Additional annotations for the GitRepo

Default: {}

branch

string

Git branch to track

Default: "main"

ca_bundle

string

Base64 encoded CA bundle for git TLS verification

client_secret_name

string

Name of the Kubernetes secret for Git authentication

correct_drift

dictionary

Drift correction configuration

enabled

boolean

Enable drift correction

Choices:

  • false ← (default)

  • true

force

boolean

Force drift correction

Choices:

  • false ← (default)

  • true

keep_fail_history

integer

Number of failed attempts to keep

Default: 1

create_namespace

boolean

Create namespace if it doesn’t exist

Choices:

  • false

  • true ← (default)

disable_dependency_update

boolean

Disable automatic dependency updates

Choices:

  • false ← (default)

  • true

exclude_paths

list / elements=string

List of paths within repository to exclude

Default: []

force_update

integer

Force sync generation number

Default: 0

git_known_hosts

string

Known hosts for SSH authentication

git_ssh_private_key

string

SSH private key for authentication

git_token

string

Git token for authentication

git_username

string

Git username for token authentication

helm_repo_url_regex

string

Regex pattern for Helm repository URLs

helm_secret_name

string

Secret name for Helm repository authentication

image_scan_commit

dictionary

Image scanning and auto-commit configuration

author_email

string

Git commit author email

Default: "fleet@cattle.io"

author_name

string

Git commit author name

Default: "Fleet Image Updater"

enable

boolean

Enable image scanning

Choices:

  • false ← (default)

  • true

message_template

string

Git commit message template

image_scan_interval

string

Image scanning interval

insecure_skip_tls

boolean

Skip TLS verification for git repository

Choices:

  • false ← (default)

  • true

keep_resources

boolean

Keep resources when GitRepo is deleted

Choices:

  • false ← (default)

  • true

labels

dictionary

Additional labels for the GitRepo

Default: {}

name

string / required

Name of the GitRepo resource

namespace

string

Kubernetes namespace for the GitRepo

Default: "fleet-default"

paths

list / elements=string

List of paths within repository to include

Default: []

polling_interval

string

Polling interval for git repository changes

Default: "15s"

repository

string / required

Git repository URL

revision

string

Specific git revision/commit to track

service_account

string

Service account for GitRepo operations

Default: "default"

target_customizations

list / elements=dictionary

List of target-specific customizations

Default: []

cluster_selector

dictionary

Cluster selector for customization

helm

dictionary

Helm-specific customizations

values

dictionary

Helm values override

Default: {}

values_files

list / elements=string

List of Helm values files

Default: []

kustomize

dictionary

Kustomize-specific customizations

dir

string

Kustomize directory path

name

string / required

Name of the customization

targets

list / elements=dictionary

List of cluster targets for deployment

Keys are automatically transformed from snake_case to camelCase for Fleet API compatibility

Use snake_case notation (cluster_selector, match_labels) which will be converted to camelCase

Default: []

cluster_group

string

Cluster group name for targeting

cluster_group_selector

dictionary

Cluster group selector for targeting

cluster_selector

dictionary

Cluster selector for targeting

match_expressions

list / elements=dictionary

Match expressions for cluster selection

Default: []

match_labels

dictionary

Match labels for cluster selection

Default: {}

name

string

Name of the target (optional - defaults to ‘target000’ format if not specified)

fleet_registration_tokens

list / elements=dictionary

List of Fleet ClusterRegistrationTokens to manage

Default: []

annotations

dictionary

Additional annotations for the resource

Default: {}

create_namespace

boolean

Create namespace if it doesn’t exist

Choices:

  • false

  • true ← (default)

labels

dictionary

Additional labels for the resource

Default: {}

name

string / required

Name of the resource

namespace

string

Kubernetes namespace for the resource

Default: "fleet-default"

ttl

string

Time-to-live for the registration token

Default: "240h"

fleet_state

string

Desired state of Fleet resources

Choices:

  • "present" ← (default)

  • "absent"

fleet_validate_manifests

boolean

Validate Kubernetes manifests before applying

Choices:

  • false

  • true ← (default)

fleet_workspaces

list / elements=dictionary

List of Fleet Workspaces to manage

Default: []

annotations

dictionary

Additional annotations for the Workspace resource

Default: {}

description

string

Description of the workspace

display_name

string

Display name for the workspace

labels

dictionary

Additional labels for the Workspace resource

Default: {}

name

string / required

Name of the Workspace resource

Authors

  • arillso Team

Entry point registration_tokens – Manage Fleet ClusterRegistrationTokens only

Synopsis

  • Useful for agent-initiated cluster registration

Parameters

Parameter

Comments

fleet_registration_tokens

list / elements=dictionary

List of Fleet ClusterRegistrationTokens to manage

Default: []

Authors

  • arillso Team

Entry point workspaces – Manage Fleet Workspaces only

Synopsis

  • Useful for workspace organization and management

Parameters

Parameter

Comments

fleet_workspaces

list / elements=dictionary

List of Fleet Workspaces to manage

Default: []

Authors

  • arillso Team