Skip to main content

Overview

The ApplicationSet Service API manages ApplicationSet resources, which automatically generate multiple Applications from templates using generators. Base Path: /api/v1/applicationsets gRPC Service: applicationset.ApplicationSetService

ApplicationSet Resource

An ApplicationSet uses generators to create multiple Application resources from a single template.

ApplicationSet Spec

ApplicationSetGenerator[]
required
List of generators that produce parameters for the template
ApplicationSetTemplate
required
Template for generating Applications
ApplicationSetSyncPolicy
Sync policy for generated applications
ApplicationSetStrategy
Progressive rollout strategy
boolean
Use Go template syntax instead of fasttemplate (default: false)

Example ApplicationSet

API Operations

List ApplicationSets

Retrieve a list of ApplicationSets.
string[]
Filter by project names
string
Label selector
string
ApplicationSet namespace (default: argocd control plane namespace)

Get ApplicationSet

Retrieve a specific ApplicationSet.
string
required
ApplicationSet name
string
ApplicationSet namespace

Create ApplicationSet

Create a new ApplicationSet.
ApplicationSet
required
Complete ApplicationSet resource
boolean
Update if already exists (default: false)
boolean
Validate without creating (default: false)

Delete ApplicationSet

Delete an ApplicationSet.
string
required
ApplicationSet name
string
ApplicationSet namespace

Generator Operations

Generate Applications

Preview applications that would be generated by an ApplicationSet.
ApplicationSet
required
ApplicationSet to evaluate
Example Request:
Response:
Application[]
List of generated Application resources

Monitoring Operations

Get Resource Tree

Get the ApplicationSet’s resource hierarchy.
string
required
ApplicationSet name
string
ApplicationSet namespace

List Events

List Kubernetes events for the ApplicationSet.
string
required
ApplicationSet name

Watch ApplicationSets

Stream ApplicationSet change events.
string[]
Filter by projects
string
Label selector
string
Start watching from specific resource version

Generator Examples

List Generator

Cluster Generator

Git Directory Generator

Git Files Generator

Matrix Generator

SCM Provider Generator

Pull Request Generator

Template Variables

Common template variables available in ApplicationSet templates:

Cluster Generator Variables

  • {{name}} - Cluster name
  • {{server}} - Cluster API server URL
  • {{metadata.labels.*}} - Cluster labels
  • {{metadata.annotations.*}} - Cluster annotations

Git Generator Variables

  • {{path}} - Directory or file path
  • {{path.basename}} - Base name of path
  • {{path.filename}} - File name (files generator)
  • {{path[n]}} - Path segment at index n

List Generator Variables

All fields from element objects are available as variables.

Progressive Sync

Configure progressive rollout of generated applications:

Next Steps

Application API

Manage generated Applications

Cluster API

Register clusters for generators