From 192d770ff474a837acd727ebd0b5eea9e0a52b17 Mon Sep 17 00:00:00 2001 From: Raymond Chow Date: Wed, 27 Dec 2023 15:59:12 +1100 Subject: [PATCH] feat: Add support for using ephemeral credentials for S3 artifacts. Fixes #5446 (#5446) Signed-off-by: Raymond Chow --- api/jsonschema/schema.json | 8 + api/openapi-spec/swagger.json | 8 + docs/configure-artifact-repository.md | 186 +++++- docs/executor_swagger.md | 1 + docs/fields.md | 2 + go.mod | 32 +- go.sum | 66 ++- .../argoproj.io_clusterworkflowtemplates.yaml | 192 ++++++ .../crds/full/argoproj.io_cronworkflows.yaml | 192 ++++++ .../argoproj.io_workflowartifactgctasks.yaml | 24 + .../argoproj.io_workfloweventbindings.yaml | 12 + .../base/crds/full/argoproj.io_workflows.yaml | 516 ++++++++++++++++ .../full/argoproj.io_workflowtaskresults.yaml | 12 + .../full/argoproj.io_workflowtasksets.yaml | 96 +++ .../full/argoproj.io_workflowtemplates.yaml | 192 ++++++ .../argoproj.io_workflowtaskresults.yaml | 12 + manifests/quick-start-minimal.yaml | 12 + manifests/quick-start-mysql.yaml | 12 + manifests/quick-start-postgres.yaml | 12 + pkg/apis/workflow/v1alpha1/generated.pb.go | 554 ++++++++++-------- pkg/apis/workflow/v1alpha1/generated.proto | 3 + .../workflow/v1alpha1/openapi_generated.go | 18 + pkg/apis/workflow/v1alpha1/workflow_types.go | 3 + .../v1alpha1/zz_generated.deepcopy.go | 5 + pkg/plugins/executor/swagger.yml | 2 + .../IoArgoprojWorkflowV1alpha1S3Artifact.md | 1 + ...rojWorkflowV1alpha1S3ArtifactRepository.md | 1 + ..._argoproj_workflow_v1alpha1_s3_artifact.py | 4 + ...orkflow_v1alpha1_s3_artifact_repository.py | 4 + .../docs/ClusterWorkflowTemplateServiceApi.md | 300 ++++++++++ .../client/docs/CronWorkflowServiceApi.md | 300 ++++++++++ .../IoArgoprojWorkflowV1alpha1S3Artifact.md | 1 + ...rojWorkflowV1alpha1S3ArtifactRepository.md | 1 + sdks/python/client/docs/WorkflowServiceApi.md | 530 +++++++++++++++++ .../client/docs/WorkflowTemplateServiceApi.md | 300 ++++++++++ workflow/artifacts/artifacts.go | 10 + workflow/artifacts/artifacts_test.go | 64 ++ workflow/artifacts/s3/s3.go | 18 +- workflow/controller/workflowpod.go | 3 + workflow/controller/workflowpod_test.go | 87 +++ 40 files changed, 3469 insertions(+), 327 deletions(-) create mode 100644 workflow/artifacts/artifacts_test.go diff --git a/api/jsonschema/schema.json b/api/jsonschema/schema.json index a3e4fbe234a1..208bea6efd77 100644 --- a/api/jsonschema/schema.json +++ b/api/jsonschema/schema.json @@ -6475,6 +6475,10 @@ "$ref": "#/definitions/io.k8s.api.core.v1.SecretKeySelector", "description": "SecretKeySecret is the secret selector to the bucket's secret key" }, + "sessionTokenSecret": { + "$ref": "#/definitions/io.k8s.api.core.v1.SecretKeySelector", + "description": "SessionTokenSecret is used for credentials which are ephemeral (e.g. IAM assume role or S3 access grant)" + }, "useSDKCreds": { "description": "UseSDKCreds tells the driver to figure out credentials based on sdk defaults.", "type": "boolean" @@ -6532,6 +6536,10 @@ "$ref": "#/definitions/io.k8s.api.core.v1.SecretKeySelector", "description": "SecretKeySecret is the secret selector to the bucket's secret key" }, + "sessionTokenSecret": { + "$ref": "#/definitions/io.k8s.api.core.v1.SecretKeySelector", + "description": "SessionTokenSecret is used for credentials which are ephemeral (e.g. IAM assume role or S3 access grant)" + }, "useSDKCreds": { "description": "UseSDKCreds tells the driver to figure out credentials based on sdk defaults.", "type": "boolean" diff --git a/api/openapi-spec/swagger.json b/api/openapi-spec/swagger.json index d2b65f525926..b6fbace9add7 100644 --- a/api/openapi-spec/swagger.json +++ b/api/openapi-spec/swagger.json @@ -10416,6 +10416,10 @@ "description": "SecretKeySecret is the secret selector to the bucket's secret key", "$ref": "#/definitions/io.k8s.api.core.v1.SecretKeySelector" }, + "sessionTokenSecret": { + "description": "SessionTokenSecret is used for credentials which are ephemeral (e.g. IAM assume role or S3 access grant)", + "$ref": "#/definitions/io.k8s.api.core.v1.SecretKeySelector" + }, "useSDKCreds": { "description": "UseSDKCreds tells the driver to figure out credentials based on sdk defaults.", "type": "boolean" @@ -10473,6 +10477,10 @@ "description": "SecretKeySecret is the secret selector to the bucket's secret key", "$ref": "#/definitions/io.k8s.api.core.v1.SecretKeySelector" }, + "sessionTokenSecret": { + "description": "SessionTokenSecret is used for credentials which are ephemeral (e.g. IAM assume role or S3 access grant)", + "$ref": "#/definitions/io.k8s.api.core.v1.SecretKeySelector" + }, "useSDKCreds": { "description": "UseSDKCreds tells the driver to figure out credentials based on sdk defaults.", "type": "boolean" diff --git a/docs/configure-artifact-repository.md b/docs/configure-artifact-repository.md index 2261015a5abd..bb02690e935b 100644 --- a/docs/configure-artifact-repository.md +++ b/docs/configure-artifact-repository.md @@ -75,16 +75,20 @@ artifacts: ## Configuring AWS S3 -Create your bucket and access keys for the bucket. AWS access keys have the same -permissions as the user they are associated with. In particular, you cannot -create access keys with reduced scope. If you want to limit the permissions for -an access key, you will need to create a user with just the permissions you want -to associate with the access key. Otherwise, you can just create an access key -using your existing user account. +First, create your bucket: ```bash -$ export mybucket=bucket249 -$ cat > policy.json < policy.json < policy.json < access-key.json ``` If you do not have Artifact Garbage Collection configured, you should remove `s3:DeleteObject` from the list of Actions above. -NOTE: if you want argo to figure out which region your buckets belong in, you -must additionally set the following statement policy. Otherwise, you must -specify a bucket region in your workflow configuration. +!!! Note "Discovering bucket regions" + If you want Argo Workflows to figure out which region your buckets belong in, you must additionally set the following statement policy. + Otherwise, you must specify a bucket region in your workflow configuration. ```json { - "Effect":"Allow", - "Action":[ + "Effect":"Allow", + "Action":[ "s3:GetBucketLocation" - ], - "Resource":"arn:aws:s3:::*" + ], + "Resource":"arn:aws:s3:::*" } ... ``` -### AWS S3 IRSA +#### AWS S3 IRSA + +IAM Roles for Service Accounts (IRSA) is the recommended Kubernetes native mechanism to authenticate to S3. +If you are using EKS, follow [the IRSA setup guide](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html). +If not, follow the [Pod Identity Webhook self-hosted setup guide](https://github.com/aws/amazon-eks-pod-identity-webhook/blob/master/SELF_HOSTED_SETUP.md). -If you wish to use S3 IRSA instead of passing in an `accessKey` and `secretKey`, you need to annotate the service account of both the running workflow (in order to save logs/artifacts) and the argo-server pod (in order to retrieve the logs/artifacts). +With the bucket and policy as described above, create an IAM role and add the policy: + +```bash +aws iam create-role --role-name $mybucket-role +aws iam put-role-policy --role-name $mybucket-user --policy-name $mybucket-policy --policy-document file://policy.json +``` + +To use S3 IRSA, you need to annotate the service account of both the running workflow (in order to save logs/artifacts) and the argo-server pod (in order to retrieve the logs/artifacts). +You can attach only one IAM role to a service account, so your roles must have permission for all buckets you may wish to use. ```yaml apiVersion: v1 kind: ServiceAccount metadata: annotations: - eks.amazonaws.com/role-arn: arn:aws:iam::012345678901:role/mybucket + eks.amazonaws.com/role-arn: arn:aws:iam::012345678901:role/mybucket-role name: myserviceaccount namespace: mynamespace ``` +Use the service account in a workflow: + +```yaml +apiVersion: argoproj.io/v1alpha1 +kind: Workflow +spec: + serviceAccountName: myserviceaccount +``` + +#### AWS S3 with IAM Access Keys + +!!! Note "Least privilege user" + To reduce the privileges of an access key, create a user with only the necessary permissions and no more. + +With the bucket and policy described above, create an IAM user and add the policy: + +```bash +aws iam create-user --user-name $mybucket-user +aws iam put-user-policy --user-name $mybucket-user --policy-name $mybucket-policy --policy-document file://policy.json +aws iam create-access-key --user-name $mybucket-user > access-key.json +``` + +Configure an artifact with the access keys: + +```yaml +artifacts: + - name: my-output-artifact + path: /my-output-artifact + s3: + endpoint: s3.amazonaws.com + bucket: my-s3-bucket + key: path/in/bucket/my-output-artifact.tgz + # The following fields are secret selectors. + # They reference the k8s secret named 'my-s3-credentials'. + # This secret is expected to have the keys 'accessKey' and 'secretKey', + # containing the base64 encoded credentials to the bucket. + accessKeySecret: + name: my-s3-credentials + key: accessKey + secretKeySecret: + name: my-s3-credentials + key: secretKey +``` + +#### AWS S3 with IAM Assume Role + +> v3.6 and after + +You can use an [IAM role](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) for temporary access. + +With the bucket and policy described above, create an IAM role and add the policy: + +```bash +aws iam create-role --role-name $mybucket-role +aws iam put-role-policy --role-name $mybucket-user --policy-name $mybucket-policy --policy-document file://policy.json +``` + +Retrieve the role credentials: + +```bash +aws sts assume-role --role-arn arn:aws:iam::012345678901:role/$mybucket-role +``` + +Configure an artifact with the credentials: + +```yaml +artifacts: + - name: my-output-artifact + path: /my-output-artifact + s3: + endpoint: s3.amazonaws.com + bucket: my-s3-bucket + key: path/in/bucket/my-output-artifact.tgz + # The following fields are secret selectors. + # They reference the k8s secret named 'my-s3-credentials'. + # This secret is expected to have the keys 'accessKey', 'secretKey', and 'sessionToken', + # containing the base64 encoded credentials to the bucket. + accessKeySecret: + name: my-s3-credentials + key: accessKey + secretKeySecret: + name: my-s3-credentials + key: secretKey + sessionTokenSecret: + name: my-s3-credentials + key: sessionToken +``` + +!!! Note "Temporary" + IAM role credentials are temporary, so you must refresh them periodically via an external mechanism. + Argo will not refresh them for you. + +### AWS S3 Non-IAM Access + +#### AWS S3 with Access Grants + +> v3.6 and after + +You can use [S3 Access Grants](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants.html) for temporary, reduced scope access. +Follow the [AWS guide](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-get-started.html) to set this up in your AWS account and retrieve access grant credentials. + +Configure an artifact with the access grant credentials: + +```yaml +artifacts: + - name: my-output-artifact + path: /my-output-artifact + s3: + endpoint: s3.amazonaws.com + bucket: my-s3-bucket + key: path/in/bucket/my-output-artifact.tgz + # The following fields are secret selectors. + # They reference the k8s secret named 'my-s3-credentials'. + # This secret is expected to have the keys 'accessKey', 'secretKey', and 'sessionToken', + # containing the base64 encoded credentials to the bucket. + accessKeySecret: + name: my-s3-credentials + key: accessKey + secretKeySecret: + name: my-s3-credentials + key: secretKey + sessionTokenSecret: + name: my-s3-credentials + key: sessionToken +``` + +!!! Note "Temporary" + S3 Access Grants are temporary, so you must refresh them periodically via an external mechanism. + Argo will not refresh them for you. + ## Configuring GCS (Google Cloud Storage) Create a bucket from the GCP Console diff --git a/docs/executor_swagger.md b/docs/executor_swagger.md index 2e35fbabe2db..1ba1578dc418 100644 --- a/docs/executor_swagger.md +++ b/docs/executor_swagger.md @@ -3139,6 +3139,7 @@ cause implementors to also use a fixed point implementation. | region | string| `string` | | | Region contains the optional bucket region | | | roleARN | string| `string` | | | RoleARN is the Amazon Resource Name (ARN) of the role to assume. | | | secretKeySecret | [SecretKeySelector](#secret-key-selector)| `SecretKeySelector` | | | | | +| sessionTokenSecret | [SecretKeySelector](#secret-key-selector)| `SecretKeySelector` | | | | | | useSDKCreds | boolean| `bool` | | | UseSDKCreds tells the driver to figure out credentials based on sdk defaults. | | diff --git a/docs/fields.md b/docs/fields.md index b6bce771b4b5..7b341b967d5b 100644 --- a/docs/fields.md +++ b/docs/fields.md @@ -3526,6 +3526,7 @@ S3Artifact is the location of an S3 artifact |`region`|`string`|Region contains the optional bucket region| |`roleARN`|`string`|RoleARN is the Amazon Resource Name (ARN) of the role to assume.| |`secretKeySecret`|[`SecretKeySelector`](#secretkeyselector)|SecretKeySecret is the secret selector to the bucket's secret key| +|`sessionTokenSecret`|[`SecretKeySelector`](#secretkeyselector)|SessionTokenSecret is used for credentials which are ephemeral (e.g. IAM assume role or S3 access grant)| |`useSDKCreds`|`boolean`|UseSDKCreds tells the driver to figure out credentials based on sdk defaults.| ## ValueFrom @@ -4246,6 +4247,7 @@ S3ArtifactRepository defines the controller configuration for an S3 artifact rep |`region`|`string`|Region contains the optional bucket region| |`roleARN`|`string`|RoleARN is the Amazon Resource Name (ARN) of the role to assume.| |`secretKeySecret`|[`SecretKeySelector`](#secretkeyselector)|SecretKeySecret is the secret selector to the bucket's secret key| +|`sessionTokenSecret`|[`SecretKeySelector`](#secretkeyselector)|SessionTokenSecret is used for credentials which are ephemeral (e.g. IAM assume role or S3 access grant)| |`useSDKCreds`|`boolean`|UseSDKCreds tells the driver to figure out credentials based on sdk defaults.| ## MutexHolding diff --git a/go.mod b/go.mod index 88f023089b8c..de8d29714521 100644 --- a/go.mod +++ b/go.mod @@ -13,7 +13,7 @@ require ( github.com/aliyun/aliyun-oss-go-sdk v3.0.2+incompatible github.com/aliyun/credentials-go v1.3.2 github.com/argoproj/argo-events v1.9.1 - github.com/argoproj/pkg v0.13.7-0.20240208112602-3bb8fe9a0527 + github.com/argoproj/pkg v0.13.7-0.20240704113442-a69fd34a8117 github.com/blushft/go-diagrams v0.0.0-20201006005127-c78c821223d9 github.com/colinmarc/hdfs/v2 v2.4.0 github.com/coreos/go-oidc/v3 v3.9.0 @@ -46,7 +46,7 @@ require ( github.com/sirupsen/logrus v1.9.3 github.com/skratchdot/open-golang v0.0.0-20200116055534-eef842397966 github.com/soheilhy/cmux v0.1.5 - github.com/spf13/cobra v1.8.0 + github.com/spf13/cobra v1.8.1 github.com/spf13/pflag v1.0.5 github.com/spf13/viper v1.18.2 github.com/stretchr/testify v1.9.0 @@ -87,8 +87,8 @@ require ( dario.cat/mergo v1.0.0 // indirect github.com/TylerBrock/colorjson v0.0.0-20200706003622-8a50f05110d2 // indirect github.com/alibabacloud-go/debug v0.0.0-20190504072949-9472017b5c68 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4 // indirect - github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.7 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.3 // indirect + github.com/aws/aws-sdk-go-v2/service/ssooidc v1.26.2 // indirect github.com/cenkalti/backoff/v4 v4.2.1 // indirect github.com/cloudflare/circl v1.3.7 // indirect github.com/containerd/stargz-snapshotter/estargz v0.14.3 // indirect @@ -165,25 +165,25 @@ require ( github.com/ajg/form v1.5.1 // indirect github.com/andybalholm/brotli v1.0.4 // indirect github.com/awalterschulze/gographviz v0.0.0-20200901124122-0eecad45bd71 // indirect - github.com/aws/aws-sdk-go-v2 v1.24.1 // indirect - github.com/aws/aws-sdk-go-v2/config v1.26.6 // indirect - github.com/aws/aws-sdk-go-v2/credentials v1.16.16 // indirect - github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.11 // indirect - github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.10 // indirect - github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.10 // indirect - github.com/aws/aws-sdk-go-v2/internal/ini v1.7.3 // indirect + github.com/aws/aws-sdk-go-v2 v1.30.1 // indirect + github.com/aws/aws-sdk-go-v2/config v1.27.23 // indirect + github.com/aws/aws-sdk-go-v2/credentials v1.17.24 // indirect + github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.9 // indirect + github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.13 // indirect + github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.13 // indirect + github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 // indirect github.com/aws/aws-sdk-go-v2/service/ecr v1.17.8 // indirect github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.13.8 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.10 // indirect - github.com/aws/aws-sdk-go-v2/service/sso v1.18.7 // indirect - github.com/aws/aws-sdk-go-v2/service/sts v1.26.7 // indirect - github.com/aws/smithy-go v1.19.0 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.15 // indirect + github.com/aws/aws-sdk-go-v2/service/sso v1.22.1 // indirect + github.com/aws/aws-sdk-go-v2/service/sts v1.30.1 // indirect + github.com/aws/smithy-go v1.20.3 // indirect github.com/awslabs/amazon-ecr-credential-helper/ecr-login v0.0.0-20220706184558-ce46abcd012b // indirect github.com/beorn7/perks v1.0.1 // indirect github.com/cespare/xxhash/v2 v2.2.0 // indirect github.com/chai2010/gettext-go v1.0.2 // indirect github.com/chrismellard/docker-credential-acr-env v0.0.0-20220327082430-c57b701bfc08 // indirect - github.com/cpuguy83/go-md2man/v2 v2.0.3 // indirect + github.com/cpuguy83/go-md2man/v2 v2.0.4 // indirect github.com/creack/pty v1.1.21 github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/daviddengcn/go-colortext v1.0.0 // indirect diff --git a/go.sum b/go.sum index 811b33266eff..7993e81e4bbc 100644 --- a/go.sum +++ b/go.sum @@ -107,53 +107,55 @@ github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuW github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/argoproj/argo-events v1.9.1 h1:X7Sp8Xrj6OlUtrHJyJLOt6flzRwOAsKUifnf/sLJDac= github.com/argoproj/argo-events v1.9.1/go.mod h1:yPwsLeU/Vp9nAEd4OBT8fOMEbIrmuvC4SIIqx5uJnxY= -github.com/argoproj/pkg v0.13.7-0.20240208112602-3bb8fe9a0527 h1:Sq4xHtuYWOcEoAns6YiEnA3qseOl/l1Vztlwb7BZJm0= -github.com/argoproj/pkg v0.13.7-0.20240208112602-3bb8fe9a0527/go.mod h1:5oQLcU9v8FllFnNfbonIW9xl/HISAreJCd7TxQzp7g4= +github.com/argoproj/pkg v0.13.7-0.20240704113442-a69fd34a8117 h1:iOmb5RDUnQ80ZLaBYCbfgNxMJ7qC0boM267nlzMyFjo= +github.com/argoproj/pkg v0.13.7-0.20240704113442-a69fd34a8117/go.mod h1:mwXbiH0ojJzbstR8XV9Ha/dK4IHHTKfgkQi2Kz8Aq0Y= github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio= github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= github.com/awalterschulze/gographviz v0.0.0-20200901124122-0eecad45bd71 h1:m3N1Fv5vE5IcxuTOGFGGV0grrVFHV8UY2SV0wSBXAC8= github.com/awalterschulze/gographviz v0.0.0-20200901124122-0eecad45bd71/go.mod h1:/ynarkO/43wP/JM2Okn61e8WFMtdbtA8he7GJxW+SFM= github.com/aws/aws-sdk-go-v2 v1.16.7/go.mod h1:6CpKuLXg2w7If3ABZCl/qZ6rEgwtjZTn4eAf4RcEyuw= -github.com/aws/aws-sdk-go-v2 v1.24.1 h1:xAojnj+ktS95YZlDf0zxWBkbFtymPeDP+rvUQIH3uAU= -github.com/aws/aws-sdk-go-v2 v1.24.1/go.mod h1:LNh45Br1YAkEKaAqvmE1m8FUx6a5b/V0oAKV7of29b4= +github.com/aws/aws-sdk-go-v2 v1.30.1 h1:4y/5Dvfrhd1MxRDD77SrfsDaj8kUkkljU7XE83NPV+o= +github.com/aws/aws-sdk-go-v2 v1.30.1/go.mod h1:nIQjQVp5sfpQcTc9mPSr1B0PaWK5ByX9MOoDadSN4lc= github.com/aws/aws-sdk-go-v2/config v1.15.13/go.mod h1:AcMu50uhV6wMBUlURnEXhr9b3fX6FLSTlEV89krTEGk= -github.com/aws/aws-sdk-go-v2/config v1.26.6 h1:Z/7w9bUqlRI0FFQpetVuFYEsjzE3h7fpU6HuGmfPL/o= -github.com/aws/aws-sdk-go-v2/config v1.26.6/go.mod h1:uKU6cnDmYCvJ+pxO9S4cWDb2yWWIH5hra+32hVh1MI4= +github.com/aws/aws-sdk-go-v2/config v1.27.23 h1:Cr/gJEa9NAS7CDAjbnB7tHYb3aLZI2gVggfmSAasDac= +github.com/aws/aws-sdk-go-v2/config v1.27.23/go.mod h1:WMMYHqLCFu5LH05mFOF5tsq1PGEMfKbu083VKqLCd0o= github.com/aws/aws-sdk-go-v2/credentials v1.12.8/go.mod h1:P2Hd4Sy7mXRxPNcQMPBmqszSJoDXexX8XEDaT6lucO0= -github.com/aws/aws-sdk-go-v2/credentials v1.16.16 h1:8q6Rliyv0aUFAVtzaldUEcS+T5gbadPbWdV1WcAddK8= -github.com/aws/aws-sdk-go-v2/credentials v1.16.16/go.mod h1:UHVZrdUsv63hPXFo1H7c5fEneoVo9UXiz36QG1GEPi0= +github.com/aws/aws-sdk-go-v2/credentials v1.17.23/go.mod h1:V/DvSURn6kKgcuKEk4qwSwb/fZ2d++FFARtWSbXnLqY= +github.com/aws/aws-sdk-go-v2/credentials v1.17.24 h1:YclAsrnb1/GTQNt2nzv+756Iw4mF8AOzcDfweWwwm/M= +github.com/aws/aws-sdk-go-v2/credentials v1.17.24/go.mod h1:Hld7tmnAkoBQdTMNYZGzztzKRdA4fCdn9L83LOoigac= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.12.8/go.mod h1:oL1Q3KuCq1D4NykQnIvtRiBGLUXhcpY5pl6QZB2XEPU= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.11 h1:c5I5iH+DZcH3xOIMlz3/tCKJDaHFwYEmxvlh2fAcFo8= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.11/go.mod h1:cRrYDYAMUohBJUtUnOhydaMHtiK/1NZ0Otc9lIb6O0Y= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.9 h1:Aznqksmd6Rfv2HQN9cpqIV/lQRMaIpJkLLaJ1ZI76no= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.9/go.mod h1:WQr3MY7AxGNxaqAtsDWn+fBxmd4XvLkzeqQ8P1VM0/w= github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.14/go.mod h1:kdjrMwHwrC3+FsKhNcCMJ7tUVj/8uSD5CZXeQ4wV6fM= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.10 h1:vF+Zgd9s+H4vOXd5BMaPWykta2a6Ih0AKLq/X6NYKn4= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.10/go.mod h1:6BkRjejp/GR4411UGqkX8+wFMbFbqsUIimfK4XjOKR4= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.13 h1:5SAoZ4jYpGH4721ZNoS1znQrhOfZinOhc4XuTXx/nVc= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.13/go.mod h1:+rdA6ZLpaSeM7tSg/B0IEDinCIBJGmW8rKDFkYpP04g= github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.8/go.mod h1:ZIV8GYoC6WLBW5KGs+o4rsc65/ozd+eQ0L31XF5VDwk= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.10 h1:nYPe006ktcqUji8S2mqXf9c/7NdiKriOwMvWQHgYztw= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.10/go.mod h1:6UV4SZkVvmODfXKql4LCbaZUpF7HO2BX38FgBf9ZOLw= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.13 h1:WIijqeaAO7TYFLbhsZmi2rgLEAtWOC1LhxCAVTJlSKw= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.13/go.mod h1:i+kbfa76PQbWw/ULoWnp51EYVWH4ENln76fLQE3lXT8= github.com/aws/aws-sdk-go-v2/internal/ini v1.3.15/go.mod h1:Tkrthp/0sNBShQQsamR7j/zY4p19tVTAs+nnqhH6R3c= -github.com/aws/aws-sdk-go-v2/internal/ini v1.7.3 h1:n3GDfwqF2tzEkXlv5cuy4iy7LpKDtqDMcNLfZDu9rls= -github.com/aws/aws-sdk-go-v2/internal/ini v1.7.3/go.mod h1:6fQQgfuGmw8Al/3M2IgIllycxV7ZW7WCdVSqfBeUiCY= +github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 h1:hT8rVHwugYE2lEfdFE0QWVo81lF7jMrYJVDWI+f+VxU= +github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0/go.mod h1:8tu/lYfQfFe6IGnaOdrpVgEL2IrrDOf6/m9RQum4NkY= github.com/aws/aws-sdk-go-v2/service/ecr v1.17.8 h1:wgZo/yeY0f+2RWy2q1rTtZSPMmq37Zy3pY4QypHeurg= github.com/aws/aws-sdk-go-v2/service/ecr v1.17.8/go.mod h1:ItZADKTnGxqcqXABHyNpoBljQ8ORt4h+D39RToM/3Ds= github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.13.8 h1:uByYzUJNBrI4LN0H+HMA7yrDWQxe2f9cF7ZkiXltXRo= github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.13.8/go.mod h1:nPSH6Ebmb3OkKl7+CLSjx+SMBaoFKbOe9mZhTAd352k= -github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4 h1:/b31bi3YVNlkzkBrm9LfpaKoaYZUxIAj4sHfOTmLfqw= -github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4/go.mod h1:2aGXHFmbInwgP9ZfpmdIfOELL79zhdNYNmReK8qDfdQ= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.3 h1:dT3MqvGhSoaIhRseqw2I0yH81l7wiR2vjs57O51EAm8= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.3/go.mod h1:GlAeCkHwugxdHaueRr4nhPuY+WW+gR8UjlcqzPr1SPI= github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.8/go.mod h1:rDVhIMAX9N2r8nWxDUlbubvvaFMnfsm+3jAV7q+rpM4= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.10 h1:DBYTXwIGQSGs9w4jKm60F5dmCQ3EEruxdc0MFh+3EY4= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.10/go.mod h1:wohMUQiFdzo0NtxbBg0mSRGZ4vL3n0dKjLTINdcIino= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.15 h1:I9zMeF107l0rJrpnHpjEiiTSCKYAIw8mALiXcPsGBiA= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.15/go.mod h1:9xWJ3Q/S6Ojusz1UIkfycgD1mGirJfLLKqq3LPT7WN8= github.com/aws/aws-sdk-go-v2/service/sso v1.11.11/go.mod h1:MO4qguFjs3wPGcCSpQ7kOFTwRvb+eu+fn+1vKleGHUk= -github.com/aws/aws-sdk-go-v2/service/sso v1.18.7 h1:eajuO3nykDPdYicLlP3AGgOyVN3MOlFmZv7WGTuJPow= -github.com/aws/aws-sdk-go-v2/service/sso v1.18.7/go.mod h1:+mJNDdF+qiUlNKNC3fxn74WWNN+sOiGOEImje+3ScPM= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.7 h1:QPMJf+Jw8E1l7zqhZmMlFw6w1NmfkfiSK8mS4zOx3BA= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.7/go.mod h1:ykf3COxYI0UJmxcfcxcVuz7b6uADi1FkiUz6Eb7AgM8= +github.com/aws/aws-sdk-go-v2/service/sso v1.22.1 h1:p1GahKIjyMDZtiKoIn0/jAj/TkMzfzndDv5+zi2Mhgc= +github.com/aws/aws-sdk-go-v2/service/sso v1.22.1/go.mod h1:/vWdhoIoYA5hYoPZ6fm7Sv4d8701PiG5VKe8/pPJL60= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.26.1/go.mod h1:xyFHA4zGxgYkdD73VeezHt3vSKEG9EmFnGwoKlP00u4= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.26.2 h1:ORnrOK0C4WmYV/uYt3koHEWBLYsRDwk2Np+eEoyV4Z0= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.26.2/go.mod h1:xyFHA4zGxgYkdD73VeezHt3vSKEG9EmFnGwoKlP00u4= github.com/aws/aws-sdk-go-v2/service/sts v1.16.9/go.mod h1:O1IvkYxr+39hRf960Us6j0x1P8pDqhTX+oXM5kQNl/Y= -github.com/aws/aws-sdk-go-v2/service/sts v1.26.7 h1:NzO4Vrau795RkUdSHKEwiR01FaGzGOH1EETJ+5QHnm0= -github.com/aws/aws-sdk-go-v2/service/sts v1.26.7/go.mod h1:6h2YuIoxaMSCFf5fi1EgZAwdfkGMgDY+DVfa61uLe4U= +github.com/aws/aws-sdk-go-v2/service/sts v1.30.1 h1:+woJ607dllHJQtsnJLi52ycuqHMwlW+Wqm2Ppsfp4nQ= +github.com/aws/aws-sdk-go-v2/service/sts v1.30.1/go.mod h1:jiNR3JqT15Dm+QWq2SRgh0x0bCNSRP2L25+CqPNpJlQ= github.com/aws/smithy-go v1.12.0/go.mod h1:Tg+OJXh4MB2R/uN61Ko2f6hTZwB/ZYGOtib8J3gBHzA= -github.com/aws/smithy-go v1.19.0 h1:KWFKQV80DpP3vJrrA9sVAHQ5gc2z8i4EzrLhLlWXcBM= -github.com/aws/smithy-go v1.19.0/go.mod h1:NukqUGpCZIILqqiV0NIjeFh24kd/FAa4beRb6nbIUPE= +github.com/aws/smithy-go v1.20.3 h1:ryHwveWzPV5BIof6fyDvor6V3iUL7nTfiTKXHiW05nE= +github.com/aws/smithy-go v1.20.3/go.mod h1:krry+ya/rV9RDcV/Q16kpu6ypI4K2czasz0NC3qS14E= github.com/awslabs/amazon-ecr-credential-helper/ecr-login v0.0.0-20220706184558-ce46abcd012b h1:+I25t8HCatBZtvU9bFugfi8Y2zCpKUVcTRaeC0oOHOk= github.com/awslabs/amazon-ecr-credential-helper/ecr-login v0.0.0-20220706184558-ce46abcd012b/go.mod h1:wHkLB7jZX+7D2RArMnwuFMvrLENsgd6zrwBEJo863aQ= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= @@ -196,8 +198,8 @@ github.com/coreos/go-oidc/v3 v3.9.0/go.mod h1:rTKz2PYwftcrtoCzV5g5kvfJoWcm0Mk8AF github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= -github.com/cpuguy83/go-md2man/v2 v2.0.3 h1:qMCsGGgs+MAzDFyp9LpAe1Lqy/fY/qCovCm0qnXZOBM= -github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/cpuguy83/go-md2man/v2 v2.0.4 h1:wfIWP927BUkWJb2NmU/kNDYIBTh/ziUX91+lVfRxZq4= +github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= github.com/creack/pty v1.1.21 h1:1/QdRyBaHHJP61QkWMXlOIBfsgdDeeKfK8SYVUWJKf0= github.com/creack/pty v1.1.21/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4= @@ -763,8 +765,8 @@ github.com/spf13/afero v1.11.0/go.mod h1:GH9Y3pIexgf1MTIWtNGyogA5MwRIDXGUr+hbWNo github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= github.com/spf13/cast v1.6.0 h1:GEiTHELF+vaR5dhz3VqZfFSzZjYbgeKDpBxQVS4GYJ0= github.com/spf13/cast v1.6.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= -github.com/spf13/cobra v1.8.0 h1:7aJaZx1B85qltLMc546zn58BxxfZdR/W22ej9CFoEf0= -github.com/spf13/cobra v1.8.0/go.mod h1:WXLWApfZ71AjXPya3WOlMsY9yMs7YeiHhFVlvLyhcho= +github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM= +github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y= github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= diff --git a/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml b/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml index 78a364fb9e80..19dbafa5f8a7 100644 --- a/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml +++ b/manifests/base/crds/full/argoproj.io_clusterworkflowtemplates.yaml @@ -918,6 +918,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -1569,6 +1581,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -2792,6 +2816,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -4579,6 +4615,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -5178,6 +5226,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -5828,6 +5888,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -7046,6 +7118,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -7736,6 +7820,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -8346,6 +8442,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -11278,6 +11386,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -13065,6 +13185,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -13664,6 +13796,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -14314,6 +14458,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -15532,6 +15688,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -16222,6 +16390,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -16832,6 +17012,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object diff --git a/manifests/base/crds/full/argoproj.io_cronworkflows.yaml b/manifests/base/crds/full/argoproj.io_cronworkflows.yaml index 3bd8d118f6a0..0c5c63b69292 100644 --- a/manifests/base/crds/full/argoproj.io_cronworkflows.yaml +++ b/manifests/base/crds/full/argoproj.io_cronworkflows.yaml @@ -950,6 +950,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -1601,6 +1613,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -2824,6 +2848,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -4611,6 +4647,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -5210,6 +5258,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -5860,6 +5920,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -7078,6 +7150,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -7768,6 +7852,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -8378,6 +8474,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -11310,6 +11418,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -13097,6 +13217,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -13696,6 +13828,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -14346,6 +14490,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -15564,6 +15720,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -16254,6 +16422,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -16864,6 +17044,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object diff --git a/manifests/base/crds/full/argoproj.io_workflowartifactgctasks.yaml b/manifests/base/crds/full/argoproj.io_workflowartifactgctasks.yaml index e3f6bbaef9d6..a5159b6731a2 100644 --- a/manifests/base/crds/full/argoproj.io_workflowartifactgctasks.yaml +++ b/manifests/base/crds/full/argoproj.io_workflowartifactgctasks.yaml @@ -492,6 +492,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -1015,6 +1027,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object diff --git a/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml b/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml index 231cb76e2455..978523a961aa 100644 --- a/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml +++ b/manifests/base/crds/full/argoproj.io_workfloweventbindings.yaml @@ -556,6 +556,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object diff --git a/manifests/base/crds/full/argoproj.io_workflows.yaml b/manifests/base/crds/full/argoproj.io_workflows.yaml index d0c5aa874f0d..6965f9d8ed8d 100644 --- a/manifests/base/crds/full/argoproj.io_workflows.yaml +++ b/manifests/base/crds/full/argoproj.io_workflows.yaml @@ -932,6 +932,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -1583,6 +1595,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -2806,6 +2830,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -4593,6 +4629,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -5192,6 +5240,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -5842,6 +5902,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -7060,6 +7132,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -7750,6 +7834,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -8360,6 +8456,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -11292,6 +11400,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -13079,6 +13199,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -13678,6 +13810,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -14328,6 +14472,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -15546,6 +15702,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -16236,6 +16404,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -16846,6 +17026,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -20148,6 +20340,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -20724,6 +20928,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -21335,6 +21551,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -21964,6 +22192,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -23589,6 +23829,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -25376,6 +25628,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -25975,6 +26239,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -26625,6 +26901,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -27843,6 +28131,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -28533,6 +28833,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -29143,6 +29455,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -32133,6 +32457,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -32784,6 +33120,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -34007,6 +34355,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -35794,6 +36154,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -36393,6 +36765,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -37043,6 +37427,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -38261,6 +38657,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -38951,6 +39359,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -39561,6 +39981,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -42493,6 +42925,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -44280,6 +44724,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -44879,6 +45335,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -45529,6 +45997,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -46747,6 +47227,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -47437,6 +47929,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -48047,6 +48551,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object diff --git a/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml b/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml index aeec5895278a..ee65195f8dc0 100644 --- a/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml +++ b/manifests/base/crds/full/argoproj.io_workflowtaskresults.yaml @@ -545,6 +545,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object diff --git a/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml b/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml index 9f4475e344ee..c7a11e28daa7 100644 --- a/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml +++ b/manifests/base/crds/full/argoproj.io_workflowtasksets.yaml @@ -862,6 +862,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -2649,6 +2661,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -3248,6 +3272,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -3898,6 +3934,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -5116,6 +5164,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -5806,6 +5866,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -6416,6 +6488,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -9042,6 +9126,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object diff --git a/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml b/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml index e971cf10d51c..b5f5ef2b7087 100644 --- a/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml +++ b/manifests/base/crds/full/argoproj.io_workflowtemplates.yaml @@ -917,6 +917,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -1568,6 +1580,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -2791,6 +2815,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -4578,6 +4614,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -5177,6 +5225,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -5827,6 +5887,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -7045,6 +7117,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -7735,6 +7819,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -8345,6 +8441,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -11277,6 +11385,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -13064,6 +13184,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -13663,6 +13795,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -14313,6 +14457,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -15531,6 +15687,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -16221,6 +16389,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object @@ -16831,6 +17011,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object diff --git a/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml b/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml index d780482c22e6..ac69b77df9dc 100644 --- a/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml +++ b/manifests/base/crds/minimal/argoproj.io_workflowtaskresults.yaml @@ -544,6 +544,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object diff --git a/manifests/quick-start-minimal.yaml b/manifests/quick-start-minimal.yaml index 84b7d22ad581..0b6b12c6ad08 100644 --- a/manifests/quick-start-minimal.yaml +++ b/manifests/quick-start-minimal.yaml @@ -757,6 +757,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object diff --git a/manifests/quick-start-mysql.yaml b/manifests/quick-start-mysql.yaml index 5bdf3f13ba62..c11530d9e351 100644 --- a/manifests/quick-start-mysql.yaml +++ b/manifests/quick-start-mysql.yaml @@ -757,6 +757,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object diff --git a/manifests/quick-start-postgres.yaml b/manifests/quick-start-postgres.yaml index b0603cbe3130..9ad3f956b309 100644 --- a/manifests/quick-start-postgres.yaml +++ b/manifests/quick-start-postgres.yaml @@ -757,6 +757,18 @@ spec: - key type: object x-kubernetes-map-type: atomic + sessionTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic useSDKCreds: type: boolean type: object diff --git a/pkg/apis/workflow/v1alpha1/generated.pb.go b/pkg/apis/workflow/v1alpha1/generated.pb.go index 3ce4fb3ad3c0..e73c997e1842 100644 --- a/pkg/apis/workflow/v1alpha1/generated.pb.go +++ b/pkg/apis/workflow/v1alpha1/generated.pb.go @@ -4448,7 +4448,7 @@ func init() { } var fileDescriptor_724696e352c3df5f = []byte{ - // 11028 bytes of a gzipped FileDescriptorProto + // 11074 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x7d, 0x6b, 0x70, 0x24, 0xc7, 0x79, 0x18, 0x67, 0x81, 0xc5, 0xe3, 0x5b, 0x00, 0x87, 0xeb, 0x7b, 0x2d, 0x71, 0xe4, 0x81, 0x1e, 0x8a, 0x0c, 0x69, 0x51, 0x38, 0xf3, 0x28, 0x25, 0x8c, 0x94, 0x48, 0xc2, 0xe3, 0x80, 0x3b, 0xe2, @@ -4456,7 +4456,7 @@ var fileDescriptor_724696e352c3df5f = []byte{ 0x67, 0x66, 0x71, 0x07, 0x3e, 0x24, 0x85, 0x7a, 0xc7, 0xb2, 0x15, 0xcb, 0x92, 0x2c, 0x29, 0x49, 0x95, 0xa2, 0x48, 0x09, 0x4b, 0x76, 0x25, 0x65, 0xff, 0x4a, 0xd9, 0x95, 0x3f, 0xa9, 0x94, 0x4b, 0x29, 0xa7, 0x2a, 0x72, 0x45, 0x29, 0xe9, 0x87, 0x0d, 0x46, 0x97, 0x44, 0x3f, 0x92, 0xa8, 0x2a, - 0x51, 0xc5, 0x8e, 0x7d, 0x79, 0x94, 0xab, 0x9f, 0xd3, 0x3d, 0x3b, 0x8b, 0x5b, 0xe0, 0x1a, 0x38, + 0x56, 0xc5, 0x8e, 0x7d, 0x79, 0x54, 0xaa, 0x9f, 0xd3, 0x3d, 0x3b, 0x8b, 0x5b, 0xe0, 0x1a, 0x38, 0x96, 0xfd, 0x0b, 0xd8, 0xaf, 0xbb, 0xbf, 0xaf, 0xbb, 0xa7, 0xfb, 0xeb, 0xef, 0xd5, 0x5f, 0xc3, 0x5a, 0xdd, 0x4f, 0x1a, 0x9d, 0x8d, 0x99, 0x6a, 0xd8, 0x3a, 0xef, 0x45, 0xf5, 0xb0, 0x1d, 0x85, 0x2f, 0xb1, 0x7f, 0xde, 0x75, 0x23, 0x8c, 0xb6, 0x36, 0x9b, 0xe1, 0x8d, 0xf8, 0xfc, 0xf6, 0x53, @@ -4521,7 +4521,7 @@ var fileDescriptor_724696e352c3df5f = []byte{ 0x4d, 0xaa, 0xe8, 0x4d, 0x07, 0x8e, 0xa9, 0xe3, 0x6c, 0x6e, 0xe7, 0x2a, 0x5d, 0x55, 0xfc, 0xb0, 0x22, 0x36, 0xbf, 0x2f, 0xa5, 0xa5, 0x7e, 0x0a, 0x3a, 0x9c, 0xd7, 0x9f, 0x11, 0x63, 0x38, 0x96, 0x29, 0xc5, 0xd9, 0x6e, 0x4d, 0x7d, 0xd5, 0x81, 0x93, 0x79, 0x28, 0x72, 0x78, 0x6e, 0x43, 0xe7, - 0xb9, 0x56, 0x99, 0x17, 0xa5, 0x4a, 0x07, 0xa3, 0xf3, 0xf1, 0xff, 0x5f, 0x80, 0x49, 0x7d, 0x09, + 0xb9, 0x56, 0x99, 0x17, 0xa5, 0x4a, 0x07, 0xa3, 0xf3, 0xf1, 0xff, 0x57, 0x80, 0x49, 0x7d, 0x09, 0x31, 0x49, 0xe0, 0x5f, 0x39, 0x70, 0x4a, 0x8e, 0x00, 0x93, 0xb8, 0xd3, 0xcc, 0x4c, 0x6f, 0xcb, 0xea, 0xf4, 0xf2, 0x93, 0x74, 0x36, 0x8f, 0x1e, 0x9f, 0xe6, 0x07, 0xc5, 0x34, 0x9f, 0xca, 0xad, 0x83, 0xf3, 0xbb, 0x3a, 0xf5, 0x6d, 0x07, 0xa6, 0x7a, 0x23, 0xcd, 0x99, 0xf8, 0xb6, 0x39, 0xf1, @@ -4613,7 +4613,7 @@ var fileDescriptor_724696e352c3df5f = []byte{ 0x12, 0x5d, 0x17, 0xdc, 0x48, 0x8a, 0xb7, 0xe8, 0xa3, 0x30, 0xd2, 0x92, 0x1e, 0x5b, 0xe7, 0x0e, 0x0b, 0x98, 0xf1, 0x33, 0x5a, 0x9b, 0x76, 0x66, 0x75, 0xe3, 0x25, 0x52, 0x4d, 0x56, 0x48, 0xe2, 0xa5, 0xe1, 0x05, 0x29, 0x0c, 0x2b, 0xac, 0xa8, 0x0d, 0x83, 0x71, 0x9b, 0x54, 0xed, 0x45, 0x77, - 0xc9, 0x31, 0x54, 0xda, 0xa4, 0x9a, 0xf2, 0x75, 0xe6, 0x6b, 0x64, 0x94, 0xdc, 0xff, 0xe3, 0xc0, + 0xc9, 0x31, 0x54, 0xda, 0xa4, 0x9a, 0xf2, 0x75, 0xe6, 0x6b, 0x64, 0x94, 0xdc, 0xff, 0xed, 0xc0, 0xd9, 0x1e, 0xe3, 0xbd, 0xe2, 0xc7, 0x09, 0x7a, 0xb1, 0x6b, 0xcc, 0x33, 0xfd, 0x8d, 0x99, 0xb6, 0x66, 0x23, 0x56, 0x0c, 0x41, 0x42, 0xb4, 0xf1, 0x7e, 0x0c, 0x8a, 0x7e, 0x42, 0x5a, 0xd2, 0x0c, 0x6d, 0xc1, 0x60, 0xd4, 0x63, 0x2c, 0x73, 0xe3, 0x32, 0xc6, 0xef, 0x32, 0xa5, 0x87, 0x39, 0x59, @@ -4723,9 +4723,9 @@ var fileDescriptor_724696e352c3df5f = []byte{ 0x26, 0xdb, 0xf3, 0xbc, 0x4d, 0x46, 0x1a, 0x14, 0xb5, 0x45, 0xa9, 0xfb, 0x23, 0x07, 0xc6, 0xf4, 0x48, 0x75, 0x2a, 0x69, 0x43, 0x63, 0x61, 0xb1, 0xc2, 0xcf, 0x02, 0x7b, 0x27, 0xfe, 0x25, 0x85, 0x33, 0x55, 0x96, 0x53, 0x18, 0xd6, 0x68, 0xf6, 0x71, 0xef, 0xfc, 0x61, 0x28, 0x6e, 0x86, 0x54, - 0x20, 0x19, 0x30, 0xcd, 0xf0, 0x8b, 0x14, 0x88, 0x79, 0x99, 0xfb, 0xbf, 0x1c, 0x38, 0x9d, 0x1f, + 0x20, 0x19, 0x30, 0xcd, 0xf0, 0x8b, 0x14, 0x88, 0x79, 0x99, 0xfb, 0x3f, 0x1d, 0x38, 0x9d, 0x1f, 0x84, 0xff, 0x76, 0x18, 0xe4, 0x05, 0x00, 0x3a, 0x14, 0x83, 0xa9, 0x6b, 0x99, 0x27, 0x64, 0x09, - 0xd6, 0x6a, 0xf5, 0x37, 0xec, 0x3f, 0xa5, 0x42, 0x71, 0x4a, 0xe7, 0x0b, 0x0e, 0x8c, 0x53, 0xb2, + 0xd6, 0x6a, 0xf5, 0x37, 0xec, 0x3f, 0xa3, 0x42, 0x71, 0x4a, 0xe7, 0x0b, 0x0e, 0x8c, 0x53, 0xb2, 0xcb, 0xd1, 0x86, 0x31, 0xda, 0x55, 0x3b, 0xa3, 0x55, 0x68, 0x53, 0x6f, 0x83, 0x01, 0xc6, 0x26, 0x71, 0xf4, 0x4e, 0x18, 0xf5, 0x6a, 0xb5, 0x88, 0xc4, 0xb1, 0xf2, 0xdb, 0x31, 0x5b, 0xd4, 0xac, 0x04, 0xe2, 0xb4, 0x9c, 0x32, 0xd1, 0x46, 0x6d, 0x33, 0xa6, 0x7c, 0x49, 0x30, 0x6e, 0xc5, 0x44, @@ -4812,7 +4812,7 @@ var fileDescriptor_724696e352c3df5f = []byte{ 0xc1, 0xb0, 0x97, 0xf6, 0x8d, 0x5d, 0x8d, 0x73, 0x51, 0x61, 0xc1, 0x1a, 0x46, 0xf4, 0x22, 0x1c, 0x27, 0x71, 0xe2, 0xb7, 0xbc, 0x84, 0xd4, 0xd4, 0x9d, 0xcc, 0x32, 0xb3, 0x65, 0xaa, 0xe8, 0xe9, 0x8b, 0xd9, 0x0a, 0xb7, 0xf3, 0x80, 0xb8, 0x1b, 0x91, 0xb1, 0x23, 0xa7, 0xf6, 0xb3, 0x23, 0xd1, - 0x9f, 0x39, 0x70, 0x3c, 0x22, 0x3c, 0xee, 0x24, 0x56, 0x1d, 0x3b, 0xc5, 0xd8, 0x71, 0xd5, 0x46, + 0x9f, 0x3b, 0x70, 0x3c, 0x22, 0x3c, 0xee, 0x24, 0x56, 0x1d, 0x3b, 0xc5, 0xd8, 0x71, 0xd5, 0x46, 0x1a, 0x75, 0x95, 0x2f, 0x05, 0x67, 0xa9, 0x70, 0xc1, 0x85, 0xc8, 0xd1, 0x77, 0x95, 0xdf, 0xce, 0x03, 0xbe, 0xf1, 0xd6, 0xf4, 0x74, 0x77, 0x3a, 0x7f, 0x85, 0x9c, 0xee, 0xbc, 0xbf, 0xfb, 0xd6, 0xf4, 0xa4, 0xfc, 0x9d, 0x4e, 0x5a, 0xd7, 0x20, 0xe9, 0xb1, 0xda, 0x0e, 0x6b, 0x97, 0xd7, 0x44, @@ -4830,7 +4830,7 @@ var fileDescriptor_724696e352c3df5f = []byte{ 0x6c, 0x6f, 0xe7, 0x91, 0x98, 0xbb, 0xff, 0xd6, 0xee, 0xf4, 0xa9, 0xdc, 0x22, 0x9c, 0xdf, 0xa9, 0xa9, 0x05, 0x38, 0x9d, 0xcf, 0x1f, 0xee, 0xa4, 0x71, 0x0c, 0xe8, 0x1a, 0xc7, 0x22, 0xdc, 0xdf, 0xb3, 0x53, 0xf4, 0xa4, 0x91, 0xd2, 0xa6, 0x63, 0x9e, 0x34, 0x5d, 0xd2, 0xe1, 0x04, 0x8c, 0xe9, - 0xef, 0x3f, 0xb8, 0xff, 0x6f, 0x00, 0x20, 0xb5, 0x93, 0x23, 0x0f, 0x26, 0xb8, 0x4d, 0xfe, 0xf2, + 0xef, 0x3f, 0xb8, 0xff, 0x77, 0x00, 0x20, 0xb5, 0x93, 0x23, 0x0f, 0x26, 0xb8, 0x4d, 0xfe, 0xf2, 0xc2, 0x81, 0x2f, 0xc5, 0xcf, 0x1b, 0x08, 0x70, 0x06, 0x21, 0x6a, 0x01, 0xe2, 0x10, 0xfe, 0xfb, 0x20, 0xbe, 0x55, 0xe6, 0x8a, 0x9c, 0xef, 0x42, 0x82, 0x73, 0x10, 0xd3, 0x11, 0x25, 0xe1, 0x16, 0x09, 0xae, 0xe1, 0x2b, 0x07, 0xc9, 0xac, 0xc0, 0xbd, 0x71, 0x06, 0x02, 0x9c, 0x41, 0x88, 0x5c, @@ -4898,247 +4898,250 @@ var fileDescriptor_724696e352c3df5f = []byte{ 0x8b, 0xbe, 0xe3, 0x00, 0xa4, 0xef, 0x72, 0xa0, 0x9b, 0x30, 0x12, 0x3f, 0x65, 0x18, 0x2a, 0x6c, 0xdc, 0xa4, 0x17, 0x18, 0xb5, 0xdb, 0xa6, 0x02, 0x82, 0x15, 0xb5, 0x3b, 0x19, 0x57, 0x7e, 0xe6, 0xc0, 0xc9, 0xbc, 0xf7, 0x43, 0xee, 0x61, 0x8f, 0xf7, 0x6b, 0x57, 0x11, 0x0d, 0xd6, 0x22, 0xb2, - 0xe9, 0xdf, 0xcc, 0x49, 0x78, 0xcc, 0x0b, 0x70, 0x5a, 0xc7, 0x7d, 0x63, 0x18, 0x14, 0xe1, 0x43, - 0xb2, 0xc3, 0x3c, 0x4a, 0x75, 0xa6, 0x7a, 0x2a, 0x73, 0xa9, 0x7a, 0x98, 0x41, 0xb1, 0x28, 0xa5, - 0x7a, 0x93, 0x0c, 0x8a, 0x17, 0x2c, 0x9b, 0xad, 0x42, 0x19, 0x3c, 0x8f, 0x55, 0x69, 0x9e, 0x65, - 0xa7, 0x78, 0x24, 0x96, 0x9d, 0x21, 0xfb, 0x96, 0x9d, 0xc7, 0x61, 0x38, 0x0a, 0x9b, 0x64, 0x16, - 0x5f, 0x15, 0xda, 0x40, 0x1a, 0xd4, 0xc0, 0xc1, 0x58, 0x96, 0x1f, 0xd0, 0xb6, 0x81, 0x7e, 0xdb, - 0xd9, 0xc3, 0x78, 0x34, 0x6a, 0xeb, 0x4c, 0xc8, 0xcd, 0x0e, 0xc7, 0x54, 0x9b, 0x83, 0x58, 0xa4, - 0xbe, 0xe1, 0xc0, 0x71, 0x12, 0x54, 0xa3, 0x1d, 0x86, 0x47, 0x60, 0x13, 0x3e, 0xe7, 0x6b, 0x36, - 0x36, 0xdf, 0xc5, 0x2c, 0x72, 0xee, 0xda, 0xe9, 0x02, 0xe3, 0xee, 0x6e, 0xa0, 0x55, 0x18, 0xa9, - 0x7a, 0x62, 0x45, 0x94, 0xf6, 0xb3, 0x22, 0xb8, 0xe7, 0x6c, 0x56, 0x2c, 0x05, 0x85, 0xc4, 0xfd, - 0x49, 0x01, 0x4e, 0xe4, 0x74, 0x89, 0x5d, 0xa0, 0x6a, 0xd1, 0x15, 0x79, 0xb9, 0x96, 0xdd, 0x8f, - 0xcb, 0x02, 0x8e, 0x55, 0x0d, 0xb4, 0x06, 0x27, 0xb7, 0x5a, 0x71, 0x8a, 0x65, 0x3e, 0x0c, 0x12, - 0x72, 0x53, 0xee, 0x4e, 0xe9, 0x8f, 0x3e, 0xb9, 0x9c, 0x53, 0x07, 0xe7, 0xb6, 0xa4, 0xe2, 0x0b, - 0x09, 0xbc, 0x8d, 0x26, 0x49, 0x8b, 0xc4, 0xf5, 0x3f, 0x25, 0xbe, 0x5c, 0xcc, 0x94, 0xe3, 0xae, - 0x16, 0xe8, 0x73, 0x0e, 0x9c, 0x8d, 0x49, 0xb4, 0x4d, 0xa2, 0x8a, 0x5f, 0x23, 0xf3, 0x9d, 0x38, - 0x09, 0x5b, 0x24, 0x3a, 0xa0, 0xb9, 0x74, 0xfa, 0xd6, 0xee, 0xf4, 0xd9, 0x4a, 0x6f, 0x6c, 0x78, - 0x2f, 0x52, 0xee, 0xe7, 0x1c, 0x98, 0xa8, 0x30, 0x65, 0x5a, 0xc9, 0xd2, 0xb6, 0xf3, 0x83, 0x3e, - 0xaa, 0x12, 0x56, 0x64, 0xb8, 0xa2, 0x99, 0x62, 0xc2, 0x7d, 0x09, 0x26, 0x2b, 0xa4, 0xe5, 0xb5, - 0x1b, 0xec, 0xee, 0x2e, 0x8f, 0xc7, 0x3a, 0x0f, 0xa3, 0xb1, 0x84, 0x65, 0x9f, 0x04, 0x52, 0x95, - 0x71, 0x5a, 0x07, 0x3d, 0xc2, 0x63, 0xc7, 0xe4, 0x0d, 0xa0, 0x51, 0xae, 0x75, 0xf0, 0x80, 0xb3, - 0x18, 0xcb, 0x32, 0xf7, 0x4d, 0x07, 0xc6, 0xd2, 0xf6, 0x64, 0x13, 0xd5, 0xe1, 0x58, 0x55, 0xbb, - 0x3d, 0x97, 0xde, 0x5b, 0xe8, 0xff, 0xa2, 0x1d, 0x4f, 0x5b, 0x6c, 0x22, 0xc1, 0x59, 0xac, 0xfb, - 0x0f, 0xbd, 0xfb, 0x62, 0x01, 0x8e, 0xa9, 0xae, 0x0a, 0xc7, 0xe1, 0xeb, 0xd9, 0x08, 0x39, 0x6c, - 0x23, 0xf5, 0x8e, 0x39, 0xf7, 0x7b, 0x44, 0xc9, 0xbd, 0x9e, 0x8d, 0x92, 0x3b, 0x54, 0xf2, 0x5d, - 0xbe, 0xd0, 0xef, 0x14, 0x60, 0x44, 0x25, 0x02, 0x7a, 0x16, 0x8a, 0x4c, 0x95, 0xbc, 0x3b, 0x81, - 0x98, 0xa9, 0xa5, 0x98, 0x63, 0xa2, 0x28, 0x59, 0x14, 0xce, 0x81, 0x93, 0xc9, 0x8e, 0x72, 0x83, - 0xa2, 0x17, 0x25, 0x98, 0x63, 0x42, 0xcb, 0x30, 0x40, 0x82, 0x9a, 0x90, 0x8c, 0xf7, 0x8f, 0x90, - 0x3d, 0xde, 0x75, 0x31, 0xa8, 0x61, 0x8a, 0x85, 0x65, 0x23, 0xe3, 0x02, 0x50, 0xe6, 0xa9, 0x16, - 0x21, 0xfd, 0x88, 0x52, 0xf7, 0x03, 0x60, 0xe4, 0xa1, 0x13, 0xf9, 0xed, 0x85, 0xd2, 0xd5, 0xfd, - 0xbe, 0x96, 0xd0, 0xb6, 0xd2, 0x3a, 0xee, 0x2f, 0x0f, 0xc0, 0x50, 0xa5, 0xb3, 0x41, 0x95, 0x84, - 0x6f, 0x3b, 0x70, 0xe2, 0x46, 0x26, 0x55, 0x73, 0xba, 0x49, 0xae, 0xd9, 0xb3, 0xca, 0xea, 0xa1, - 0x64, 0xca, 0x16, 0x95, 0x53, 0x88, 0xf3, 0xba, 0x63, 0x64, 0x4b, 0x1d, 0x38, 0x94, 0x6c, 0xa9, - 0x37, 0x0f, 0xf9, 0x2e, 0xc5, 0x78, 0xaf, 0x7b, 0x14, 0xee, 0xef, 0x15, 0x01, 0xf8, 0xd7, 0x58, - 0x6d, 0x27, 0xfd, 0xd8, 0xd9, 0x9e, 0x86, 0xb1, 0x3a, 0x09, 0x48, 0x24, 0x03, 0x05, 0x33, 0xcf, - 0x08, 0x2d, 0x69, 0x65, 0xd8, 0xa8, 0xc9, 0x94, 0x9a, 0x20, 0x89, 0x76, 0xb8, 0xe0, 0x9b, 0xbd, - 0x2f, 0xa1, 0x4a, 0xb0, 0x56, 0x0b, 0xcd, 0x18, 0x6e, 0x10, 0xee, 0x51, 0x9f, 0xd8, 0xc3, 0x6b, - 0xf1, 0x7e, 0x98, 0x30, 0x93, 0x8f, 0x08, 0x69, 0x4f, 0x79, 0xc0, 0xcd, 0x9c, 0x25, 0x38, 0x53, - 0x9b, 0xee, 0x82, 0x5a, 0xb4, 0x83, 0x3b, 0x81, 0x10, 0xfb, 0xd4, 0x2e, 0x58, 0x60, 0x50, 0x2c, - 0x4a, 0x59, 0xd6, 0x06, 0x76, 0x00, 0x72, 0xb8, 0xc8, 0xfc, 0x90, 0x66, 0x6d, 0xd0, 0xca, 0xb0, - 0x51, 0x93, 0x52, 0x10, 0x76, 0x4a, 0x30, 0xf7, 0x59, 0xc6, 0xb8, 0xd8, 0x86, 0x89, 0xd0, 0xb4, - 0xaf, 0x70, 0x19, 0xe8, 0xdd, 0x7d, 0x2e, 0x3d, 0xa3, 0x2d, 0x8f, 0x5c, 0xc8, 0x98, 0x63, 0x32, - 0xf8, 0xa9, 0xdc, 0xab, 0x5f, 0x2b, 0x18, 0x33, 0xe3, 0x4c, 0x7b, 0x46, 0xfe, 0xaf, 0xc1, 0xc9, - 0x76, 0x58, 0x5b, 0x8b, 0xfc, 0x30, 0xf2, 0x93, 0x9d, 0xf9, 0xa6, 0x17, 0xc7, 0x6c, 0x61, 0x8c, - 0x9b, 0xf2, 0xd0, 0x5a, 0x4e, 0x1d, 0x9c, 0xdb, 0x92, 0x6a, 0x28, 0x6d, 0x01, 0x64, 0xd1, 0x5e, - 0x45, 0x2e, 0xd1, 0xc9, 0x8a, 0x58, 0x95, 0xba, 0x27, 0xe0, 0x78, 0xa5, 0xd3, 0x6e, 0x37, 0x7d, - 0x52, 0x53, 0x6e, 0x06, 0xf7, 0x03, 0x70, 0x4c, 0xe4, 0x52, 0x55, 0xd2, 0xc7, 0xbe, 0x32, 0x7f, - 0xbb, 0x7f, 0xe6, 0xc0, 0xb1, 0x4c, 0x6c, 0x0d, 0x7a, 0x35, 0x2b, 0x33, 0xd8, 0xc9, 0xf1, 0xa9, - 0x49, 0x0b, 0x22, 0x61, 0x67, 0x9e, 0xfc, 0xd1, 0x90, 0x81, 0xf1, 0xd6, 0x2e, 0xa4, 0xb0, 0xf0, - 0x71, 0x7e, 0xa4, 0xe8, 0xd1, 0xf5, 0xee, 0x67, 0x0b, 0x90, 0x1f, 0xd0, 0x84, 0x3e, 0xd6, 0x3d, - 0x01, 0xcf, 0x5a, 0x9c, 0x00, 0x11, 0x51, 0xd5, 0x7b, 0x0e, 0x02, 0x73, 0x0e, 0x56, 0x2c, 0xcd, - 0x81, 0xa0, 0xdb, 0x3d, 0x13, 0xff, 0xdb, 0x81, 0xd2, 0xfa, 0xfa, 0x15, 0x75, 0xce, 0x61, 0x38, - 0x1d, 0xf3, 0x0b, 0xf7, 0xcc, 0xef, 0x3b, 0x1f, 0xb6, 0xda, 0xdc, 0x0d, 0x2c, 0xdc, 0xd3, 0x2c, - 0xad, 0x6d, 0x25, 0xb7, 0x06, 0xee, 0xd1, 0x12, 0x5d, 0x86, 0x13, 0x7a, 0x49, 0x45, 0x7b, 0x45, - 0xb0, 0x28, 0x92, 0xdc, 0x74, 0x17, 0xe3, 0xbc, 0x36, 0x59, 0x54, 0xc2, 0xdc, 0xc9, 0x8e, 0xab, - 0x1c, 0x54, 0xa2, 0x18, 0xe7, 0xb5, 0x71, 0x57, 0xa1, 0xb4, 0xee, 0x45, 0x6a, 0xe0, 0x1f, 0x84, - 0xc9, 0x6a, 0xd8, 0x92, 0x66, 0xa6, 0x2b, 0x64, 0x9b, 0x34, 0xc5, 0x90, 0xf9, 0xd3, 0x1d, 0x99, - 0x32, 0xdc, 0x55, 0xdb, 0xfd, 0x1f, 0xe7, 0x40, 0x5d, 0x20, 0xec, 0xe3, 0x84, 0x69, 0xab, 0x50, - 0xcf, 0xa2, 0xe5, 0x50, 0x4f, 0xc5, 0x6b, 0x33, 0xe1, 0x9e, 0x49, 0x1a, 0xee, 0x39, 0x64, 0x3b, - 0xdc, 0x53, 0x49, 0x9c, 0x5d, 0x21, 0x9f, 0x5f, 0x75, 0x60, 0x2c, 0x08, 0x6b, 0x44, 0xf9, 0xe7, - 0x86, 0x99, 0xd8, 0xfb, 0xa2, 0xbd, 0xc8, 0x79, 0x1e, 0xba, 0x28, 0xd0, 0xf3, 0x30, 0x64, 0x75, - 0x44, 0xe9, 0x45, 0xd8, 0xe8, 0x07, 0x5a, 0xd4, 0x0c, 0x9f, 0xdc, 0xbf, 0xf0, 0x40, 0x9e, 0xbe, - 0x72, 0x47, 0x2b, 0xe6, 0x4d, 0x4d, 0x6e, 0x1a, 0xb5, 0x65, 0xd0, 0x93, 0xb7, 0xc2, 0x34, 0x37, - 0x89, 0xcc, 0xcc, 0x9c, 0xca, 0x53, 0x2e, 0x0c, 0xf1, 0x78, 0x65, 0x91, 0x4e, 0x89, 0x79, 0xef, - 0x78, 0x2c, 0x33, 0x16, 0x25, 0x28, 0x91, 0x31, 0x00, 0x25, 0x5b, 0xef, 0x2c, 0x18, 0x31, 0x06, - 0xf9, 0x41, 0x00, 0xe8, 0x19, 0x5d, 0x0f, 0x1e, 0xeb, 0x47, 0x0f, 0x1e, 0xef, 0xa9, 0x03, 0x7f, - 0xc1, 0x81, 0xb1, 0xaa, 0xf6, 0xee, 0x41, 0xf9, 0x31, 0x5b, 0xef, 0x3b, 0xe7, 0x3d, 0x4f, 0xc1, - 0x9d, 0x42, 0xc6, 0x3b, 0x0b, 0x06, 0x75, 0x96, 0x43, 0x92, 0x29, 0xfd, 0xec, 0xe8, 0xb7, 0x92, - 0x36, 0xc2, 0x34, 0x22, 0xc8, 0x58, 0x4a, 0x0a, 0xc3, 0x82, 0x16, 0x7a, 0x0d, 0x46, 0x64, 0xc8, - 0xbb, 0x08, 0x0d, 0xc7, 0x36, 0xac, 0xf4, 0xa6, 0x2b, 0x50, 0x26, 0x9e, 0xe3, 0x50, 0xac, 0x28, - 0xa2, 0x06, 0x0c, 0xd4, 0xbc, 0xba, 0x08, 0x12, 0x5f, 0xb1, 0x93, 0xd8, 0x53, 0xd2, 0x64, 0xfa, - 0xd9, 0xc2, 0xec, 0x12, 0xa6, 0x24, 0xd0, 0xcd, 0x34, 0x71, 0xfc, 0xa4, 0xb5, 0xd3, 0xd7, 0x14, - 0x93, 0xb8, 0x59, 0xa3, 0x2b, 0x0f, 0x7d, 0x4d, 0x78, 0x4f, 0xff, 0x1a, 0x23, 0xbb, 0x68, 0x27, - 0x33, 0x28, 0x4f, 0x43, 0x92, 0x7a, 0x60, 0x29, 0x95, 0x46, 0x92, 0xb4, 0xcb, 0x3f, 0x6f, 0x8b, - 0x0a, 0x4b, 0xa6, 0xc1, 0x9f, 0xe2, 0x5e, 0x5f, 0x5f, 0xc3, 0x0c, 0x3b, 0x6a, 0xc2, 0x50, 0x9b, - 0x05, 0x76, 0x94, 0xdf, 0x69, 0xeb, 0x6c, 0xe1, 0x81, 0x22, 0x7c, 0x6d, 0xf2, 0xff, 0xb1, 0xa0, - 0x81, 0x2e, 0xc2, 0x30, 0x7f, 0xff, 0x84, 0x07, 0xe9, 0x97, 0x2e, 0x4c, 0xf5, 0x7e, 0x45, 0x25, - 0x3d, 0x28, 0xf8, 0xef, 0x18, 0xcb, 0xb6, 0xe8, 0x8b, 0x0e, 0x4c, 0x50, 0x8e, 0x9a, 0x3e, 0xd8, - 0x52, 0x46, 0xb6, 0x78, 0xd6, 0xb5, 0x98, 0x4a, 0x24, 0x92, 0xd7, 0x28, 0x35, 0xe9, 0xb2, 0x41, - 0x0e, 0x67, 0xc8, 0xa3, 0xd7, 0x61, 0x24, 0xf6, 0x6b, 0xa4, 0xea, 0x45, 0x71, 0xf9, 0xc4, 0xe1, - 0x74, 0x25, 0xf5, 0xd7, 0x08, 0x42, 0x58, 0x91, 0x44, 0xbf, 0xc6, 0x5e, 0xcc, 0x14, 0xaf, 0xdb, - 0x57, 0xb9, 0x58, 0x7f, 0xd2, 0xd6, 0xde, 0x97, 0x9e, 0x29, 0x89, 0x59, 0xb8, 0x31, 0x4c, 0x72, - 0x38, 0x4b, 0x1f, 0xfd, 0x1d, 0x07, 0x4e, 0xf1, 0xdc, 0xf7, 0xd9, 0xc7, 0x1a, 0x4e, 0x1d, 0xd0, - 0x3e, 0xc3, 0x6e, 0x17, 0xcc, 0xe6, 0xa1, 0xc4, 0xf9, 0x94, 0x58, 0xa6, 0x5a, 0xf3, 0x7d, 0x9d, - 0xd3, 0x56, 0xfd, 0x96, 0xfd, 0xbf, 0xa9, 0x83, 0x9e, 0x84, 0x52, 0x5b, 0x1c, 0x87, 0x7e, 0xdc, - 0x62, 0x77, 0x45, 0x06, 0xf8, 0x2d, 0xbe, 0xb5, 0x14, 0x8c, 0xf5, 0x3a, 0x46, 0xda, 0xe2, 0xc7, - 0xf7, 0x4a, 0x5b, 0x8c, 0xae, 0x41, 0x29, 0x09, 0x9b, 0x22, 0x73, 0x67, 0x5c, 0x2e, 0xb3, 0x15, - 0x78, 0x2e, 0x6f, 0x6f, 0xad, 0xab, 0x6a, 0xa9, 0x26, 0x9b, 0xc2, 0x62, 0xac, 0xe3, 0x61, 0xf1, - 0xb9, 0xe2, 0x4d, 0x81, 0x88, 0xa9, 0xb0, 0xf7, 0x67, 0xe2, 0x73, 0xf5, 0x42, 0x6c, 0xd6, 0x45, - 0x4b, 0x70, 0xbc, 0xdd, 0xa5, 0x03, 0xf3, 0x3b, 0x6a, 0x2a, 0x24, 0xa2, 0x5b, 0x01, 0xee, 0x6e, - 0x63, 0x68, 0xbf, 0x67, 0xf7, 0xd2, 0x7e, 0x7b, 0x24, 0xf1, 0x7d, 0xe0, 0x20, 0x49, 0x7c, 0x51, - 0x0d, 0x1e, 0xf0, 0x3a, 0x49, 0xc8, 0x12, 0xc6, 0x98, 0x4d, 0x78, 0xa8, 0xf2, 0x43, 0x3c, 0xfa, - 0xf9, 0xd6, 0xee, 0xf4, 0x03, 0xb3, 0x7b, 0xd4, 0xc3, 0x7b, 0x62, 0x41, 0xaf, 0xc0, 0x08, 0x11, - 0x89, 0x88, 0xcb, 0x3f, 0x67, 0x4b, 0x48, 0x30, 0x53, 0x1b, 0xcb, 0x28, 0x50, 0x0e, 0xc3, 0x8a, - 0x1e, 0x5a, 0x87, 0x52, 0x23, 0x8c, 0x93, 0xd9, 0xa6, 0xef, 0xc5, 0x24, 0x2e, 0x3f, 0xc8, 0x16, - 0x4d, 0xae, 0xec, 0x75, 0x49, 0x56, 0x4b, 0xd7, 0xcc, 0xa5, 0xb4, 0x25, 0xd6, 0xd1, 0x20, 0xc2, - 0xbc, 0x97, 0x2c, 0x4e, 0x5b, 0x3a, 0x82, 0xce, 0xb1, 0x81, 0x3d, 0x9a, 0x87, 0x79, 0x2d, 0xac, - 0x55, 0xcc, 0xda, 0xca, 0x7d, 0xa9, 0x03, 0x71, 0x16, 0x27, 0x7a, 0x1a, 0xc6, 0xda, 0x61, 0xad, - 0xd2, 0x26, 0xd5, 0x35, 0x2f, 0xa9, 0x36, 0xca, 0xd3, 0xa6, 0xd5, 0x6d, 0x4d, 0x2b, 0xc3, 0x46, - 0x4d, 0xd4, 0x86, 0xe1, 0x16, 0xcf, 0x24, 0x50, 0x7e, 0xd8, 0x96, 0x6e, 0x23, 0x52, 0x13, 0x70, - 0x79, 0x41, 0xfc, 0xc0, 0x92, 0x0c, 0xfa, 0xc7, 0x0e, 0x1c, 0xcb, 0xdc, 0x7e, 0x2a, 0xbf, 0xc3, - 0x9a, 0xc8, 0x62, 0x22, 0x9e, 0x7b, 0x94, 0x4d, 0x9f, 0x09, 0xbc, 0xdd, 0x0d, 0xc2, 0xd9, 0x1e, - 0xf1, 0x79, 0x61, 0xe9, 0x40, 0xca, 0x8f, 0xd8, 0x9b, 0x17, 0x86, 0x50, 0xce, 0x0b, 0xfb, 0x81, - 0x25, 0x19, 0xf4, 0x38, 0x0c, 0x8b, 0xcc, 0x7d, 0xe5, 0x47, 0x4d, 0x17, 0xb4, 0x48, 0xf0, 0x87, - 0x65, 0xf9, 0xd4, 0x07, 0xe0, 0x78, 0x97, 0xea, 0xb6, 0xaf, 0x9c, 0x14, 0xbf, 0xe1, 0x80, 0x7e, - 0x5d, 0xda, 0xfa, 0xeb, 0x1f, 0x4f, 0xc3, 0x58, 0x95, 0x3f, 0xb5, 0xc8, 0x2f, 0x5c, 0x0f, 0x9a, - 0xf6, 0xcf, 0x79, 0xad, 0x0c, 0x1b, 0x35, 0xdd, 0x4b, 0x80, 0xba, 0x53, 0xb3, 0x1f, 0x28, 0xe1, - 0xd1, 0x3f, 0x75, 0x60, 0xdc, 0x90, 0x19, 0xac, 0x3b, 0x19, 0x17, 0x01, 0xb5, 0xfc, 0x28, 0x0a, - 0x23, 0xfd, 0x4d, 0x3b, 0x91, 0x14, 0x81, 0x5d, 0x3b, 0x5b, 0xe9, 0x2a, 0xc5, 0x39, 0x2d, 0xdc, - 0x7f, 0x3e, 0x08, 0x69, 0x18, 0xb4, 0xca, 0x7d, 0xeb, 0xf4, 0xcc, 0x7d, 0xfb, 0x04, 0x8c, 0xbc, - 0x14, 0x87, 0xc1, 0x5a, 0x9a, 0x21, 0x57, 0x7d, 0x8b, 0x67, 0x2a, 0xab, 0x57, 0x59, 0x4d, 0x55, - 0x83, 0xd5, 0x7e, 0x79, 0xd1, 0x6f, 0x26, 0xdd, 0x29, 0x54, 0x9f, 0x79, 0x96, 0xc3, 0xb1, 0xaa, - 0xc1, 0x9e, 0xb7, 0xdb, 0x26, 0xca, 0x30, 0x9e, 0x3e, 0x6f, 0xc7, 0x5f, 0x5d, 0x60, 0x65, 0xe8, - 0x3c, 0x8c, 0x2a, 0xa3, 0xba, 0xb0, 0xd4, 0xab, 0x99, 0x52, 0x96, 0x77, 0x9c, 0xd6, 0x61, 0x02, - 0xa1, 0x30, 0xc4, 0x0a, 0x13, 0x4a, 0xc5, 0x86, 0x7a, 0x92, 0x31, 0xed, 0x72, 0xde, 0x2e, 0xc1, - 0x58, 0x91, 0xcc, 0x73, 0xb4, 0x8e, 0x1e, 0x8a, 0xa3, 0x55, 0x8b, 0xc9, 0x2f, 0xf6, 0x1b, 0x93, - 0x6f, 0xae, 0xed, 0x91, 0xbe, 0xd6, 0xf6, 0xa7, 0x07, 0x60, 0xf8, 0x39, 0x12, 0xb1, 0xcc, 0xe1, - 0x8f, 0xc3, 0xf0, 0x36, 0xff, 0x37, 0x7b, 0xa1, 0x53, 0xd4, 0xc0, 0xb2, 0x9c, 0x7e, 0xb7, 0x8d, - 0x8e, 0xdf, 0xac, 0x2d, 0xa4, 0xbb, 0x38, 0x4d, 0x3a, 0x28, 0x0b, 0x70, 0x5a, 0x87, 0x36, 0xa8, - 0x53, 0xc9, 0xbe, 0xd5, 0xf2, 0xbb, 0x5e, 0x6e, 0x5f, 0x92, 0x05, 0x38, 0xad, 0x83, 0x1e, 0x85, - 0xa1, 0xba, 0x9f, 0xac, 0x7b, 0xf5, 0xac, 0x9b, 0x70, 0x89, 0x41, 0xb1, 0x28, 0x65, 0x6e, 0x22, - 0x3f, 0x59, 0x8f, 0x08, 0xb3, 0xec, 0x76, 0xe5, 0x93, 0x58, 0xd2, 0xca, 0xb0, 0x51, 0x93, 0x75, - 0x29, 0x14, 0x23, 0x13, 0x51, 0x9c, 0x69, 0x97, 0x64, 0x01, 0x4e, 0xeb, 0xd0, 0xf5, 0x5f, 0x0d, - 0x5b, 0x6d, 0xbf, 0x29, 0xe2, 0x8b, 0xb5, 0xf5, 0x3f, 0x2f, 0xe0, 0x58, 0xd5, 0xa0, 0xb5, 0x29, - 0x0b, 0xa3, 0xec, 0x27, 0xfb, 0x94, 0xd8, 0x9a, 0x80, 0x63, 0x55, 0xc3, 0x7d, 0x0e, 0xc6, 0xf9, - 0x4e, 0x9e, 0x6f, 0x7a, 0x7e, 0x6b, 0x69, 0x1e, 0x5d, 0xec, 0x8a, 0xc9, 0x7f, 0x3c, 0x27, 0x26, - 0xff, 0x94, 0xd1, 0xa8, 0x3b, 0x36, 0xdf, 0xfd, 0x51, 0x01, 0x46, 0x8e, 0xf0, 0x35, 0xc6, 0x23, - 0x7f, 0x58, 0x18, 0xdd, 0xcc, 0xbc, 0xc4, 0xb8, 0x66, 0xf3, 0x8a, 0xcd, 0x9e, 0xaf, 0x30, 0xfe, - 0xd7, 0x02, 0x9c, 0x96, 0x55, 0xa5, 0x2e, 0xb7, 0x34, 0xcf, 0xde, 0xc0, 0x3a, 0xfc, 0x89, 0x8e, - 0x8c, 0x89, 0x5e, 0xb3, 0xa7, 0x8d, 0x2e, 0xcd, 0xf7, 0x9c, 0xea, 0x57, 0x32, 0x53, 0x8d, 0xad, - 0x52, 0xdd, 0x7b, 0xb2, 0xff, 0xdc, 0x81, 0xa9, 0xfc, 0xc9, 0x3e, 0x82, 0xc7, 0x2f, 0x5f, 0x37, - 0x1f, 0xbf, 0xfc, 0x45, 0x7b, 0x4b, 0xcc, 0x1c, 0x4a, 0x8f, 0x67, 0x30, 0xff, 0xd4, 0x81, 0x93, - 0xb2, 0x01, 0x3b, 0x3d, 0xe7, 0xfc, 0x80, 0x45, 0xb2, 0x1c, 0xfe, 0x32, 0x7b, 0xcd, 0x58, 0x66, - 0x2f, 0xd8, 0x1b, 0xb8, 0x3e, 0x8e, 0x9e, 0x8f, 0x86, 0xff, 0x89, 0x03, 0xe5, 0xbc, 0x06, 0x47, - 0xf0, 0xc9, 0x5f, 0x35, 0x3f, 0xf9, 0x73, 0x87, 0x33, 0xf2, 0xde, 0x1f, 0xbc, 0xdc, 0x6b, 0xa2, - 0x50, 0x53, 0xca, 0x55, 0x8e, 0x2d, 0x1f, 0x2d, 0x27, 0x91, 0x2f, 0xa0, 0x35, 0x61, 0x28, 0x66, - 0x51, 0x1b, 0x62, 0x09, 0x5c, 0xb2, 0x21, 0x6d, 0x51, 0x7c, 0xc2, 0xc6, 0xce, 0xfe, 0xc7, 0x82, - 0x86, 0xfb, 0x9b, 0x05, 0x38, 0xa3, 0x1e, 0xb5, 0x25, 0xdb, 0xa4, 0x99, 0xee, 0x0f, 0xf6, 0xce, - 0x82, 0xa7, 0x7e, 0xda, 0x7b, 0x67, 0x21, 0x25, 0x91, 0xee, 0x85, 0x14, 0x86, 0x35, 0x9a, 0xa8, - 0x02, 0xa7, 0xd8, 0xbb, 0x08, 0x8b, 0x7e, 0xe0, 0x35, 0xfd, 0x57, 0x48, 0x84, 0x49, 0x2b, 0xdc, - 0xf6, 0x9a, 0x42, 0x52, 0x57, 0x77, 0x7a, 0x17, 0xf3, 0x2a, 0xe1, 0xfc, 0xb6, 0x5d, 0x1a, 0xf7, - 0x40, 0xbf, 0x1a, 0xb7, 0xfb, 0xc7, 0x0e, 0x8c, 0x1d, 0xe1, 0x13, 0xc0, 0xa1, 0xb9, 0x25, 0x9e, - 0xb1, 0xb7, 0x25, 0x7a, 0x6c, 0x83, 0xdd, 0x22, 0x74, 0xbd, 0x8a, 0x8a, 0x3e, 0xe3, 0xa8, 0xb8, - 0x16, 0x1e, 0x3c, 0xf8, 0x61, 0x7b, 0xfd, 0xd8, 0x4f, 0x22, 0x48, 0xf4, 0x8d, 0x4c, 0x76, 0xcc, - 0x82, 0xad, 0x14, 0x4f, 0x5d, 0xbd, 0x39, 0x40, 0x96, 0xcc, 0xaf, 0x3a, 0x00, 0xbc, 0x9f, 0x22, - 0xb9, 0x36, 0xed, 0xdb, 0xc6, 0xa1, 0xcd, 0x14, 0x25, 0xc2, 0xbb, 0xa6, 0xb6, 0x50, 0x5a, 0x80, - 0xb5, 0x9e, 0xdc, 0x45, 0xfa, 0xcb, 0xbb, 0xce, 0xbc, 0xf9, 0x45, 0x07, 0x8e, 0x65, 0xba, 0x9b, - 0xd3, 0x7e, 0xd3, 0x7c, 0xe6, 0xcf, 0x82, 0x64, 0x65, 0xa6, 0x5c, 0xd6, 0x8d, 0x27, 0xff, 0xdd, - 0x05, 0xe3, 0x39, 0x69, 0xf4, 0x2a, 0x8c, 0x4a, 0xcb, 0x87, 0x5c, 0xde, 0x36, 0x9f, 0x3b, 0x55, - 0xea, 0x8d, 0x84, 0xc4, 0x38, 0xa5, 0x97, 0x09, 0x9b, 0x2b, 0xf4, 0x15, 0x36, 0x77, 0x6f, 0x1f, - 0x4b, 0xcd, 0xb7, 0x4b, 0x0f, 0x1e, 0x8a, 0x5d, 0xfa, 0x01, 0xeb, 0x76, 0xe9, 0x07, 0x8f, 0xd8, - 0x2e, 0xad, 0x39, 0x09, 0x8b, 0x77, 0xe1, 0x24, 0x7c, 0x15, 0x4e, 0x6e, 0xa7, 0x4a, 0xa7, 0x5a, - 0x49, 0x22, 0xb1, 0xd0, 0xe3, 0xb9, 0xd6, 0x68, 0xaa, 0x40, 0xc7, 0x09, 0x09, 0x12, 0x4d, 0x5d, - 0x4d, 0x23, 0xf6, 0x9e, 0xcb, 0x41, 0x87, 0x73, 0x89, 0x64, 0xbd, 0x3d, 0xc3, 0x7d, 0x78, 0x7b, - 0xde, 0x74, 0xe0, 0x94, 0xd7, 0x75, 0x09, 0x0c, 0x93, 0x4d, 0x11, 0x72, 0x72, 0xdd, 0x9e, 0x08, - 0x61, 0xa0, 0x17, 0x6e, 0xb5, 0xbc, 0x22, 0x9c, 0xdf, 0x21, 0xf4, 0x48, 0xea, 0x7a, 0xe7, 0x71, - 0x9e, 0xf9, 0x7e, 0xf2, 0x6f, 0x64, 0xe3, 0x79, 0x80, 0x4d, 0xfd, 0x47, 0xed, 0x6a, 0xdb, 0x16, - 0x62, 0x7a, 0x4a, 0x77, 0x11, 0xd3, 0x93, 0x71, 0xbd, 0x8d, 0x59, 0x72, 0xbd, 0x05, 0x30, 0xe9, - 0xb7, 0xbc, 0x3a, 0x59, 0xeb, 0x34, 0x9b, 0xfc, 0x12, 0x89, 0x7c, 0x90, 0x36, 0xd7, 0x82, 0x77, - 0x25, 0xac, 0x7a, 0xcd, 0xec, 0x53, 0xe4, 0xea, 0xb2, 0xcc, 0xe5, 0x0c, 0x26, 0xdc, 0x85, 0x9b, - 0x2e, 0x58, 0x96, 0xe1, 0x8e, 0x24, 0x74, 0xb6, 0x59, 0xe0, 0xc8, 0x08, 0x5f, 0xb0, 0x97, 0x52, - 0x30, 0xd6, 0xeb, 0xa0, 0x65, 0x18, 0xad, 0x05, 0xb1, 0xb8, 0xcf, 0x7a, 0x8c, 0x31, 0xb3, 0x77, - 0x51, 0x16, 0xb8, 0x70, 0xb5, 0xa2, 0x6e, 0xb2, 0x3e, 0x90, 0x93, 0xb2, 0x51, 0x95, 0xe3, 0xb4, - 0x3d, 0x5a, 0x61, 0xc8, 0xc4, 0x6b, 0x5d, 0x3c, 0x9e, 0xe3, 0xa1, 0x1e, 0x0e, 0xa3, 0x85, 0xab, - 0xf2, 0xbd, 0xb1, 0x71, 0x41, 0x4e, 0x3c, 0xbb, 0x95, 0x62, 0xd0, 0x1e, 0x06, 0x3e, 0xbe, 0xe7, - 0xc3, 0xc0, 0x2c, 0x57, 0x6b, 0xd2, 0x54, 0xee, 0xe1, 0x73, 0xd6, 0x72, 0xb5, 0xa6, 0x91, 0x92, - 0x22, 0x57, 0x6b, 0x0a, 0xc0, 0x3a, 0x49, 0xb4, 0xda, 0xcb, 0x4d, 0x7e, 0x82, 0x31, 0x8d, 0xfd, - 0x3b, 0xbd, 0x75, 0x7f, 0xe9, 0xc9, 0x3d, 0xfd, 0xa5, 0x5d, 0xfe, 0xdd, 0x53, 0xfb, 0xf0, 0xef, - 0x36, 0x58, 0x16, 0xcd, 0xa5, 0x79, 0xe1, 0x52, 0xb7, 0xa0, 0xdf, 0xb1, 0xbc, 0x1d, 0x3c, 0xf2, - 0x94, 0xfd, 0x8b, 0x39, 0x81, 0x9e, 0x01, 0xd5, 0x67, 0x0e, 0x1c, 0x50, 0x4d, 0xd9, 0x73, 0x0a, - 0x67, 0xe9, 0x58, 0x8b, 0x82, 0x3d, 0xa7, 0x60, 0xac, 0xd7, 0xc9, 0x7a, 0x4b, 0xef, 0x3f, 0x34, - 0x6f, 0xe9, 0xd4, 0x11, 0x78, 0x4b, 0xcf, 0xf6, 0xed, 0x2d, 0xbd, 0x09, 0x27, 0xda, 0x61, 0x6d, - 0xc1, 0x8f, 0xa3, 0x0e, 0xbb, 0x55, 0x37, 0xd7, 0xa9, 0xd5, 0x49, 0xc2, 0xdc, 0xad, 0xa5, 0x0b, - 0xef, 0xd2, 0x3b, 0xd9, 0x66, 0x1b, 0x59, 0xee, 0xd1, 0x4c, 0x03, 0x66, 0x3a, 0x61, 0x51, 0xb7, - 0x39, 0x85, 0x38, 0x8f, 0x84, 0xee, 0xa7, 0x7d, 0xe8, 0x68, 0xfc, 0xb4, 0x1f, 0x84, 0x91, 0xb8, - 0xd1, 0x49, 0x6a, 0xe1, 0x8d, 0x80, 0x39, 0xe3, 0x47, 0xe7, 0xde, 0xa1, 0x4c, 0xd9, 0x02, 0x7e, - 0x7b, 0x77, 0x7a, 0x52, 0xfe, 0xaf, 0x59, 0xb1, 0x05, 0x04, 0x7d, 0xb3, 0xc7, 0xfd, 0x1d, 0xf7, - 0x30, 0xef, 0xef, 0x9c, 0xd9, 0xd7, 0xdd, 0x9d, 0x3c, 0x67, 0xf4, 0xc3, 0x6f, 0x3b, 0x67, 0xf4, - 0xd7, 0x1d, 0x18, 0xdf, 0xd6, 0x5d, 0x06, 0xc2, 0x61, 0x6e, 0x21, 0x70, 0xc7, 0xf0, 0x44, 0xcc, - 0xb9, 0x94, 0xcf, 0x19, 0xa0, 0xdb, 0x59, 0x00, 0x36, 0x7b, 0x92, 0x13, 0x54, 0xf4, 0xc8, 0xbd, - 0x0a, 0x2a, 0x7a, 0x9d, 0xf1, 0x31, 0xa9, 0xe4, 0x32, 0x2f, 0xba, 0xdd, 0x98, 0x62, 0xc9, 0x13, - 0x55, 0x48, 0xb1, 0x4e, 0x0f, 0x7d, 0xc1, 0x81, 0x49, 0xa9, 0x97, 0x09, 0x97, 0x5f, 0x2c, 0xa2, - 0x22, 0x6d, 0xaa, 0x83, 0x2c, 0xac, 0x7e, 0x3d, 0x43, 0x07, 0x77, 0x51, 0xa6, 0x5c, 0x5d, 0x05, - 0xa1, 0xd5, 0x63, 0x16, 0xfc, 0x2b, 0x64, 0x98, 0xd9, 0x14, 0x8c, 0xf5, 0x3a, 0xe8, 0x5b, 0xea, - 0xb5, 0xff, 0xc7, 0x19, 0x43, 0x7f, 0xde, 0xb2, 0x6c, 0x6a, 0xe3, 0xc9, 0x7f, 0xf4, 0x65, 0x07, - 0x26, 0x6f, 0x64, 0x0c, 0x1a, 0x22, 0x2c, 0x14, 0xdb, 0x37, 0x95, 0xf0, 0xe9, 0xce, 0x42, 0x71, - 0x57, 0x0f, 0xd0, 0xe7, 0x4d, 0x43, 0x27, 0x8f, 0x1f, 0xb5, 0x38, 0x81, 0x19, 0xc3, 0x2a, 0xbf, - 0xe6, 0x96, 0x6f, 0xf1, 0xbc, 0xeb, 0xf8, 0x90, 0x29, 0x3a, 0x98, 0xf4, 0x63, 0xe5, 0x34, 0x25, - 0xa6, 0xbd, 0xc5, 0xc2, 0x66, 0x37, 0x3e, 0xbf, 0x6e, 0x6e, 0xf9, 0xf2, 0x69, 0x98, 0x30, 0x7d, - 0x7b, 0xe8, 0xdd, 0xe6, 0x43, 0x12, 0xe7, 0xb2, 0x39, 0xf9, 0xc7, 0x65, 0x7d, 0x23, 0x2f, 0xbf, - 0x91, 0x38, 0xbf, 0x70, 0xa8, 0x89, 0xf3, 0x07, 0x8e, 0x26, 0x71, 0xfe, 0xe4, 0x61, 0x24, 0xce, - 0x3f, 0xbe, 0xaf, 0xc4, 0xf9, 0xda, 0xc3, 0x05, 0x83, 0x77, 0x78, 0xb8, 0x60, 0x16, 0x8e, 0xc9, - 0xbb, 0x3f, 0x44, 0xe4, 0x26, 0xe7, 0x6e, 0xff, 0x33, 0xa2, 0xc9, 0xb1, 0x79, 0xb3, 0x18, 0x67, - 0xeb, 0xd3, 0x4d, 0x56, 0x0c, 0x58, 0xcb, 0x21, 0x5b, 0xaf, 0x1a, 0x99, 0x4b, 0x8b, 0xa9, 0xcf, - 0x82, 0x45, 0xc9, 0x68, 0xe7, 0x22, 0x83, 0xdd, 0x96, 0xff, 0x60, 0xde, 0x03, 0xf4, 0x22, 0x94, - 0xc3, 0xcd, 0xcd, 0x66, 0xe8, 0xd5, 0xd2, 0xec, 0xfe, 0x32, 0x2e, 0x81, 0xdf, 0xdd, 0x54, 0xc9, - 0x60, 0x57, 0x7b, 0xd4, 0xc3, 0x3d, 0x31, 0xa0, 0x37, 0xa9, 0x60, 0x92, 0x84, 0x11, 0xa9, 0xa5, - 0xb6, 0x9a, 0x51, 0x36, 0x66, 0x62, 0x7d, 0xcc, 0x15, 0x93, 0x0e, 0x1f, 0xbd, 0xfa, 0x28, 0x99, - 0x52, 0x9c, 0xed, 0x16, 0x8a, 0xe0, 0x74, 0x3b, 0xcf, 0x54, 0x14, 0x8b, 0x1b, 0x4b, 0x7b, 0x19, - 0xac, 0xe4, 0xd6, 0x3d, 0x9d, 0x6b, 0x6c, 0x8a, 0x71, 0x0f, 0xcc, 0x7a, 0x06, 0xfe, 0x91, 0xa3, - 0xc9, 0xc0, 0xff, 0x71, 0x00, 0x75, 0x49, 0x5d, 0x1a, 0x1f, 0x96, 0xad, 0x5c, 0xa5, 0xe1, 0x38, - 0xb5, 0x47, 0x4f, 0x15, 0x19, 0xac, 0x91, 0x44, 0xff, 0x37, 0xf7, 0x89, 0x0a, 0x6e, 0x61, 0xa9, - 0x5b, 0x5f, 0x13, 0x6f, 0xbb, 0x67, 0x2a, 0xfe, 0x89, 0x03, 0x53, 0x7c, 0xe5, 0x65, 0x85, 0x7b, - 0x2a, 0x5a, 0x88, 0xbb, 0x3d, 0xb6, 0x43, 0x57, 0x58, 0x14, 0x5f, 0xc5, 0xa0, 0xca, 0x1c, 0xdd, - 0x7b, 0xf4, 0x04, 0x7d, 0x35, 0x47, 0xa5, 0x38, 0x66, 0xcb, 0x66, 0x99, 0xff, 0xd0, 0xc0, 0x89, - 0x5b, 0xfd, 0x68, 0x11, 0xff, 0xac, 0xa7, 0x49, 0x15, 0xb1, 0xee, 0xfd, 0xd2, 0x21, 0x99, 0x54, - 0xf5, 0xd7, 0x10, 0xf6, 0x65, 0x58, 0xfd, 0xa2, 0x03, 0x93, 0x5e, 0x26, 0xd4, 0x84, 0xd9, 0x81, - 0xac, 0xd8, 0xa4, 0x66, 0xa3, 0x34, 0x7e, 0x85, 0x09, 0x79, 0xd9, 0xa8, 0x16, 0xdc, 0x45, 0x1c, - 0xfd, 0xc8, 0x81, 0xb3, 0x89, 0x17, 0x6f, 0xf1, 0x5c, 0xc3, 0x71, 0x7a, 0x57, 0x57, 0x74, 0xee, - 0x24, 0xdb, 0x8d, 0x2f, 0x5b, 0xdf, 0x8d, 0xeb, 0xbd, 0x69, 0xf2, 0x7d, 0xf9, 0xb0, 0xd8, 0x97, - 0x67, 0xf7, 0xa8, 0x89, 0xf7, 0xea, 0xfa, 0xd4, 0x67, 0x1c, 0xfe, 0x26, 0x55, 0x4f, 0x91, 0x6f, - 0xc3, 0x14, 0xf9, 0xae, 0xd8, 0x7c, 0x15, 0x47, 0x97, 0x3d, 0x7f, 0xd5, 0x81, 0x93, 0x79, 0x27, - 0x52, 0x4e, 0x97, 0x3e, 0x6a, 0x76, 0xc9, 0xa2, 0x96, 0xa5, 0x77, 0xc8, 0xca, 0xa3, 0x1c, 0x53, - 0x57, 0xe1, 0xa1, 0x3b, 0x7d, 0xc5, 0x3b, 0xe1, 0x1b, 0xd1, 0xc5, 0xe2, 0x3f, 0x19, 0xd5, 0xbc, - 0x90, 0x09, 0x69, 0x5b, 0x8f, 0xe1, 0x0e, 0x60, 0xc8, 0x0f, 0x9a, 0x7e, 0x40, 0xc4, 0x7d, 0x4d, - 0x9b, 0x3a, 0xac, 0x78, 0x54, 0x87, 0x62, 0xc7, 0x82, 0xca, 0x3d, 0x76, 0x4a, 0x66, 0x9f, 0x29, - 0x1b, 0x3c, 0xfa, 0x67, 0xca, 0x6e, 0xc0, 0xe8, 0x0d, 0x3f, 0x69, 0xb0, 0x60, 0x0a, 0xe1, 0xeb, - 0xb3, 0x70, 0xcf, 0x91, 0xa2, 0x4b, 0xc7, 0x7e, 0x5d, 0x12, 0xc0, 0x29, 0x2d, 0x74, 0x9e, 0x13, - 0x66, 0x91, 0xdb, 0xd9, 0x90, 0xda, 0xeb, 0xb2, 0x00, 0xa7, 0x75, 0xe8, 0x64, 0x8d, 0xd1, 0x5f, - 0x32, 0x21, 0x92, 0xc8, 0xdb, 0x6b, 0x23, 0x1f, 0xa3, 0xc0, 0xc8, 0x6f, 0x13, 0x5f, 0xd7, 0x68, - 0x60, 0x83, 0xa2, 0x4a, 0x9d, 0x3c, 0xd2, 0x33, 0x75, 0xf2, 0x6b, 0x4c, 0x60, 0x4b, 0xfc, 0xa0, - 0x43, 0x56, 0x03, 0x11, 0xef, 0x7d, 0xc5, 0xce, 0xdd, 0x67, 0x8e, 0x93, 0xab, 0xe0, 0xe9, 0x6f, - 0xac, 0xd1, 0xd3, 0x5c, 0x2e, 0xa5, 0x3d, 0x5d, 0x2e, 0xa9, 0xc9, 0x65, 0xcc, 0xba, 0xc9, 0x25, - 0x21, 0x6d, 0x2b, 0x26, 0x97, 0xb7, 0x95, 0x39, 0xe0, 0xcf, 0x1d, 0x40, 0x4a, 0xee, 0x52, 0x0c, - 0xf5, 0x08, 0x82, 0x2a, 0x3f, 0xe1, 0x00, 0x04, 0xea, 0x31, 0x4b, 0xbb, 0xa7, 0x20, 0xc7, 0x99, - 0x76, 0x20, 0x85, 0x61, 0x8d, 0xa6, 0xfb, 0x3f, 0x9d, 0x34, 0x76, 0x39, 0x1d, 0xfb, 0x11, 0x04, - 0x91, 0xed, 0x98, 0x41, 0x64, 0xeb, 0x16, 0x4d, 0xf7, 0x6a, 0x18, 0x3d, 0xc2, 0xc9, 0x7e, 0x5a, - 0x80, 0x63, 0x7a, 0xe5, 0x0a, 0x39, 0x8a, 0x8f, 0x7d, 0xc3, 0x88, 0xa0, 0xbd, 0x66, 0x77, 0xbc, - 0x15, 0xe1, 0x01, 0xca, 0x8b, 0xd6, 0xfe, 0x78, 0x26, 0x5a, 0xfb, 0xba, 0x7d, 0xd2, 0x7b, 0x87, - 0x6c, 0xff, 0x37, 0x07, 0x4e, 0x64, 0x5a, 0x1c, 0xc1, 0x02, 0xdb, 0x36, 0x17, 0xd8, 0xb3, 0xd6, - 0x47, 0xdd, 0x63, 0x75, 0x7d, 0xbb, 0xd0, 0x35, 0x5a, 0xa6, 0xc4, 0x7d, 0xda, 0x81, 0x22, 0x95, - 0x96, 0x65, 0x3c, 0xd7, 0x47, 0x0f, 0x65, 0x05, 0x30, 0xb9, 0x5e, 0x70, 0x67, 0xd5, 0x3f, 0x06, - 0xc3, 0x9c, 0xfa, 0xd4, 0xa7, 0x1c, 0x80, 0xb4, 0xd2, 0xbd, 0x12, 0x81, 0xdd, 0xef, 0x16, 0xe0, - 0x54, 0xee, 0x32, 0x42, 0x9f, 0x55, 0x16, 0x39, 0xc7, 0x76, 0xb4, 0xa2, 0x41, 0x48, 0x37, 0xcc, - 0x8d, 0x1b, 0x86, 0x39, 0x61, 0x8f, 0xbb, 0x57, 0x0a, 0x8c, 0x60, 0xd3, 0xda, 0x64, 0xfd, 0xc4, - 0x49, 0x03, 0x60, 0x55, 0x5e, 0xa3, 0xbf, 0x84, 0x97, 0x78, 0xdc, 0x9f, 0x6a, 0x37, 0x1c, 0xe4, - 0x40, 0x8f, 0x80, 0x57, 0xdc, 0x30, 0x79, 0x05, 0xb6, 0xef, 0x47, 0xee, 0xc1, 0x2c, 0x5e, 0x86, - 0x3c, 0xc7, 0x72, 0x7f, 0x49, 0x11, 0x8d, 0xeb, 0xb0, 0x85, 0xbe, 0xaf, 0xc3, 0x8e, 0x43, 0xe9, - 0x05, 0x5f, 0x65, 0xd3, 0x9c, 0x9b, 0xf9, 0xde, 0x8f, 0xcf, 0xdd, 0xf7, 0xfd, 0x1f, 0x9f, 0xbb, - 0xef, 0x47, 0x3f, 0x3e, 0x77, 0xdf, 0x27, 0x6e, 0x9d, 0x73, 0xbe, 0x77, 0xeb, 0x9c, 0xf3, 0xfd, - 0x5b, 0xe7, 0x9c, 0x1f, 0xdd, 0x3a, 0xe7, 0xfc, 0xc7, 0x5b, 0xe7, 0x9c, 0xbf, 0xf7, 0x9f, 0xce, - 0xdd, 0xf7, 0xc2, 0x88, 0x1c, 0xd8, 0x5f, 0x04, 0x00, 0x00, 0xff, 0xff, 0x00, 0x23, 0x7a, 0xc2, - 0xb6, 0xd6, 0x00, 0x00, + 0xe9, 0xdf, 0xcc, 0x49, 0x78, 0xcc, 0x0b, 0x70, 0x5a, 0xc7, 0xfd, 0x93, 0x61, 0x50, 0x84, 0x0f, + 0xc9, 0x0e, 0xf3, 0x28, 0xd5, 0x99, 0xea, 0xa9, 0xcc, 0xa5, 0xea, 0x61, 0x06, 0xc5, 0xa2, 0x94, + 0xea, 0x4d, 0x32, 0x28, 0x5e, 0xb0, 0x6c, 0xb6, 0x0a, 0x65, 0xf0, 0x3c, 0x56, 0xa5, 0x79, 0x96, + 0x9d, 0xe2, 0x91, 0x58, 0x76, 0x86, 0xec, 0x5b, 0x76, 0x1e, 0x87, 0xe1, 0x28, 0x6c, 0x92, 0x59, + 0x7c, 0x55, 0x68, 0x03, 0x69, 0x50, 0x03, 0x07, 0x63, 0x59, 0x7e, 0x40, 0xdb, 0x06, 0xfa, 0x6d, + 0x67, 0x0f, 0xe3, 0xd1, 0xa8, 0xad, 0x33, 0x21, 0x37, 0x3b, 0x1c, 0x53, 0x6d, 0x0e, 0x62, 0x91, + 0xfa, 0x86, 0x03, 0xc7, 0x49, 0x50, 0x8d, 0x76, 0x18, 0x1e, 0x81, 0x4d, 0xf8, 0x9c, 0xaf, 0xd9, + 0xd8, 0x7c, 0x17, 0xb3, 0xc8, 0xb9, 0x6b, 0xa7, 0x0b, 0x8c, 0xbb, 0xbb, 0x81, 0x56, 0x61, 0xa4, + 0xea, 0x89, 0x15, 0x51, 0xda, 0xcf, 0x8a, 0xe0, 0x9e, 0xb3, 0x59, 0xb1, 0x14, 0x14, 0x12, 0xd4, + 0x02, 0x14, 0x73, 0x66, 0xc9, 0x4c, 0x6a, 0x02, 0xf5, 0xd8, 0xbe, 0x9d, 0x0d, 0x95, 0x2e, 0x24, + 0x38, 0x07, 0xb1, 0xfb, 0x93, 0x02, 0x9c, 0xc8, 0x99, 0x01, 0x76, 0x5f, 0xab, 0x45, 0x37, 0xc0, + 0xe5, 0x5a, 0x76, 0xfb, 0x2f, 0x0b, 0x38, 0x56, 0x35, 0xd0, 0x1a, 0x9c, 0xdc, 0x6a, 0xc5, 0x29, + 0x96, 0xf9, 0x30, 0x48, 0xc8, 0x4d, 0xc9, 0x0c, 0xa4, 0xfb, 0xfb, 0xe4, 0x72, 0x4e, 0x1d, 0x9c, + 0xdb, 0x92, 0x4a, 0x4b, 0x24, 0xf0, 0x36, 0x9a, 0x24, 0x2d, 0x12, 0xb7, 0x0d, 0x95, 0xb4, 0x74, + 0x31, 0x53, 0x8e, 0xbb, 0x5a, 0xa0, 0xcf, 0x39, 0x70, 0x36, 0x26, 0xd1, 0x36, 0x89, 0x2a, 0x7e, + 0x8d, 0xcc, 0x77, 0xe2, 0x24, 0x6c, 0x91, 0xe8, 0x80, 0xd6, 0xd9, 0xe9, 0x5b, 0xbb, 0xd3, 0x67, + 0x2b, 0xbd, 0xb1, 0xe1, 0xbd, 0x48, 0xb9, 0x9f, 0x73, 0x60, 0xa2, 0xc2, 0x74, 0x77, 0x25, 0xba, + 0xdb, 0x4e, 0x47, 0xfa, 0xa8, 0xca, 0x8f, 0x91, 0x61, 0xc2, 0x66, 0x46, 0x0b, 0xf7, 0x25, 0x98, + 0xac, 0x90, 0x96, 0xd7, 0x6e, 0xb0, 0xab, 0xc2, 0x3c, 0xfc, 0xeb, 0x3c, 0x8c, 0xc6, 0x12, 0x96, + 0x7d, 0x81, 0x48, 0x55, 0xc6, 0x69, 0x1d, 0xf4, 0x08, 0x0f, 0x55, 0x93, 0x17, 0x8e, 0x46, 0xb9, + 0x92, 0xc3, 0xe3, 0xdb, 0x62, 0x2c, 0xcb, 0xdc, 0x37, 0x1d, 0x18, 0x4b, 0xdb, 0x93, 0x4d, 0x54, + 0x87, 0x63, 0x55, 0xed, 0xb2, 0x5e, 0x7a, 0x4d, 0xa2, 0xff, 0x7b, 0x7d, 0x3c, 0x4b, 0xb2, 0x89, + 0x04, 0x67, 0xb1, 0xee, 0x3f, 0xd2, 0xef, 0x8b, 0x05, 0x38, 0xa6, 0xba, 0x2a, 0xfc, 0x94, 0xaf, + 0x67, 0x03, 0xf2, 0xb0, 0x8d, 0x4c, 0x3f, 0xe6, 0xdc, 0xef, 0x11, 0x94, 0xf7, 0x7a, 0x36, 0x28, + 0xef, 0x50, 0xc9, 0x77, 0xb9, 0x5e, 0xbf, 0x53, 0x80, 0x11, 0x95, 0x77, 0xe8, 0x59, 0x28, 0x32, + 0xcd, 0xf5, 0xee, 0xe4, 0x6f, 0xa6, 0x05, 0x63, 0x8e, 0x89, 0xa2, 0x64, 0x41, 0x3f, 0x07, 0xce, + 0x5d, 0x3b, 0xca, 0xed, 0x97, 0x5e, 0x94, 0x60, 0x8e, 0x09, 0x2d, 0xc3, 0x00, 0x09, 0x6a, 0x42, + 0x10, 0xdf, 0x3f, 0x42, 0xf6, 0x56, 0xd8, 0xc5, 0xa0, 0x86, 0x29, 0x16, 0x96, 0xfc, 0x8c, 0xcb, + 0x5b, 0x99, 0x97, 0x61, 0x84, 0xb0, 0x25, 0x4a, 0xdd, 0x0f, 0x80, 0x91, 0xf6, 0x4e, 0xa4, 0xd3, + 0x17, 0x3a, 0x5e, 0xf7, 0x73, 0x5e, 0x42, 0xb9, 0x4b, 0xeb, 0xb8, 0xbf, 0x3c, 0x00, 0x43, 0x95, + 0xce, 0x06, 0xd5, 0x49, 0xbe, 0xed, 0xc0, 0x89, 0x1b, 0x99, 0xcc, 0xd0, 0xe9, 0x26, 0xb9, 0x66, + 0xcf, 0x08, 0xac, 0x47, 0xae, 0x29, 0xd3, 0x57, 0x4e, 0x21, 0xce, 0xeb, 0x8e, 0x91, 0x9c, 0x75, + 0xe0, 0x50, 0x92, 0xb3, 0xde, 0x3c, 0xe4, 0xab, 0x1b, 0xe3, 0xbd, 0xae, 0x6d, 0xb8, 0xbf, 0x57, + 0x04, 0xe0, 0x5f, 0x63, 0xb5, 0x9d, 0xf4, 0x63, 0xd6, 0x7b, 0x1a, 0xc6, 0xea, 0x24, 0x20, 0x91, + 0x8c, 0x4b, 0xcc, 0xbc, 0x5a, 0xb4, 0xa4, 0x95, 0x61, 0xa3, 0x26, 0xd3, 0xa1, 0x82, 0x24, 0xda, + 0xe1, 0x72, 0x76, 0xf6, 0x7a, 0x86, 0x2a, 0xc1, 0x5a, 0x2d, 0x34, 0x63, 0x78, 0x5d, 0xb8, 0x03, + 0x7f, 0x62, 0x0f, 0x27, 0xc9, 0xfb, 0x61, 0xc2, 0xcc, 0x75, 0x22, 0x84, 0x4b, 0xe5, 0x70, 0x37, + 0x53, 0xa4, 0xe0, 0x4c, 0x6d, 0xba, 0x0b, 0x6a, 0xd1, 0x0e, 0xee, 0x04, 0x42, 0xca, 0x54, 0xbb, + 0x60, 0x81, 0x41, 0xb1, 0x28, 0x65, 0x49, 0x22, 0xd8, 0x01, 0xc8, 0xe1, 0x22, 0xd1, 0x44, 0x9a, + 0x24, 0x42, 0x2b, 0xc3, 0x46, 0x4d, 0x4a, 0x41, 0x98, 0x45, 0xc1, 0xdc, 0x67, 0x19, 0x5b, 0x66, + 0x1b, 0x26, 0x42, 0xd3, 0x9c, 0xc3, 0x45, 0xae, 0x77, 0xf7, 0xb9, 0xf4, 0x8c, 0xb6, 0x3c, 0x50, + 0x22, 0x63, 0xfd, 0xc9, 0xe0, 0xa7, 0x62, 0xb6, 0x7e, 0x8b, 0x61, 0xcc, 0x0c, 0x6b, 0xed, 0x79, + 0xd1, 0x60, 0x0d, 0x4e, 0xb6, 0xc3, 0xda, 0x5a, 0xe4, 0x87, 0x91, 0x9f, 0xec, 0xcc, 0x37, 0xbd, + 0x38, 0x66, 0x0b, 0x63, 0xdc, 0x94, 0x87, 0xd6, 0x72, 0xea, 0xe0, 0xdc, 0x96, 0x54, 0x21, 0x6a, + 0x0b, 0x20, 0x0b, 0x2e, 0x2b, 0x72, 0x01, 0x52, 0x56, 0xc4, 0xaa, 0xd4, 0x3d, 0x01, 0xc7, 0x2b, + 0x9d, 0x76, 0xbb, 0xe9, 0x93, 0x9a, 0xf2, 0x6a, 0xb8, 0x1f, 0x80, 0x63, 0x22, 0x75, 0xab, 0x92, + 0x3e, 0xf6, 0x95, 0x68, 0xdc, 0xfd, 0x73, 0x07, 0x8e, 0x65, 0x42, 0x79, 0xd0, 0xab, 0x59, 0x99, + 0xc1, 0x4e, 0x4a, 0x51, 0x4d, 0x5a, 0x10, 0xf9, 0x41, 0xf3, 0xe4, 0x8f, 0x86, 0x8c, 0xc3, 0xb7, + 0x76, 0xff, 0x85, 0x45, 0xab, 0xf3, 0x23, 0x45, 0x0f, 0xe6, 0x77, 0x3f, 0x5b, 0x80, 0xfc, 0xf8, + 0x29, 0xf4, 0xb1, 0xee, 0x09, 0x78, 0xd6, 0xe2, 0x04, 0x88, 0x00, 0xae, 0xde, 0x73, 0x10, 0x98, + 0x73, 0xb0, 0x62, 0x69, 0x0e, 0x04, 0xdd, 0xee, 0x99, 0xf8, 0x5f, 0x0e, 0x94, 0xd6, 0xd7, 0xaf, + 0xa8, 0x73, 0x0e, 0xc3, 0xe9, 0x98, 0xdf, 0xef, 0x67, 0x6e, 0xe6, 0xf9, 0xb0, 0xd5, 0xe6, 0x5e, + 0x67, 0xe1, 0x0d, 0x67, 0x59, 0x74, 0x2b, 0xb9, 0x35, 0x70, 0x8f, 0x96, 0xe8, 0x32, 0x9c, 0xd0, + 0x4b, 0x2a, 0xda, 0xa3, 0x85, 0x45, 0x91, 0x53, 0xa7, 0xbb, 0x18, 0xe7, 0xb5, 0xc9, 0xa2, 0x12, + 0xd6, 0x55, 0x76, 0x5c, 0xe5, 0xa0, 0x12, 0xc5, 0x38, 0xaf, 0x8d, 0xbb, 0x0a, 0xa5, 0x75, 0x2f, + 0x52, 0x03, 0xff, 0x20, 0x4c, 0x56, 0xc3, 0x96, 0xb4, 0x6a, 0x5d, 0x21, 0xdb, 0xa4, 0x29, 0x86, + 0xcc, 0x5f, 0x0a, 0xc9, 0x94, 0xe1, 0xae, 0xda, 0xee, 0xff, 0x38, 0x07, 0xea, 0xbe, 0x62, 0x1f, + 0x27, 0x4c, 0x5b, 0x45, 0x96, 0x16, 0x2d, 0x47, 0x96, 0x2a, 0x5e, 0x9b, 0x89, 0x2e, 0x4d, 0xd2, + 0xe8, 0xd2, 0x21, 0xdb, 0xd1, 0xa5, 0x4a, 0xe2, 0xec, 0x8a, 0x30, 0xfd, 0xaa, 0x03, 0x63, 0x41, + 0x58, 0x23, 0xca, 0x1d, 0x38, 0xcc, 0xc4, 0xde, 0x17, 0xed, 0x05, 0xea, 0xf3, 0x48, 0x49, 0x81, + 0x9e, 0x47, 0x3d, 0xab, 0x23, 0x4a, 0x2f, 0xc2, 0x46, 0x3f, 0xd0, 0xa2, 0x66, 0x67, 0xe5, 0xee, + 0x8c, 0x07, 0xf2, 0xf4, 0x95, 0x3b, 0x1a, 0x4d, 0x6f, 0x6a, 0x72, 0xd3, 0xa8, 0x2d, 0xfb, 0xa1, + 0xbc, 0x84, 0xa6, 0x79, 0x65, 0x64, 0x22, 0xe8, 0x54, 0x9e, 0x72, 0x61, 0x88, 0x87, 0x47, 0x8b, + 0xec, 0x4d, 0xcc, 0x59, 0xc8, 0x43, 0xa7, 0xb1, 0x28, 0x41, 0x89, 0x0c, 0x39, 0x28, 0xd9, 0x7a, + 0xd6, 0xc1, 0x08, 0x69, 0xc8, 0x8f, 0x39, 0x40, 0xcf, 0xe8, 0x7a, 0xf0, 0x58, 0x3f, 0x7a, 0xf0, + 0x78, 0x4f, 0x1d, 0xf8, 0x0b, 0x0e, 0x8c, 0x55, 0xb5, 0x67, 0x16, 0xca, 0x8f, 0xd9, 0x7a, 0x4e, + 0x3a, 0xef, 0x35, 0x0c, 0xee, 0x83, 0x32, 0x9e, 0x75, 0x30, 0xa8, 0xb3, 0x94, 0x95, 0x4c, 0xe9, + 0x67, 0x47, 0xbf, 0x95, 0x2c, 0x15, 0xa6, 0x11, 0x41, 0x86, 0x6e, 0x52, 0x18, 0x16, 0xb4, 0xd0, + 0x6b, 0x30, 0x22, 0x23, 0xec, 0x45, 0x24, 0x3a, 0xb6, 0xe1, 0x14, 0x30, 0x3d, 0x8f, 0x32, 0xcf, + 0x1d, 0x87, 0x62, 0x45, 0x11, 0x35, 0x60, 0xa0, 0xe6, 0xd5, 0x45, 0x4c, 0xfa, 0x8a, 0x9d, 0x3c, + 0xa2, 0x92, 0x26, 0xd3, 0xcf, 0x16, 0x66, 0x97, 0x30, 0x25, 0x81, 0x6e, 0xa6, 0x79, 0xea, 0x27, + 0xad, 0x9d, 0xbe, 0xa6, 0x98, 0xc4, 0xcd, 0x1a, 0x5d, 0x69, 0xef, 0x6b, 0xc2, 0x59, 0xfb, 0xd7, + 0x18, 0xd9, 0x45, 0x3b, 0x89, 0x48, 0x79, 0xd6, 0x93, 0xd4, 0xe1, 0x4b, 0xa9, 0x34, 0x92, 0xa4, + 0x5d, 0xfe, 0x79, 0x5b, 0x54, 0x58, 0xee, 0x0e, 0xfe, 0xf2, 0xf7, 0xfa, 0xfa, 0x1a, 0x66, 0xd8, + 0x51, 0x13, 0x86, 0xda, 0x2c, 0x8e, 0xa4, 0xfc, 0x4e, 0x5b, 0x67, 0x0b, 0x8f, 0x4b, 0xe1, 0x6b, + 0x93, 0xff, 0x8f, 0x05, 0x0d, 0x74, 0x11, 0x86, 0xf9, 0x73, 0x2b, 0xfc, 0x4e, 0x40, 0xe9, 0xc2, + 0x54, 0xef, 0x47, 0x5b, 0xd2, 0x83, 0x82, 0xff, 0x8e, 0xb1, 0x6c, 0x8b, 0xbe, 0xe8, 0xc0, 0x04, + 0xe5, 0xa8, 0xe9, 0xfb, 0x30, 0x65, 0x64, 0x8b, 0x67, 0x5d, 0x8b, 0xa9, 0x44, 0x22, 0x79, 0x8d, + 0x52, 0x93, 0x2e, 0x1b, 0xe4, 0x70, 0x86, 0x3c, 0x7a, 0x1d, 0x46, 0x62, 0xbf, 0x46, 0xaa, 0x5e, + 0x14, 0x97, 0x4f, 0x1c, 0x4e, 0x57, 0x52, 0xf7, 0x90, 0x20, 0x84, 0x15, 0x49, 0xf4, 0x6b, 0xec, + 0x81, 0x4e, 0xf1, 0x98, 0x7e, 0x95, 0x8b, 0xf5, 0x27, 0x6d, 0xed, 0x7d, 0xe9, 0x08, 0x93, 0x98, + 0x85, 0xd7, 0xc4, 0x24, 0x87, 0xb3, 0xf4, 0xd1, 0xdf, 0x71, 0xe0, 0x14, 0x4f, 0xb5, 0x9f, 0x7d, + 0x1b, 0xe2, 0xd4, 0x01, 0xed, 0x33, 0xec, 0x32, 0xc3, 0x6c, 0x1e, 0x4a, 0x9c, 0x4f, 0x89, 0x25, + 0xc6, 0x35, 0x9f, 0xf3, 0x39, 0x6d, 0xd5, 0x4d, 0xda, 0xff, 0x13, 0x3e, 0xe8, 0x49, 0x28, 0xb5, + 0xc5, 0x71, 0xe8, 0xc7, 0x2d, 0x76, 0x35, 0x65, 0x80, 0x5f, 0x1a, 0x5c, 0x4b, 0xc1, 0x58, 0xaf, + 0x63, 0x64, 0x49, 0x7e, 0x7c, 0xaf, 0x2c, 0xc9, 0xe8, 0x1a, 0x94, 0x92, 0xb0, 0x29, 0x12, 0x85, + 0xc6, 0xe5, 0x32, 0x5b, 0x81, 0xe7, 0xf2, 0xf6, 0xd6, 0xba, 0xaa, 0x96, 0x6a, 0xb2, 0x29, 0x2c, + 0xc6, 0x3a, 0x1e, 0x16, 0x0e, 0x2c, 0x9e, 0x30, 0x88, 0x98, 0x0a, 0x7b, 0x7f, 0x26, 0x1c, 0x58, + 0x2f, 0xc4, 0x66, 0x5d, 0xb4, 0x04, 0xc7, 0xdb, 0x5d, 0x3a, 0x30, 0xbf, 0x12, 0xa7, 0x22, 0x30, + 0xba, 0x15, 0xe0, 0xee, 0x36, 0x86, 0xf6, 0x7b, 0x76, 0x2f, 0xed, 0xb7, 0x47, 0xce, 0xe0, 0x07, + 0x0e, 0x92, 0x33, 0x18, 0xd5, 0xe0, 0x01, 0xaf, 0x93, 0x84, 0x2c, 0x3f, 0x8d, 0xd9, 0x84, 0x47, + 0x46, 0x3f, 0xc4, 0x83, 0xad, 0x6f, 0xed, 0x4e, 0x3f, 0x30, 0xbb, 0x47, 0x3d, 0xbc, 0x27, 0x16, + 0xf4, 0x0a, 0x8c, 0x10, 0x91, 0xf7, 0xb8, 0xfc, 0x73, 0xb6, 0x84, 0x04, 0x33, 0x93, 0xb2, 0x0c, + 0x3a, 0xe5, 0x30, 0xac, 0xe8, 0xa1, 0x75, 0x28, 0x35, 0xc2, 0x38, 0x99, 0x6d, 0xfa, 0x5e, 0x4c, + 0xe2, 0xf2, 0x83, 0x6c, 0xd1, 0xe4, 0xca, 0x5e, 0x97, 0x64, 0xb5, 0x74, 0xcd, 0x5c, 0x4a, 0x5b, + 0x62, 0x1d, 0x0d, 0x22, 0xcc, 0x59, 0xca, 0xc2, 0xc2, 0xa5, 0x23, 0xe8, 0x1c, 0x1b, 0xd8, 0xa3, + 0x79, 0x98, 0xd7, 0xc2, 0x5a, 0xc5, 0xac, 0xad, 0xbc, 0xa5, 0x3a, 0x10, 0x67, 0x71, 0xa2, 0xa7, + 0x61, 0xac, 0x1d, 0xd6, 0x2a, 0x6d, 0x52, 0x5d, 0xf3, 0x92, 0x6a, 0xa3, 0x3c, 0x6d, 0x5a, 0xdd, + 0xd6, 0xb4, 0x32, 0x6c, 0xd4, 0x44, 0x6d, 0x18, 0x6e, 0xf1, 0xc4, 0x05, 0xe5, 0x87, 0x6d, 0xe9, + 0x36, 0x22, 0x13, 0x02, 0x97, 0x17, 0xc4, 0x0f, 0x2c, 0xc9, 0xa0, 0x7f, 0xec, 0xc0, 0xb1, 0xcc, + 0x65, 0xab, 0xf2, 0x3b, 0xac, 0x89, 0x2c, 0x26, 0xe2, 0xb9, 0x47, 0xd9, 0xf4, 0x99, 0xc0, 0xdb, + 0xdd, 0x20, 0x9c, 0xed, 0x11, 0x9f, 0x17, 0x96, 0x7d, 0xa4, 0xfc, 0x88, 0xbd, 0x79, 0x61, 0x08, + 0xe5, 0xbc, 0xb0, 0x1f, 0x58, 0x92, 0x41, 0x8f, 0xc3, 0xb0, 0x48, 0x14, 0x58, 0x7e, 0xd4, 0xf4, + 0x78, 0x8b, 0x7c, 0x82, 0x58, 0x96, 0x4f, 0x7d, 0x00, 0x8e, 0x77, 0xa9, 0x6e, 0xfb, 0x4a, 0x81, + 0xf1, 0x1b, 0x0e, 0xe8, 0xb7, 0xb3, 0xad, 0x3f, 0x36, 0xf2, 0x34, 0x8c, 0x55, 0xf9, 0xcb, 0x8e, + 0xfc, 0x7e, 0xf7, 0xa0, 0x69, 0xff, 0x9c, 0xd7, 0xca, 0xb0, 0x51, 0xd3, 0xbd, 0x04, 0xa8, 0x3b, + 0x13, 0xfc, 0x81, 0xf2, 0x2b, 0xfd, 0x53, 0x07, 0xc6, 0x0d, 0x99, 0xc1, 0xba, 0x93, 0x71, 0x11, + 0x50, 0xcb, 0x8f, 0xa2, 0x30, 0xd2, 0x9f, 0xd0, 0x13, 0x39, 0x18, 0x98, 0xe3, 0x79, 0xa5, 0xab, + 0x14, 0xe7, 0xb4, 0x70, 0xff, 0xf9, 0x20, 0xa4, 0x51, 0xd7, 0x2a, 0xd5, 0xae, 0xd3, 0x33, 0xd5, + 0xee, 0x13, 0x30, 0xf2, 0x52, 0x1c, 0x06, 0x6b, 0x69, 0x42, 0x5e, 0xf5, 0x2d, 0x9e, 0xa9, 0xac, + 0x5e, 0x65, 0x35, 0x55, 0x0d, 0x56, 0xfb, 0xe5, 0x45, 0xbf, 0x99, 0x74, 0x67, 0x6c, 0x7d, 0xe6, + 0x59, 0x0e, 0xc7, 0xaa, 0x06, 0x7b, 0x4d, 0x6f, 0x9b, 0x28, 0xc3, 0x78, 0xfa, 0x9a, 0x1e, 0x7f, + 0xe4, 0x81, 0x95, 0xa1, 0xf3, 0x30, 0xaa, 0x8c, 0xea, 0xc2, 0x52, 0xaf, 0x66, 0x4a, 0x59, 0xde, + 0x71, 0x5a, 0x87, 0x09, 0x84, 0xc2, 0x10, 0x2b, 0x4c, 0x28, 0x15, 0x1b, 0xea, 0x49, 0xc6, 0xb4, + 0xcb, 0x79, 0xbb, 0x04, 0x63, 0x45, 0x32, 0xcf, 0xd1, 0x3a, 0x7a, 0x28, 0x8e, 0x56, 0xed, 0x0a, + 0x40, 0xb1, 0xdf, 0x2b, 0x00, 0xe6, 0xda, 0x1e, 0xe9, 0x6b, 0x6d, 0x7f, 0x7a, 0x00, 0x86, 0x9f, + 0x23, 0x11, 0x4b, 0x54, 0xfe, 0x38, 0x0c, 0x6f, 0xf3, 0x7f, 0xb3, 0xf7, 0x47, 0x45, 0x0d, 0x2c, + 0xcb, 0xe9, 0x77, 0xdb, 0xe8, 0xf8, 0xcd, 0xda, 0x42, 0xba, 0x8b, 0xd3, 0x1c, 0x87, 0xb2, 0x00, + 0xa7, 0x75, 0x68, 0x83, 0x3a, 0x95, 0xec, 0x5b, 0x2d, 0xbf, 0xeb, 0xa1, 0xf8, 0x25, 0x59, 0x80, + 0xd3, 0x3a, 0xe8, 0x51, 0x18, 0xaa, 0xfb, 0xc9, 0xba, 0x57, 0xcf, 0xba, 0x09, 0x97, 0x18, 0x14, + 0x8b, 0x52, 0xe6, 0x26, 0xf2, 0x93, 0xf5, 0x88, 0x30, 0xcb, 0x6e, 0x57, 0xfa, 0x8a, 0x25, 0xad, + 0x0c, 0x1b, 0x35, 0x59, 0x97, 0x42, 0x31, 0x32, 0x11, 0x34, 0x9a, 0x76, 0x49, 0x16, 0xe0, 0xb4, + 0x0e, 0x5d, 0xff, 0xd5, 0xb0, 0xd5, 0xf6, 0x9b, 0x22, 0x9c, 0x59, 0x5b, 0xff, 0xf3, 0x02, 0x8e, + 0x55, 0x0d, 0x5a, 0x9b, 0xb2, 0x30, 0xca, 0x7e, 0xb2, 0x2f, 0x97, 0xad, 0x09, 0x38, 0x56, 0x35, + 0xdc, 0xe7, 0x60, 0x9c, 0xef, 0xe4, 0xf9, 0xa6, 0xe7, 0xb7, 0x96, 0xe6, 0xd1, 0xc5, 0xae, 0x2b, + 0x00, 0x8f, 0xe7, 0x5c, 0x01, 0x38, 0x65, 0x34, 0xea, 0xbe, 0x0a, 0xe0, 0xfe, 0xa8, 0x00, 0x23, + 0x47, 0xf8, 0xf8, 0xe3, 0x91, 0xbf, 0x63, 0x8c, 0x6e, 0x66, 0x1e, 0x7e, 0x5c, 0xb3, 0x79, 0xa3, + 0x67, 0xcf, 0x47, 0x1f, 0xff, 0x6b, 0x01, 0x4e, 0xcb, 0xaa, 0x52, 0x97, 0x5b, 0x9a, 0x67, 0x4f, + 0x6e, 0x1d, 0xfe, 0x44, 0x47, 0xc6, 0x44, 0xaf, 0xd9, 0xd3, 0x46, 0x97, 0xe6, 0x7b, 0x4e, 0xf5, + 0x2b, 0x99, 0xa9, 0xc6, 0x56, 0xa9, 0xee, 0x3d, 0xd9, 0x7f, 0xe1, 0xc0, 0x54, 0xfe, 0x64, 0x1f, + 0xc1, 0x5b, 0x9b, 0xaf, 0x9b, 0x6f, 0x6d, 0xfe, 0xa2, 0xbd, 0x25, 0x66, 0x0e, 0xa5, 0xc7, 0xab, + 0x9b, 0x7f, 0xe6, 0xc0, 0x49, 0xd9, 0x80, 0x9d, 0x9e, 0x73, 0x7e, 0xc0, 0x22, 0x59, 0x0e, 0x7f, + 0x99, 0xbd, 0x66, 0x2c, 0xb3, 0x17, 0xec, 0x0d, 0x5c, 0x1f, 0x47, 0xcf, 0x37, 0xca, 0xff, 0xd4, + 0x81, 0x72, 0x5e, 0x83, 0x23, 0xf8, 0xe4, 0xaf, 0x9a, 0x9f, 0xfc, 0xb9, 0xc3, 0x19, 0x79, 0xef, + 0x0f, 0x5e, 0xee, 0x35, 0x51, 0xa8, 0x29, 0xe5, 0x2a, 0xc7, 0x96, 0x8f, 0x96, 0x93, 0xc8, 0x17, + 0xd0, 0x9a, 0x30, 0x14, 0xb3, 0xa8, 0x0d, 0xb1, 0x04, 0x2e, 0xd9, 0x90, 0xb6, 0x28, 0x3e, 0x61, + 0x63, 0x67, 0xff, 0x63, 0x41, 0xc3, 0xfd, 0xcd, 0x02, 0x9c, 0x51, 0x6f, 0xe8, 0x92, 0x6d, 0xd2, + 0x4c, 0xf7, 0x07, 0x7b, 0xd6, 0xc1, 0x53, 0x3f, 0xed, 0x3d, 0xeb, 0x90, 0x92, 0x48, 0xf7, 0x42, + 0x0a, 0xc3, 0x1a, 0x4d, 0x54, 0x81, 0x53, 0xec, 0x19, 0x86, 0x45, 0x3f, 0xf0, 0x9a, 0xfe, 0x2b, + 0x24, 0xc2, 0xa4, 0x15, 0x6e, 0x7b, 0x4d, 0x21, 0xa9, 0xab, 0x2b, 0xc4, 0x8b, 0x79, 0x95, 0x70, + 0x7e, 0xdb, 0x2e, 0x8d, 0x7b, 0xa0, 0x5f, 0x8d, 0xdb, 0xfd, 0x63, 0x07, 0xc6, 0x8e, 0xf0, 0xc5, + 0xe1, 0xd0, 0xdc, 0x12, 0xcf, 0xd8, 0xdb, 0x12, 0x3d, 0xb6, 0xc1, 0x6e, 0x11, 0xba, 0x1e, 0x61, + 0x45, 0x9f, 0x71, 0x54, 0x5c, 0x0b, 0x0f, 0x1e, 0xfc, 0xb0, 0xbd, 0x7e, 0xec, 0x27, 0xef, 0x24, + 0xfa, 0x46, 0x26, 0x19, 0x67, 0xc1, 0x56, 0x46, 0xa9, 0xae, 0xde, 0x1c, 0x20, 0x29, 0xe7, 0x57, + 0x1d, 0x00, 0xde, 0x4f, 0x91, 0xcb, 0x9b, 0xf6, 0x6d, 0xe3, 0xd0, 0x66, 0x8a, 0x12, 0xe1, 0x5d, + 0x53, 0x5b, 0x28, 0x2d, 0xc0, 0x5a, 0x4f, 0xee, 0x22, 0xdb, 0xe6, 0x5d, 0x27, 0xfa, 0xfc, 0xa2, + 0x03, 0xc7, 0x32, 0xdd, 0xcd, 0x69, 0xbf, 0x69, 0xbe, 0x2a, 0x68, 0x41, 0xb2, 0x32, 0x33, 0x3c, + 0xeb, 0xc6, 0x93, 0xff, 0xee, 0x82, 0xf1, 0x7a, 0x35, 0x7a, 0x15, 0x46, 0xa5, 0xe5, 0x43, 0x2e, + 0x6f, 0x9b, 0xaf, 0xab, 0x2a, 0xf5, 0x46, 0x42, 0x62, 0x9c, 0xd2, 0xcb, 0x84, 0xcd, 0x15, 0xfa, + 0x0a, 0x9b, 0xbb, 0xb7, 0x6f, 0xb3, 0xe6, 0xdb, 0xa5, 0x07, 0x0f, 0xc5, 0x2e, 0xfd, 0x80, 0x75, + 0xbb, 0xf4, 0x83, 0x47, 0x6c, 0x97, 0xd6, 0x9c, 0x84, 0xc5, 0xbb, 0x70, 0x12, 0xbe, 0x0a, 0x27, + 0xb7, 0x53, 0xa5, 0x53, 0xad, 0x24, 0x91, 0xc7, 0xe8, 0xf1, 0x5c, 0x6b, 0x34, 0x55, 0xa0, 0xe3, + 0x84, 0x04, 0x89, 0xa6, 0xae, 0xa6, 0x11, 0x7b, 0xcf, 0xe5, 0xa0, 0xc3, 0xb9, 0x44, 0xb2, 0xde, + 0x9e, 0xe1, 0x3e, 0xbc, 0x3d, 0x6f, 0x3a, 0x70, 0xca, 0xeb, 0xba, 0x73, 0x86, 0xc9, 0xa6, 0x08, + 0x39, 0xb9, 0x6e, 0x4f, 0x84, 0x30, 0xd0, 0x0b, 0xb7, 0x5a, 0x5e, 0x11, 0xce, 0xef, 0x10, 0x7a, + 0x24, 0x75, 0xbd, 0xf3, 0x38, 0xcf, 0x7c, 0x3f, 0xf9, 0x37, 0xb2, 0xf1, 0x3c, 0xc0, 0xa6, 0xfe, + 0xa3, 0x76, 0xb5, 0x6d, 0x0b, 0x31, 0x3d, 0xa5, 0xbb, 0x88, 0xe9, 0xc9, 0xb8, 0xde, 0xc6, 0x2c, + 0xb9, 0xde, 0x02, 0x98, 0xf4, 0x5b, 0x5e, 0x9d, 0xac, 0x75, 0x9a, 0x4d, 0x7e, 0x89, 0x44, 0xbe, + 0x7f, 0x9b, 0x6b, 0xc1, 0xbb, 0x12, 0x56, 0xbd, 0x66, 0xf6, 0xe5, 0x73, 0x75, 0x59, 0xe6, 0x72, + 0x06, 0x13, 0xee, 0xc2, 0x4d, 0x17, 0x2c, 0x4b, 0xa8, 0x47, 0x12, 0x3a, 0xdb, 0x2c, 0x70, 0x64, + 0x84, 0x2f, 0xd8, 0x4b, 0x29, 0x18, 0xeb, 0x75, 0xd0, 0x32, 0x8c, 0xd6, 0x82, 0x58, 0x5c, 0x9f, + 0x3d, 0xc6, 0x98, 0xd9, 0xbb, 0x28, 0x0b, 0x5c, 0xb8, 0x5a, 0x51, 0x17, 0x67, 0x1f, 0xc8, 0xc9, + 0x10, 0xa9, 0xca, 0x71, 0xda, 0x1e, 0xad, 0x30, 0x64, 0xe2, 0x71, 0x30, 0x1e, 0xcf, 0xf1, 0x50, + 0x0f, 0x87, 0xd1, 0xc2, 0x55, 0xf9, 0xbc, 0xd9, 0xb8, 0x20, 0x27, 0x5e, 0xf9, 0x4a, 0x31, 0x68, + 0xef, 0x10, 0x1f, 0xdf, 0xf3, 0x1d, 0x62, 0x96, 0x1a, 0x36, 0x69, 0x2a, 0xf7, 0xf0, 0x39, 0x6b, + 0xa9, 0x61, 0xd3, 0x48, 0x49, 0x91, 0x1a, 0x36, 0x05, 0x60, 0x9d, 0x24, 0x5a, 0xed, 0xe5, 0x26, + 0x3f, 0xc1, 0x98, 0xc6, 0xfe, 0x9d, 0xde, 0xba, 0xbf, 0xf4, 0xe4, 0x9e, 0xfe, 0xd2, 0x2e, 0xff, + 0xee, 0xa9, 0x7d, 0xf8, 0x77, 0x1b, 0x2c, 0x69, 0xe7, 0xd2, 0xbc, 0x70, 0xa9, 0x5b, 0xd0, 0xef, + 0x58, 0x9a, 0x10, 0x1e, 0x79, 0xca, 0xfe, 0xc5, 0x9c, 0x40, 0xcf, 0x80, 0xea, 0x33, 0x07, 0x0e, + 0xa8, 0xa6, 0xec, 0x39, 0x85, 0xb3, 0xec, 0xaf, 0x45, 0xc1, 0x9e, 0x53, 0x30, 0xd6, 0xeb, 0x64, + 0xbd, 0xa5, 0xf7, 0x1f, 0x9a, 0xb7, 0x74, 0xea, 0x08, 0xbc, 0xa5, 0x67, 0xfb, 0xf6, 0x96, 0xde, + 0x84, 0x13, 0xed, 0xb0, 0xb6, 0xe0, 0xc7, 0x51, 0x87, 0xdd, 0xaa, 0x9b, 0xeb, 0xd4, 0xea, 0x24, + 0x61, 0xee, 0xd6, 0xd2, 0x85, 0x77, 0xe9, 0x9d, 0x6c, 0xb3, 0x8d, 0x2c, 0xf7, 0x68, 0xa6, 0x01, + 0x33, 0x9d, 0xb0, 0xa8, 0xdb, 0x9c, 0x42, 0x9c, 0x47, 0x42, 0xf7, 0xd3, 0x3e, 0x74, 0x34, 0x7e, + 0xda, 0x0f, 0xc2, 0x48, 0xdc, 0xe8, 0x24, 0xb5, 0xf0, 0x46, 0xc0, 0x9c, 0xf1, 0xa3, 0x73, 0xef, + 0x50, 0xa6, 0x6c, 0x01, 0xbf, 0xbd, 0x3b, 0x3d, 0x29, 0xff, 0xd7, 0xac, 0xd8, 0x02, 0x82, 0xbe, + 0xd9, 0xe3, 0xfe, 0x8e, 0x7b, 0x98, 0xf7, 0x77, 0xce, 0xec, 0xeb, 0xee, 0x4e, 0x9e, 0x33, 0xfa, + 0xe1, 0xb7, 0x9d, 0x33, 0xfa, 0xeb, 0x0e, 0x8c, 0x6f, 0xeb, 0x2e, 0x03, 0xe1, 0x30, 0xb7, 0x10, + 0xb8, 0x63, 0x78, 0x22, 0xe6, 0x5c, 0xca, 0xe7, 0x0c, 0xd0, 0xed, 0x2c, 0x00, 0x9b, 0x3d, 0xc9, + 0x09, 0x2a, 0x7a, 0xe4, 0x5e, 0x05, 0x15, 0xbd, 0xce, 0xf8, 0x98, 0x54, 0x72, 0x99, 0x17, 0xdd, + 0x6e, 0x4c, 0xb1, 0xe4, 0x89, 0x2a, 0xa4, 0x58, 0xa7, 0x87, 0xbe, 0xe0, 0xc0, 0xa4, 0xd4, 0xcb, + 0x84, 0xcb, 0x2f, 0x16, 0x51, 0x91, 0x36, 0xd5, 0x41, 0x16, 0x56, 0xbf, 0x9e, 0xa1, 0x83, 0xbb, + 0x28, 0x53, 0xae, 0xae, 0x82, 0xd0, 0xea, 0x31, 0x0b, 0xfe, 0x15, 0x32, 0xcc, 0x6c, 0x0a, 0xc6, + 0x7a, 0x1d, 0xf4, 0x2d, 0x07, 0xf8, 0x33, 0xfe, 0xe5, 0xc7, 0x19, 0x43, 0x7f, 0xde, 0xb2, 0x6c, + 0x7a, 0x89, 0xe2, 0xe6, 0x42, 0xe9, 0x93, 0xd2, 0x76, 0xc4, 0x60, 0xb7, 0x77, 0xa7, 0x27, 0x8c, + 0xb7, 0x8d, 0xe2, 0x37, 0xde, 0xd2, 0x20, 0xc2, 0xb6, 0xc9, 0xba, 0x86, 0xbe, 0xec, 0xc0, 0xe4, + 0x8d, 0x8c, 0x41, 0x43, 0x84, 0x85, 0x62, 0xfb, 0xa6, 0x12, 0x3e, 0xdd, 0x59, 0x28, 0xee, 0xea, + 0x01, 0xfa, 0xbc, 0x69, 0xe8, 0xe4, 0xf1, 0xa3, 0x16, 0x27, 0x30, 0x63, 0x58, 0xe5, 0xd7, 0xdc, + 0xf2, 0x2d, 0x9e, 0x77, 0x1d, 0x1f, 0x32, 0x45, 0x07, 0x93, 0x7e, 0xac, 0x9c, 0xa6, 0xc4, 0xb4, + 0xb7, 0x58, 0xd8, 0xec, 0xc6, 0xe7, 0xd7, 0xcd, 0x2d, 0x5f, 0x3e, 0x0d, 0x13, 0xa6, 0x6f, 0x0f, + 0xbd, 0xdb, 0x7c, 0xb7, 0xe2, 0x5c, 0xf6, 0x09, 0x80, 0x71, 0x59, 0xdf, 0x78, 0x06, 0xc0, 0xc8, + 0xd3, 0x5f, 0x38, 0xd4, 0x3c, 0xfd, 0x03, 0x47, 0x93, 0xa7, 0x7f, 0xf2, 0x30, 0xf2, 0xf4, 0x1f, + 0xdf, 0x57, 0x9e, 0x7e, 0xed, 0x9d, 0x84, 0xc1, 0x3b, 0xbc, 0x93, 0x30, 0x0b, 0xc7, 0xe4, 0xdd, + 0x1f, 0x22, 0x52, 0xa1, 0x73, 0xb7, 0xff, 0x19, 0xd1, 0xe4, 0xd8, 0xbc, 0x59, 0x8c, 0xb3, 0xf5, + 0xe9, 0x26, 0x2b, 0x06, 0xac, 0xe5, 0x90, 0xad, 0x47, 0x94, 0xcc, 0xa5, 0xc5, 0xd4, 0x67, 0xc1, + 0xa2, 0x64, 0xb4, 0x73, 0x91, 0xc1, 0x6e, 0xcb, 0x7f, 0x30, 0xef, 0x01, 0x7a, 0x11, 0xca, 0xe1, + 0xe6, 0x66, 0x33, 0xf4, 0x6a, 0xe9, 0x63, 0x02, 0x32, 0x2e, 0x81, 0xdf, 0xdd, 0x54, 0xb9, 0x67, + 0x57, 0x7b, 0xd4, 0xc3, 0x3d, 0x31, 0xa0, 0x37, 0xa9, 0x60, 0x92, 0x84, 0x11, 0xa9, 0xa5, 0xb6, + 0x9a, 0x51, 0x36, 0x66, 0x62, 0x7d, 0xcc, 0x15, 0x93, 0x0e, 0x1f, 0xbd, 0xfa, 0x28, 0x99, 0x52, + 0x9c, 0xed, 0x16, 0x8a, 0xe0, 0x74, 0x3b, 0xcf, 0x54, 0x14, 0x8b, 0x1b, 0x4b, 0x7b, 0x19, 0xac, + 0xe4, 0xd6, 0x3d, 0x9d, 0x6b, 0x6c, 0x8a, 0x71, 0x0f, 0xcc, 0x7a, 0xc2, 0xff, 0x91, 0xa3, 0x49, + 0xf8, 0xff, 0x71, 0x00, 0x75, 0x49, 0x5d, 0x1a, 0x1f, 0x96, 0xad, 0x5c, 0xa5, 0xe1, 0x38, 0xb5, + 0x37, 0x56, 0x15, 0x19, 0xac, 0x91, 0x44, 0xff, 0x27, 0xf7, 0x45, 0x0c, 0x6e, 0x61, 0xa9, 0x5b, + 0x5f, 0x13, 0x6f, 0xbb, 0x57, 0x31, 0xfe, 0x89, 0x03, 0x53, 0x7c, 0xe5, 0x65, 0x85, 0x7b, 0x2a, + 0x5a, 0x88, 0xbb, 0x3d, 0xb6, 0x43, 0x57, 0x78, 0xfa, 0x18, 0x83, 0x2a, 0x73, 0x74, 0xef, 0xd1, + 0x13, 0xf4, 0xd5, 0x1c, 0x95, 0xe2, 0x98, 0x2d, 0x9b, 0x65, 0xfe, 0xbb, 0x06, 0x27, 0x6e, 0xf5, + 0xa3, 0x45, 0xfc, 0xb3, 0x9e, 0x26, 0x55, 0xc4, 0xba, 0xf7, 0x4b, 0x87, 0x64, 0x52, 0xd5, 0x1f, + 0x5f, 0xd8, 0x97, 0x61, 0xf5, 0x8b, 0x0e, 0x4c, 0x7a, 0x99, 0x50, 0x13, 0x66, 0x07, 0xb2, 0x62, + 0x93, 0x9a, 0x8d, 0xd2, 0xf8, 0x15, 0x26, 0xe4, 0x65, 0xa3, 0x5a, 0x70, 0x17, 0x71, 0xf4, 0x23, + 0x07, 0xce, 0x26, 0x5e, 0xbc, 0xc5, 0x53, 0x1b, 0xc7, 0xe9, 0x5d, 0x5d, 0xd1, 0xb9, 0x93, 0x6c, + 0x37, 0xbe, 0x6c, 0x7d, 0x37, 0xae, 0xf7, 0xa6, 0xc9, 0xf7, 0xe5, 0xc3, 0x62, 0x5f, 0x9e, 0xdd, + 0xa3, 0x26, 0xde, 0xab, 0xeb, 0x53, 0x9f, 0x71, 0xf8, 0x13, 0x58, 0x3d, 0x45, 0xbe, 0x0d, 0x53, + 0xe4, 0xbb, 0x62, 0xf3, 0x11, 0x1e, 0x5d, 0xf6, 0xfc, 0x55, 0x07, 0x4e, 0xe6, 0x9d, 0x48, 0x39, + 0x5d, 0xfa, 0xa8, 0xd9, 0x25, 0x8b, 0x5a, 0x96, 0xde, 0x21, 0x2b, 0x6f, 0x80, 0x4c, 0x5d, 0x85, + 0x87, 0xee, 0xf4, 0x15, 0xef, 0x84, 0x6f, 0x44, 0x17, 0x8b, 0xff, 0x74, 0x54, 0xf3, 0x42, 0x26, + 0xa4, 0x6d, 0x3d, 0x86, 0x3b, 0x80, 0x21, 0x3f, 0x68, 0xfa, 0x01, 0x11, 0xf7, 0x35, 0x6d, 0xea, + 0xb0, 0xe2, 0x0d, 0x1f, 0x8a, 0x1d, 0x0b, 0x2a, 0xf7, 0xd8, 0x29, 0x99, 0x7d, 0x15, 0x6d, 0xf0, + 0xe8, 0x5f, 0x45, 0xbb, 0x01, 0xa3, 0x37, 0xfc, 0xa4, 0xc1, 0x82, 0x29, 0x84, 0xaf, 0xcf, 0xc2, + 0x3d, 0x47, 0x8a, 0x2e, 0x1d, 0xfb, 0x75, 0x49, 0x00, 0xa7, 0xb4, 0xd0, 0x79, 0x4e, 0x98, 0x45, + 0x6e, 0x67, 0x43, 0x6a, 0xaf, 0xcb, 0x02, 0x9c, 0xd6, 0xa1, 0x93, 0x35, 0x46, 0x7f, 0xc9, 0x84, + 0x48, 0x22, 0x4d, 0xb0, 0x8d, 0xf4, 0x8f, 0x02, 0x23, 0xbf, 0x4d, 0x7c, 0x5d, 0xa3, 0x81, 0x0d, + 0x8a, 0x2a, 0x53, 0xf3, 0x48, 0xcf, 0x4c, 0xcd, 0xaf, 0x31, 0x81, 0x2d, 0xf1, 0x83, 0x0e, 0x59, + 0x0d, 0x44, 0xbc, 0xf7, 0x15, 0x3b, 0x77, 0x9f, 0x39, 0x4e, 0xae, 0x82, 0xa7, 0xbf, 0xb1, 0x46, + 0x4f, 0x73, 0xb9, 0x94, 0xf6, 0x74, 0xb9, 0xa4, 0x26, 0x97, 0x31, 0xeb, 0x26, 0x97, 0x84, 0xb4, + 0xad, 0x98, 0x5c, 0xde, 0x56, 0xe6, 0x80, 0xbf, 0x70, 0x00, 0x29, 0xb9, 0x4b, 0x31, 0xd4, 0x23, + 0x08, 0xaa, 0xfc, 0x84, 0x03, 0x10, 0xa8, 0xb7, 0x33, 0xed, 0x9e, 0x82, 0x1c, 0x67, 0xda, 0x81, + 0x14, 0x86, 0x35, 0x9a, 0xee, 0x9f, 0x38, 0x69, 0xec, 0x72, 0x3a, 0xf6, 0x23, 0x08, 0x22, 0xdb, + 0x31, 0x83, 0xc8, 0xd6, 0x2d, 0x9a, 0xee, 0xd5, 0x30, 0x7a, 0x84, 0x93, 0xfd, 0xb4, 0x00, 0xc7, + 0xf4, 0xca, 0x15, 0x72, 0x14, 0x1f, 0xfb, 0x86, 0x11, 0x41, 0x7b, 0xcd, 0xee, 0x78, 0x2b, 0xc2, + 0x03, 0x94, 0x17, 0xad, 0xfd, 0xf1, 0x4c, 0xb4, 0xf6, 0x75, 0xfb, 0xa4, 0xf7, 0x0e, 0xd9, 0xfe, + 0x6f, 0x0e, 0x9c, 0xc8, 0xb4, 0x38, 0x82, 0x05, 0xb6, 0x6d, 0x2e, 0xb0, 0x67, 0xad, 0x8f, 0xba, + 0xc7, 0xea, 0xfa, 0x76, 0xa1, 0x6b, 0xb4, 0x4c, 0x89, 0xfb, 0xb4, 0x03, 0x45, 0x2a, 0x2d, 0xcb, + 0x78, 0xae, 0x8f, 0x1e, 0xca, 0x0a, 0x60, 0x72, 0xbd, 0xe0, 0xce, 0xaa, 0x7f, 0x0c, 0x86, 0x39, + 0xf5, 0xa9, 0x4f, 0x39, 0x00, 0x69, 0xa5, 0x7b, 0x25, 0x02, 0xbb, 0xdf, 0x2d, 0xc0, 0xa9, 0xdc, + 0x65, 0x84, 0x3e, 0xab, 0x2c, 0x72, 0x8e, 0xed, 0x68, 0x45, 0x83, 0x90, 0x6e, 0x98, 0x1b, 0x37, + 0x0c, 0x73, 0xc2, 0x1e, 0x77, 0xaf, 0x14, 0x18, 0xc1, 0xa6, 0xb5, 0xc9, 0xfa, 0x89, 0x93, 0x06, + 0xc0, 0xaa, 0xbc, 0x46, 0x7f, 0x09, 0x2f, 0xf1, 0xb8, 0x3f, 0xd5, 0x6e, 0x38, 0xc8, 0x81, 0x1e, + 0x01, 0xaf, 0xb8, 0x61, 0xf2, 0x0a, 0x6c, 0xdf, 0x8f, 0xdc, 0x83, 0x59, 0xbc, 0x0c, 0x79, 0x8e, + 0xe5, 0xfe, 0x92, 0x22, 0x1a, 0xd7, 0x61, 0x0b, 0x7d, 0x5f, 0x87, 0x1d, 0x87, 0xd2, 0x0b, 0xbe, + 0xca, 0xa6, 0x39, 0x37, 0xf3, 0xbd, 0x1f, 0x9f, 0xbb, 0xef, 0xfb, 0x3f, 0x3e, 0x77, 0xdf, 0x8f, + 0x7e, 0x7c, 0xee, 0xbe, 0x4f, 0xdc, 0x3a, 0xe7, 0x7c, 0xef, 0xd6, 0x39, 0xe7, 0xfb, 0xb7, 0xce, + 0x39, 0x3f, 0xba, 0x75, 0xce, 0xf9, 0x8f, 0xb7, 0xce, 0x39, 0x7f, 0xef, 0x3f, 0x9d, 0xbb, 0xef, + 0x85, 0x11, 0x39, 0xb0, 0xff, 0x1f, 0x00, 0x00, 0xff, 0xff, 0xe5, 0x91, 0x92, 0x0a, 0x25, 0xd7, + 0x00, 0x00, } func (m *Amount) Marshal() (dAtA []byte, err error) { @@ -10676,6 +10679,18 @@ func (m *S3Bucket) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.SessionTokenSecret != nil { + { + size, err := m.SessionTokenSecret.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintGenerated(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x62 + } if m.CASecret != nil { { size, err := m.CASecret.MarshalToSizedBuffer(dAtA[:i]) @@ -16183,6 +16198,10 @@ func (m *S3Bucket) Size() (n int) { l = m.CASecret.Size() n += 1 + l + sovGenerated(uint64(l)) } + if m.SessionTokenSecret != nil { + l = m.SessionTokenSecret.Size() + n += 1 + l + sovGenerated(uint64(l)) + } return n } @@ -18852,6 +18871,7 @@ func (this *S3Bucket) String() string { `CreateBucketIfNotPresent:` + strings.Replace(this.CreateBucketIfNotPresent.String(), "CreateS3BucketOptions", "CreateS3BucketOptions", 1) + `,`, `EncryptionOptions:` + strings.Replace(this.EncryptionOptions.String(), "S3EncryptionOptions", "S3EncryptionOptions", 1) + `,`, `CASecret:` + strings.Replace(fmt.Sprintf("%v", this.CASecret), "SecretKeySelector", "v1.SecretKeySelector", 1) + `,`, + `SessionTokenSecret:` + strings.Replace(fmt.Sprintf("%v", this.SessionTokenSecret), "SecretKeySelector", "v1.SecretKeySelector", 1) + `,`, `}`, }, "") return s @@ -37267,6 +37287,42 @@ func (m *S3Bucket) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 12: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SessionTokenSecret", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthGenerated + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SessionTokenSecret == nil { + m.SessionTokenSecret = &v1.SecretKeySelector{} + } + if err := m.SessionTokenSecret.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) diff --git a/pkg/apis/workflow/v1alpha1/generated.proto b/pkg/apis/workflow/v1alpha1/generated.proto index ec331f86d739..18d7d2cfe162 100644 --- a/pkg/apis/workflow/v1alpha1/generated.proto +++ b/pkg/apis/workflow/v1alpha1/generated.proto @@ -1414,6 +1414,9 @@ message S3Bucket { // CASecret specifies the secret that contains the CA, used to verify the TLS connection optional k8s.io.api.core.v1.SecretKeySelector caSecret = 11; + + // SessionTokenSecret is used for credentials which are ephemeral (e.g. IAM assume role or S3 access grant) + optional k8s.io.api.core.v1.SecretKeySelector sessionTokenSecret = 12; } // S3EncryptionOptions used to determine encryption options during s3 operations diff --git a/pkg/apis/workflow/v1alpha1/openapi_generated.go b/pkg/apis/workflow/v1alpha1/openapi_generated.go index 46e85c44e60f..2dcac5ba03c5 100644 --- a/pkg/apis/workflow/v1alpha1/openapi_generated.go +++ b/pkg/apis/workflow/v1alpha1/openapi_generated.go @@ -5171,6 +5171,12 @@ func schema_pkg_apis_workflow_v1alpha1_S3Artifact(ref common.ReferenceCallback) Ref: ref("k8s.io/api/core/v1.SecretKeySelector"), }, }, + "sessionTokenSecret": { + SchemaProps: spec.SchemaProps{ + Description: "SessionTokenSecret is used for credentials which are ephemeral (e.g. IAM assume role or S3 access grant)", + Ref: ref("k8s.io/api/core/v1.SecretKeySelector"), + }, + }, "key": { SchemaProps: spec.SchemaProps{ Description: "Key is the key in the bucket where the artifact resides", @@ -5264,6 +5270,12 @@ func schema_pkg_apis_workflow_v1alpha1_S3ArtifactRepository(ref common.Reference Ref: ref("k8s.io/api/core/v1.SecretKeySelector"), }, }, + "sessionTokenSecret": { + SchemaProps: spec.SchemaProps{ + Description: "SessionTokenSecret is used for credentials which are ephemeral (e.g. IAM assume role or S3 access grant)", + Ref: ref("k8s.io/api/core/v1.SecretKeySelector"), + }, + }, "keyFormat": { SchemaProps: spec.SchemaProps{ Description: "KeyFormat defines the format of how to store keys and can reference workflow variables.", @@ -5364,6 +5376,12 @@ func schema_pkg_apis_workflow_v1alpha1_S3Bucket(ref common.ReferenceCallback) co Ref: ref("k8s.io/api/core/v1.SecretKeySelector"), }, }, + "sessionTokenSecret": { + SchemaProps: spec.SchemaProps{ + Description: "SessionTokenSecret is used for credentials which are ephemeral (e.g. IAM assume role or S3 access grant)", + Ref: ref("k8s.io/api/core/v1.SecretKeySelector"), + }, + }, }, }, }, diff --git a/pkg/apis/workflow/v1alpha1/workflow_types.go b/pkg/apis/workflow/v1alpha1/workflow_types.go index 096d1c5b3b59..d3cb8436d8c2 100644 --- a/pkg/apis/workflow/v1alpha1/workflow_types.go +++ b/pkg/apis/workflow/v1alpha1/workflow_types.go @@ -2534,6 +2534,9 @@ type S3Bucket struct { // CASecret specifies the secret that contains the CA, used to verify the TLS connection CASecret *apiv1.SecretKeySelector `json:"caSecret,omitempty" protobuf:"bytes,11,opt,name=caSecret"` + + // SessionTokenSecret is used for credentials which are ephemeral (e.g. IAM assume role or S3 access grant) + SessionTokenSecret *apiv1.SecretKeySelector `json:"sessionTokenSecret,omitempty" protobuf:"bytes,12,opt,name=sessionTokenSecret"` } // S3EncryptionOptions used to determine encryption options during s3 operations diff --git a/pkg/apis/workflow/v1alpha1/zz_generated.deepcopy.go b/pkg/apis/workflow/v1alpha1/zz_generated.deepcopy.go index 149a3951cfae..2e2c44babce2 100644 --- a/pkg/apis/workflow/v1alpha1/zz_generated.deepcopy.go +++ b/pkg/apis/workflow/v1alpha1/zz_generated.deepcopy.go @@ -2781,6 +2781,11 @@ func (in *S3Bucket) DeepCopyInto(out *S3Bucket) { *out = new(v1.SecretKeySelector) (*in).DeepCopyInto(*out) } + if in.SessionTokenSecret != nil { + in, out := &in.SessionTokenSecret, &out.SessionTokenSecret + *out = new(v1.SecretKeySelector) + (*in).DeepCopyInto(*out) + } return } diff --git a/pkg/plugins/executor/swagger.yml b/pkg/plugins/executor/swagger.yml index a503bffe916b..0c425df6145f 100644 --- a/pkg/plugins/executor/swagger.yml +++ b/pkg/plugins/executor/swagger.yml @@ -3350,6 +3350,8 @@ definitions: type: string secretKeySecret: $ref: '#/definitions/SecretKeySelector' + sessionTokenSecret: + $ref: '#/definitions/SecretKeySelector' useSDKCreds: description: UseSDKCreds tells the driver to figure out credentials based on sdk defaults. type: boolean diff --git a/sdks/java/client/docs/IoArgoprojWorkflowV1alpha1S3Artifact.md b/sdks/java/client/docs/IoArgoprojWorkflowV1alpha1S3Artifact.md index 1be6bf86bdc8..30c169da0a1f 100644 --- a/sdks/java/client/docs/IoArgoprojWorkflowV1alpha1S3Artifact.md +++ b/sdks/java/client/docs/IoArgoprojWorkflowV1alpha1S3Artifact.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **region** | **String** | Region contains the optional bucket region | [optional] **roleARN** | **String** | RoleARN is the Amazon Resource Name (ARN) of the role to assume. | [optional] **secretKeySecret** | [**io.kubernetes.client.openapi.models.V1SecretKeySelector**](io.kubernetes.client.openapi.models.V1SecretKeySelector.md) | | [optional] +**sessionTokenSecret** | [**io.kubernetes.client.openapi.models.V1SecretKeySelector**](io.kubernetes.client.openapi.models.V1SecretKeySelector.md) | | [optional] **useSDKCreds** | **Boolean** | UseSDKCreds tells the driver to figure out credentials based on sdk defaults. | [optional] diff --git a/sdks/java/client/docs/IoArgoprojWorkflowV1alpha1S3ArtifactRepository.md b/sdks/java/client/docs/IoArgoprojWorkflowV1alpha1S3ArtifactRepository.md index 94e6711f1831..15d0f0effa1a 100644 --- a/sdks/java/client/docs/IoArgoprojWorkflowV1alpha1S3ArtifactRepository.md +++ b/sdks/java/client/docs/IoArgoprojWorkflowV1alpha1S3ArtifactRepository.md @@ -20,6 +20,7 @@ Name | Type | Description | Notes **region** | **String** | Region contains the optional bucket region | [optional] **roleARN** | **String** | RoleARN is the Amazon Resource Name (ARN) of the role to assume. | [optional] **secretKeySecret** | [**io.kubernetes.client.openapi.models.V1SecretKeySelector**](io.kubernetes.client.openapi.models.V1SecretKeySelector.md) | | [optional] +**sessionTokenSecret** | [**io.kubernetes.client.openapi.models.V1SecretKeySelector**](io.kubernetes.client.openapi.models.V1SecretKeySelector.md) | | [optional] **useSDKCreds** | **Boolean** | UseSDKCreds tells the driver to figure out credentials based on sdk defaults. | [optional] diff --git a/sdks/python/client/argo_workflows/model/io_argoproj_workflow_v1alpha1_s3_artifact.py b/sdks/python/client/argo_workflows/model/io_argoproj_workflow_v1alpha1_s3_artifact.py index fd019b40a4b6..9b6e62a81885 100644 --- a/sdks/python/client/argo_workflows/model/io_argoproj_workflow_v1alpha1_s3_artifact.py +++ b/sdks/python/client/argo_workflows/model/io_argoproj_workflow_v1alpha1_s3_artifact.py @@ -102,6 +102,7 @@ def openapi_types(): 'region': (str,), # noqa: E501 'role_arn': (str,), # noqa: E501 'secret_key_secret': (SecretKeySelector,), # noqa: E501 + 'session_token_secret': (SecretKeySelector,), # noqa: E501 'use_sdk_creds': (bool,), # noqa: E501 } @@ -122,6 +123,7 @@ def discriminator(): 'region': 'region', # noqa: E501 'role_arn': 'roleARN', # noqa: E501 'secret_key_secret': 'secretKeySecret', # noqa: E501 + 'session_token_secret': 'sessionTokenSecret', # noqa: E501 'use_sdk_creds': 'useSDKCreds', # noqa: E501 } @@ -177,6 +179,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 region (str): Region contains the optional bucket region. [optional] # noqa: E501 role_arn (str): RoleARN is the Amazon Resource Name (ARN) of the role to assume.. [optional] # noqa: E501 secret_key_secret (SecretKeySelector): [optional] # noqa: E501 + session_token_secret (SecretKeySelector): [optional] # noqa: E501 use_sdk_creds (bool): UseSDKCreds tells the driver to figure out credentials based on sdk defaults.. [optional] # noqa: E501 """ @@ -270,6 +273,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 region (str): Region contains the optional bucket region. [optional] # noqa: E501 role_arn (str): RoleARN is the Amazon Resource Name (ARN) of the role to assume.. [optional] # noqa: E501 secret_key_secret (SecretKeySelector): [optional] # noqa: E501 + session_token_secret (SecretKeySelector): [optional] # noqa: E501 use_sdk_creds (bool): UseSDKCreds tells the driver to figure out credentials based on sdk defaults.. [optional] # noqa: E501 """ diff --git a/sdks/python/client/argo_workflows/model/io_argoproj_workflow_v1alpha1_s3_artifact_repository.py b/sdks/python/client/argo_workflows/model/io_argoproj_workflow_v1alpha1_s3_artifact_repository.py index c61fa854ac92..18f16fa8237f 100644 --- a/sdks/python/client/argo_workflows/model/io_argoproj_workflow_v1alpha1_s3_artifact_repository.py +++ b/sdks/python/client/argo_workflows/model/io_argoproj_workflow_v1alpha1_s3_artifact_repository.py @@ -103,6 +103,7 @@ def openapi_types(): 'region': (str,), # noqa: E501 'role_arn': (str,), # noqa: E501 'secret_key_secret': (SecretKeySelector,), # noqa: E501 + 'session_token_secret': (SecretKeySelector,), # noqa: E501 'use_sdk_creds': (bool,), # noqa: E501 } @@ -124,6 +125,7 @@ def discriminator(): 'region': 'region', # noqa: E501 'role_arn': 'roleARN', # noqa: E501 'secret_key_secret': 'secretKeySecret', # noqa: E501 + 'session_token_secret': 'sessionTokenSecret', # noqa: E501 'use_sdk_creds': 'useSDKCreds', # noqa: E501 } @@ -180,6 +182,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 region (str): Region contains the optional bucket region. [optional] # noqa: E501 role_arn (str): RoleARN is the Amazon Resource Name (ARN) of the role to assume.. [optional] # noqa: E501 secret_key_secret (SecretKeySelector): [optional] # noqa: E501 + session_token_secret (SecretKeySelector): [optional] # noqa: E501 use_sdk_creds (bool): UseSDKCreds tells the driver to figure out credentials based on sdk defaults.. [optional] # noqa: E501 """ @@ -274,6 +277,7 @@ def __init__(self, *args, **kwargs): # noqa: E501 region (str): Region contains the optional bucket region. [optional] # noqa: E501 role_arn (str): RoleARN is the Amazon Resource Name (ARN) of the role to assume.. [optional] # noqa: E501 secret_key_secret (SecretKeySelector): [optional] # noqa: E501 + session_token_secret (SecretKeySelector): [optional] # noqa: E501 use_sdk_creds (bool): UseSDKCreds tells the driver to figure out credentials based on sdk defaults.. [optional] # noqa: E501 """ diff --git a/sdks/python/client/docs/ClusterWorkflowTemplateServiceApi.md b/sdks/python/client/docs/ClusterWorkflowTemplateServiceApi.md index 7fa0b7e482d9..929b42037be3 100644 --- a/sdks/python/client/docs/ClusterWorkflowTemplateServiceApi.md +++ b/sdks/python/client/docs/ClusterWorkflowTemplateServiceApi.md @@ -553,6 +553,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -865,6 +870,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -1484,6 +1494,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -2294,6 +2309,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -2576,6 +2596,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -2880,6 +2905,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -3439,6 +3469,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -3763,6 +3798,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -4048,6 +4088,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -4890,6 +4935,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -5168,6 +5218,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -6051,6 +6106,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -6861,6 +6921,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -7143,6 +7208,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -7447,6 +7517,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -8006,6 +8081,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -8330,6 +8410,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -8615,6 +8700,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -9457,6 +9547,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -9735,6 +9830,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -11485,6 +11585,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -11797,6 +11902,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -12416,6 +12526,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -13226,6 +13341,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -13508,6 +13628,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -13812,6 +13937,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -14371,6 +14501,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -14695,6 +14830,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -14980,6 +15120,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -15822,6 +15967,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -16100,6 +16250,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -16983,6 +17138,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -17793,6 +17953,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -18075,6 +18240,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -18379,6 +18549,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -18938,6 +19113,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -19262,6 +19442,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -19547,6 +19732,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -20389,6 +20579,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -20667,6 +20862,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -22321,6 +22521,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -22633,6 +22838,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -23252,6 +23462,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -24062,6 +24277,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -24344,6 +24564,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -24648,6 +24873,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -25207,6 +25437,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -25531,6 +25766,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -25816,6 +26056,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -26658,6 +26903,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -26936,6 +27186,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -27819,6 +28074,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -28629,6 +28889,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -28911,6 +29176,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -29215,6 +29485,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -29774,6 +30049,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -30098,6 +30378,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -30383,6 +30668,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -31225,6 +31515,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -31503,6 +31798,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", diff --git a/sdks/python/client/docs/CronWorkflowServiceApi.md b/sdks/python/client/docs/CronWorkflowServiceApi.md index aa41b5aef828..cb8ca63540c2 100644 --- a/sdks/python/client/docs/CronWorkflowServiceApi.md +++ b/sdks/python/client/docs/CronWorkflowServiceApi.md @@ -613,6 +613,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -925,6 +930,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -1544,6 +1554,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -2354,6 +2369,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -2636,6 +2656,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -2940,6 +2965,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -3499,6 +3529,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -3823,6 +3858,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -4108,6 +4148,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -4950,6 +4995,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -5228,6 +5278,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -6111,6 +6166,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -6921,6 +6981,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -7203,6 +7268,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -7507,6 +7577,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -8066,6 +8141,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -8390,6 +8470,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -8675,6 +8760,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -9517,6 +9607,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -9795,6 +9890,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -11627,6 +11727,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -11939,6 +12044,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -12558,6 +12668,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -13368,6 +13483,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -13650,6 +13770,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -13954,6 +14079,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -14513,6 +14643,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -14837,6 +14972,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -15122,6 +15262,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -15964,6 +16109,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -16242,6 +16392,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -17125,6 +17280,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -17935,6 +18095,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -18217,6 +18382,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -18521,6 +18691,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -19080,6 +19255,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -19404,6 +19584,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -19689,6 +19874,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -20531,6 +20721,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -20809,6 +21004,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -22726,6 +22926,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -23038,6 +23243,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -23657,6 +23867,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -24467,6 +24682,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -24749,6 +24969,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -25053,6 +25278,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -25612,6 +25842,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -25936,6 +26171,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -26221,6 +26461,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -27063,6 +27308,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -27341,6 +27591,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -28224,6 +28479,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -29034,6 +29294,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -29316,6 +29581,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -29620,6 +29890,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -30179,6 +30454,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -30503,6 +30783,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -30788,6 +31073,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -31630,6 +31920,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -31908,6 +32203,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", diff --git a/sdks/python/client/docs/IoArgoprojWorkflowV1alpha1S3Artifact.md b/sdks/python/client/docs/IoArgoprojWorkflowV1alpha1S3Artifact.md index ef36d6a0acb0..ca6bb8fcc0a8 100644 --- a/sdks/python/client/docs/IoArgoprojWorkflowV1alpha1S3Artifact.md +++ b/sdks/python/client/docs/IoArgoprojWorkflowV1alpha1S3Artifact.md @@ -16,6 +16,7 @@ Name | Type | Description | Notes **region** | **str** | Region contains the optional bucket region | [optional] **role_arn** | **str** | RoleARN is the Amazon Resource Name (ARN) of the role to assume. | [optional] **secret_key_secret** | [**SecretKeySelector**](SecretKeySelector.md) | | [optional] +**session_token_secret** | [**SecretKeySelector**](SecretKeySelector.md) | | [optional] **use_sdk_creds** | **bool** | UseSDKCreds tells the driver to figure out credentials based on sdk defaults. | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/sdks/python/client/docs/IoArgoprojWorkflowV1alpha1S3ArtifactRepository.md b/sdks/python/client/docs/IoArgoprojWorkflowV1alpha1S3ArtifactRepository.md index 1e46072155e5..70425c310d4d 100644 --- a/sdks/python/client/docs/IoArgoprojWorkflowV1alpha1S3ArtifactRepository.md +++ b/sdks/python/client/docs/IoArgoprojWorkflowV1alpha1S3ArtifactRepository.md @@ -17,6 +17,7 @@ Name | Type | Description | Notes **region** | **str** | Region contains the optional bucket region | [optional] **role_arn** | **str** | RoleARN is the Amazon Resource Name (ARN) of the role to assume. | [optional] **secret_key_secret** | [**SecretKeySelector**](SecretKeySelector.md) | | [optional] +**session_token_secret** | [**SecretKeySelector**](SecretKeySelector.md) | | [optional] **use_sdk_creds** | **bool** | UseSDKCreds tells the driver to figure out credentials based on sdk defaults. | [optional] **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] diff --git a/sdks/python/client/docs/WorkflowServiceApi.md b/sdks/python/client/docs/WorkflowServiceApi.md index 66b6889994de..ba4449c9db61 100644 --- a/sdks/python/client/docs/WorkflowServiceApi.md +++ b/sdks/python/client/docs/WorkflowServiceApi.md @@ -568,6 +568,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -880,6 +885,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -1499,6 +1509,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -2309,6 +2324,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -2591,6 +2611,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -2895,6 +2920,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -3454,6 +3484,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -3778,6 +3813,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -4063,6 +4103,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -4905,6 +4950,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -5183,6 +5233,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -6066,6 +6121,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -6876,6 +6936,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -7158,6 +7223,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -7462,6 +7532,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -8021,6 +8096,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -8345,6 +8425,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -8630,6 +8715,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -9472,6 +9562,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -9750,6 +9845,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -10864,6 +10964,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -11134,6 +11239,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -11420,6 +11530,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -11715,6 +11830,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -12546,6 +12666,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -13356,6 +13481,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -13638,6 +13768,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -13942,6 +14077,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -14501,6 +14641,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -14825,6 +14970,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -15110,6 +15260,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -15952,6 +16107,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -16230,6 +16390,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -17144,6 +17309,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -17456,6 +17626,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -18075,6 +18250,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -18885,6 +19065,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -19167,6 +19352,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -19471,6 +19661,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -20030,6 +20225,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -20354,6 +20554,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -20639,6 +20844,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -21481,6 +21691,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -21759,6 +21974,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -22642,6 +22862,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -23452,6 +23677,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -23734,6 +23964,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -24038,6 +24273,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -24597,6 +24837,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -24921,6 +25166,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -25206,6 +25456,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -26048,6 +26303,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -26326,6 +26586,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -28118,6 +28383,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -28430,6 +28700,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -29049,6 +29324,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -29859,6 +30139,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -30141,6 +30426,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -30445,6 +30735,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -31004,6 +31299,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -31328,6 +31628,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -31613,6 +31918,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -32455,6 +32765,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -32733,6 +33048,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -33616,6 +33936,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -34426,6 +34751,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -34708,6 +35038,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -35012,6 +35347,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -35571,6 +35911,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -35895,6 +36240,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -36180,6 +36530,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -37022,6 +37377,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -37300,6 +37660,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -38414,6 +38779,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -38684,6 +39054,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -38970,6 +39345,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -39265,6 +39645,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -40096,6 +40481,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -40906,6 +41296,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -41188,6 +41583,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -41492,6 +41892,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -42051,6 +42456,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -42375,6 +42785,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -42660,6 +43075,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -43502,6 +43922,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -43780,6 +44205,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -44694,6 +45124,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -45006,6 +45441,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -45625,6 +46065,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -46435,6 +46880,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -46717,6 +47167,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -47021,6 +47476,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -47580,6 +48040,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -47904,6 +48369,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -48189,6 +48659,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -49031,6 +49506,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -49309,6 +49789,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -50192,6 +50677,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -51002,6 +51492,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -51284,6 +51779,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -51588,6 +52088,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -52147,6 +52652,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -52471,6 +52981,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -52756,6 +53271,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -53598,6 +54118,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -53876,6 +54401,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", diff --git a/sdks/python/client/docs/WorkflowTemplateServiceApi.md b/sdks/python/client/docs/WorkflowTemplateServiceApi.md index 01f968cb76a7..44b30ac7901a 100644 --- a/sdks/python/client/docs/WorkflowTemplateServiceApi.md +++ b/sdks/python/client/docs/WorkflowTemplateServiceApi.md @@ -555,6 +555,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -867,6 +872,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -1486,6 +1496,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -2296,6 +2311,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -2578,6 +2598,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -2882,6 +2907,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -3441,6 +3471,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -3765,6 +3800,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -4050,6 +4090,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -4892,6 +4937,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -5170,6 +5220,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -6053,6 +6108,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -6863,6 +6923,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -7145,6 +7210,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -7449,6 +7519,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -8008,6 +8083,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -8332,6 +8412,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -8617,6 +8702,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -9459,6 +9549,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -9737,6 +9832,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -11494,6 +11594,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -11806,6 +11911,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -12425,6 +12535,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -13235,6 +13350,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -13517,6 +13637,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -13821,6 +13946,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -14380,6 +14510,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -14704,6 +14839,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -14989,6 +15129,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -15831,6 +15976,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -16109,6 +16259,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -16992,6 +17147,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -17802,6 +17962,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -18084,6 +18249,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -18388,6 +18558,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -18947,6 +19122,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -19271,6 +19451,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -19556,6 +19741,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -20398,6 +20588,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -20676,6 +20871,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -22344,6 +22544,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -22656,6 +22861,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -23275,6 +23485,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -24085,6 +24300,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -24367,6 +24587,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -24671,6 +24896,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -25230,6 +25460,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -25554,6 +25789,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -25839,6 +26079,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -26681,6 +26926,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -26959,6 +27209,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -27842,6 +28097,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), ), @@ -28652,6 +28912,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -28934,6 +29199,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -29238,6 +29508,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -29797,6 +30072,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -30121,6 +30401,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -30406,6 +30691,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -31248,6 +31538,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", @@ -31526,6 +31821,11 @@ with argo_workflows.ApiClient(configuration) as api_client: name="name_example", optional=True, ), + session_token_secret=SecretKeySelector( + key="key_example", + name="name_example", + optional=True, + ), use_sdk_creds=True, ), sub_path="sub_path_example", diff --git a/workflow/artifacts/artifacts.go b/workflow/artifacts/artifacts.go index 88c57267f0b1..8501242adb14 100644 --- a/workflow/artifacts/artifacts.go +++ b/workflow/artifacts/artifacts.go @@ -36,6 +36,7 @@ func newDriver(ctx context.Context, art *wfv1.Artifact, ri resource.Interface) ( if art.S3 != nil { var accessKey string var secretKey string + var sessionToken string var serverSideCustomerKey string var kmsKeyId string var kmsEncryptionContext string @@ -53,6 +54,14 @@ func newDriver(ctx context.Context, art *wfv1.Artifact, ri resource.Interface) ( return nil, err } secretKey = secretKeyBytes + + if art.S3.SessionTokenSecret != nil && art.S3.SessionTokenSecret.Name != "" { + sessionTokenBytes, err := ri.GetSecret(ctx, art.S3.SessionTokenSecret.Name, art.S3.SessionTokenSecret.Key) + if err != nil { + return nil, err + } + sessionToken = sessionTokenBytes + } } if art.S3.EncryptionOptions != nil { @@ -85,6 +94,7 @@ func newDriver(ctx context.Context, art *wfv1.Artifact, ri resource.Interface) ( Endpoint: art.S3.Endpoint, AccessKey: accessKey, SecretKey: secretKey, + SessionToken: sessionToken, Secure: art.S3.Insecure == nil || !*art.S3.Insecure, TrustedCA: caKey, Region: art.S3.Region, diff --git a/workflow/artifacts/artifacts_test.go b/workflow/artifacts/artifacts_test.go new file mode 100644 index 000000000000..e92c8c3205d5 --- /dev/null +++ b/workflow/artifacts/artifacts_test.go @@ -0,0 +1,64 @@ +package executor + +import ( + "context" + "testing" + + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" + apiv1 "k8s.io/api/core/v1" + + wfv1 "github.com/argoproj/argo-workflows/v3/pkg/apis/workflow/v1alpha1" + "github.com/argoproj/argo-workflows/v3/workflow/artifacts/s3" +) + +type mockResourceInterface struct{} + +func (*mockResourceInterface) GetSecret(ctx context.Context, name, key string) (string, error) { + // Mock getSecret that doesn't actually read from a store, just return a different value to assert it was called + return key + "-secret", nil +} + +func (*mockResourceInterface) GetConfigMapKey(ctx context.Context, name, key string) (string, error) { + // We don't need GetConfigMapKey for initialising the driver + return "", nil +} + +func TestNewDriverS3(t *testing.T) { + art := &wfv1.Artifact{ + ArtifactLocation: wfv1.ArtifactLocation{S3: &wfv1.S3Artifact{ + S3Bucket: wfv1.S3Bucket{ + Endpoint: "endpoint", + Bucket: "bucket", + Region: "us-east-1", + AccessKeySecret: &apiv1.SecretKeySelector{ + LocalObjectReference: apiv1.LocalObjectReference{ + Name: "accesskey", + }, + Key: "access-key", + }, + SecretKeySecret: &apiv1.SecretKeySelector{ + LocalObjectReference: apiv1.LocalObjectReference{ + Name: "secretkey", + }, + Key: "secret-key", + }, + SessionTokenSecret: &apiv1.SecretKeySelector{ + LocalObjectReference: apiv1.LocalObjectReference{ + Name: "sessiontoken", + }, + Key: "session-token", + }, + }, + Key: "art", + }}, + } + + got, err := newDriver(context.TODO(), art, &mockResourceInterface{}) + require.NoError(t, err) + + artDriver := got.(*s3.ArtifactDriver) + assert.Equal(t, art.S3.AccessKeySecret.Key+"-secret", artDriver.AccessKey) + assert.Equal(t, art.S3.SecretKeySecret.Key+"-secret", artDriver.SecretKey) + assert.Equal(t, art.S3.SessionTokenSecret.Key+"-secret", artDriver.SessionToken) +} diff --git a/workflow/artifacts/s3/s3.go b/workflow/artifacts/s3/s3.go index 3255bd0eb874..5ce08584bc48 100644 --- a/workflow/artifacts/s3/s3.go +++ b/workflow/artifacts/s3/s3.go @@ -31,6 +31,7 @@ type ArtifactDriver struct { TrustedCA string AccessKey string SecretKey string + SessionToken string RoleARN string UseSDKCreds bool Context context.Context @@ -45,14 +46,15 @@ var _ artifactscommon.ArtifactDriver = &ArtifactDriver{} // newS3Client instantiates a new S3 client object. func (s3Driver *ArtifactDriver) newS3Client(ctx context.Context) (argos3.S3Client, error) { opts := argos3.S3ClientOpts{ - Endpoint: s3Driver.Endpoint, - Region: s3Driver.Region, - Secure: s3Driver.Secure, - AccessKey: s3Driver.AccessKey, - SecretKey: s3Driver.SecretKey, - RoleARN: s3Driver.RoleARN, - Trace: os.Getenv(common.EnvVarArgoTrace) == "1", - UseSDKCreds: s3Driver.UseSDKCreds, + Endpoint: s3Driver.Endpoint, + Region: s3Driver.Region, + Secure: s3Driver.Secure, + AccessKey: s3Driver.AccessKey, + SecretKey: s3Driver.SecretKey, + SessionToken: s3Driver.SessionToken, + RoleARN: s3Driver.RoleARN, + Trace: os.Getenv(common.EnvVarArgoTrace) == "1", + UseSDKCreds: s3Driver.UseSDKCreds, EncryptOpts: argos3.EncryptOpts{ KmsKeyId: s3Driver.KmsKeyId, KmsEncryptionContext: s3Driver.KmsEncryptionContext, diff --git a/workflow/controller/workflowpod.go b/workflow/controller/workflowpod.go index 267ff2d35514..fb1bfb852f9a 100644 --- a/workflow/controller/workflowpod.go +++ b/workflow/controller/workflowpod.go @@ -1308,6 +1308,9 @@ func createSecretVolumesFromArtifactLocations(volMap map[string]apiv1.Volume, ar if artifactLocation.S3 != nil { createSecretVal(volMap, artifactLocation.S3.AccessKeySecret, keyMap) createSecretVal(volMap, artifactLocation.S3.SecretKeySecret, keyMap) + if artifactLocation.S3.SessionTokenSecret != nil { + createSecretVal(volMap, artifactLocation.S3.SessionTokenSecret, keyMap) + } sseCUsed := artifactLocation.S3.EncryptionOptions != nil && artifactLocation.S3.EncryptionOptions.EnableEncryption && artifactLocation.S3.EncryptionOptions.ServerSideCustomerKeySecret != nil if sseCUsed { createSecretVal(volMap, artifactLocation.S3.EncryptionOptions.ServerSideCustomerKeySecret, keyMap) diff --git a/workflow/controller/workflowpod_test.go b/workflow/controller/workflowpod_test.go index 99ceefab4f0e..debbffecf830 100644 --- a/workflow/controller/workflowpod_test.go +++ b/workflow/controller/workflowpod_test.go @@ -1249,7 +1249,94 @@ func Test_createSecretVolumesFromArtifactLocations_SSECUsed(t *testing.T) { break } } +} + +func TestCreateSecretVolumesFromArtifactLocationsSessionToken(t *testing.T) { + ctx := context.Background() + cancel, controller := newControllerWithComplexDefaults() + defer cancel() + + wf := wfv1.MustUnmarshalWorkflow(helloWorldWf) + wf.Spec.Templates[0].Inputs = wfv1.Inputs{ + Artifacts: []wfv1.Artifact{ + { + Name: "foo", + Path: "/tmp/file", + ArtifactLocation: wfv1.ArtifactLocation{ + S3: &wfv1.S3Artifact{ + Key: "/foo/key", + }, + }, + Archive: &wfv1.ArchiveStrategy{ + None: &wfv1.NoneStrategy{}, + }, + }, + }, + } + woc := newWorkflowOperationCtx(wf, controller) + setArtifactRepository(woc.controller, + &wfv1.ArtifactRepository{ + S3: &wfv1.S3ArtifactRepository{ + S3Bucket: wfv1.S3Bucket{ + Bucket: "foo", + AccessKeySecret: &apiv1.SecretKeySelector{ + LocalObjectReference: apiv1.LocalObjectReference{ + Name: "accesskey", + }, + Key: "access-key", + }, + SecretKeySecret: &apiv1.SecretKeySelector{ + LocalObjectReference: apiv1.LocalObjectReference{ + Name: "secretkey", + }, + Key: "secret-key", + }, + SessionTokenSecret: &apiv1.SecretKeySelector{ + LocalObjectReference: apiv1.LocalObjectReference{ + Name: "sessiontoken", + }, + Key: "session-token", + }, + }, + }, + }, + ) + + wantedKeysVolume := apiv1.Volume{ + Name: "sessiontoken", + VolumeSource: apiv1.VolumeSource{ + Secret: &apiv1.SecretVolumeSource{ + SecretName: "sessiontoken", + Items: []apiv1.KeyToPath{ + { + Key: "session-token", + Path: "session-token", + }, + }, + }, + }, + } + wantedInitContainerVolumeMount := apiv1.VolumeMount{ + Name: "sessiontoken", + ReadOnly: true, + MountPath: path.Join(common.SecretVolMountPath, "sessiontoken"), + } + + err := woc.setExecWorkflow(ctx) + require.NoError(t, err) + woc.operate(ctx) + + mainCtr := woc.execWf.Spec.Templates[0].Container + for i := 1; i < 5; i++ { + pod, _ := woc.createWorkflowPod(ctx, wf.Name, []apiv1.Container{*mainCtr}, &wf.Spec.Templates[0], &createWorkflowPodOpts{}) + if pod != nil { + assert.Contains(t, pod.Spec.Volumes, wantedKeysVolume) + assert.Len(t, pod.Spec.InitContainers, 1) + assert.Contains(t, pod.Spec.InitContainers[0].VolumeMounts, wantedInitContainerVolumeMount) + break + } + } } var helloWorldWfWithPatch = `