Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a remote API generator #12368

Closed
scrocquesel opened this issue Feb 9, 2023 · 0 comments
Closed

Add a remote API generator #12368

scrocquesel opened this issue Feb 9, 2023 · 0 comments
Labels
component:application-sets Bulk application management related enhancement New feature or request

Comments

@scrocquesel
Copy link
Contributor

scrocquesel commented Feb 9, 2023

Summary

Provide a generator that request its value from a REST or gRPC server.

Motivation

The list of generators is growing fast but having the opportunity to build new one without touching argocd codebase would be even greater. The remote server can be deployed as a sidecar or be external (requiring authent).

For example, pull request generator is good but you may want to produce a value only when the pipeline attached to the PR is sucessful or a perticular job succeed.

server would receive a map of string,any and return a list of map of string,any like the list generator.

With gRPC, I guess that the server can also stream the response and the argocd client can cache the returned values to be available when applicationset controller reconcile.

Proposal

apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
  name: myapps
spec:
  generators:
  - APIProvider:
      gRPC:
          serverAddr: localhost:9999
          streaming: true
      Rest:
          url: http://foo.bar/banana
          tokenRef: ...
      params:
         param1: value
         param2: value
  template:
@scrocquesel scrocquesel added the enhancement New feature or request label Feb 9, 2023
@scrocquesel scrocquesel changed the title Add a gRPC generator Add a remote API generator Feb 9, 2023
@keithchong keithchong added the component:application-sets Bulk application management related label Feb 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:application-sets Bulk application management related enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants