microscopic-continent-15083
10/05/2023, 4:35 PMadmin:
endpoint: dns:///flyte.somedomain.com
insecure: false
logger:
show-source: true
level: 0
storage:
type: stow
stow:
kind: google
config:
json: ""
project_id: brain-project # GCP Project ID
scopes: <https://www.googleapis.com/auth/devstorage.read_write>
container: bucket-flyte
Now, I want to trigger a workflow from a backend that is running inside the same cluster as Flyte, but I can’t figure out how I can get flytectl
to connect and trigger the workflow.
Among other things, I tried several flyte configs, but I always get some type of error. E.g.
Response: {"error":"invalid_client","error_description":"Client authentication failed (e.g., unknown client, no client authentication included, or unsupported authentication method)."}
Does anyone know how I could achieve this? What config could I use? Any help is much appreciated 🙏average-finland-92144
10/05/2023, 4:56 PMflyte-binary
or flyte-core
?microscopic-continent-15083
10/05/2023, 5:06 PMflyte-core
. I followed this instructions: GCP (GKE) Setupcrooked-apartment-11483
10/05/2023, 5:26 PMClientSecret
https://docs.flyte.org/en/latest/deployment/configuration/auth_setup.html#continuous-integration-ciaverage-finland-92144
10/05/2023, 5:31 PMDeviceFlow
?crooked-apartment-11483
10/05/2023, 5:33 PMmicroscopic-continent-15083
10/05/2023, 6:26 PMflytectl --admin.endpoint=dns:///flyte.somedomain.com --admin.clientId=...<http://apps.googleusercontent.com|apps.googleusercontent.com> --admin.clientSecretLocation=/home/joaquin/.flyte/client_secret --admin.insecure=false get workflows -p flytesnacks -d development
Not sure why it wasn't working earlier when I tried the same but on the flyte config.yaml
, probably I missed something.
Thanks a lot David and Mark, you did me a big favor!microscopic-continent-15083
10/06/2023, 5:45 AMection Info: [Endpoint: dns:///silosnap.silobrain.com, InsecureConnection?: false, AuthMode: ClientSecret]: rpc error: code = Unauthenticated desc = transport: per-RPC creds failed due to error: failed to get token: oauth2: cannot fetch token: 401 Unauthorized
Response: {"error":"invalid_client","error_description":"Client authentication failed (e.g., unknown client, no client authentication included, or unsupported authentication method)."}
{"json":{},"level":"error","msg":"Connection Info: [Endpoint: dns:///silosnap.silobrain.com, InsecureConnection?: false, AuthMode: ClientSecret]: rpc error: code = Unauthenticated desc = transport: per-RPC creds failed due to error: failed to get token: oauth2: cannot fetch token: 401 Unauthorized\nResponse: {\"error\":\"invalid_client\",\"error_description\":\"Client authentication failed (e.g., unknown client, no client authentication included, or unsupported authentication method).\"}","ts":"2023-10-06T08:24:46+03:00"}
Only works after logging in the browser:microscopic-continent-15083
10/06/2023, 5:47 AMmicroscopic-continent-15083
10/06/2023, 9:44 AMflytepropeller
client_id and secret. I wonder if I should have added the GCP Auth credentials here in the helm values when deploying:
secrets:
adminOauthClientCredentials:
# -- If enabled is true, helm will create and manage `flyte-secret-auth` and populate it with `clientSecret`.
# If enabled is false, it's up to the user to create `flyte-secret-auth`
enabled: true
# Use the non-encoded version of the random password
clientSecret: <secret>
clientId: flytepropeller
average-finland-92144
10/06/2023, 2:48 PMPKCE
instead of ClientSecret
, especially if you expect that a pyflyte
invocation prompts an auth screen on the browser.
From what I read, it seems like you plan to use Google only for Identity (OIDC) but keep using Flyte's internal auth server?microscopic-continent-15083
10/09/2023, 4:44 AMPKCE
, they get prompted to log in and can access correctly. The problem is that we want to trigger pipelines automatically from a nodejs backend, so no prompt screen possible here.flat-rain-15990
11/09/2023, 10:49 AMmicroscopic-continent-15083
12/08/2023, 9:22 AMflytepropeller
client_id and secret as a work around:
# flyte-config.yaml
admin:
endpoint: dns:///xxxx.com
clientId: flytepropeller
clientSecretLocation: /usr/api/app/keys/client_secret # file containing the secret
insecure: false
The flytepropeller
secret is the one created when deploying flyte following this instructions: https://docs.flyte.org/en/latest/deployment/configuration/auth_setup.htmlmicroscopic-continent-15083
12/08/2023, 9:26 AMflat-rain-15990
12/11/2023, 9:16 AMFlyte enables production-grade orchestration for machine learning workflows and data processing created to accelerate local workflows to production.
Powered by