Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

build: don't minimize CRD for WorkflowEventBinding and WorkflowArtifactGCTask. Fixes #12166 #13754

Merged
merged 2 commits into from
Oct 15, 2024

Commits on Oct 14, 2024

  1. feat(cli): don't minimize CRD for WorkflowEventBinding and WorkflowAr…

    …tifactGCTask. Fixes argoproj#12166
    
    The CRDs under `manifests/base/crds/minimal/` are minimized as a workaround for
    kubernetes/kubernetes#82292. However,
    `WorkflowEventBinding` and `WorkflowArtifactGCTask` are small enough
    that minimization isn't necessary, and allows using `kubectl explain` to
    view the spec.
    
    <details>
    <summary>Click for <code>kubectl explain --recursive WorkflowEventBinding</code></summary>
    
    ```
    $ kubectl explain --recursive WorkflowEventBinding
    GROUP:      argoproj.io
    KIND:       WorkflowEventBinding
    VERSION:    v1alpha1
    
    DESCRIPTION:
        <empty>
    FIELDS:
      apiVersion    <string>
      kind  <string>
      metadata      <ObjectMeta> -required-
        annotations <map[string]string>
        creationTimestamp   <string>
        deletionGracePeriodSeconds  <integer>
        deletionTimestamp   <string>
        finalizers  <[]string>
        generateName        <string>
        generation  <integer>
        labels      <map[string]string>
        managedFields       <[]ManagedFieldsEntry>
          apiVersion        <string>
          fieldsType        <string>
          fieldsV1  <FieldsV1>
          manager   <string>
          operation <string>
          subresource       <string>
          time      <string>
        name        <string>
        namespace   <string>
        ownerReferences     <[]OwnerReference>
          apiVersion        <string> -required-
          blockOwnerDeletion        <boolean>
          controller        <boolean>
          kind      <string> -required-
          name      <string> -required-
          uid       <string> -required-
        resourceVersion     <string>
        selfLink    <string>
        uid <string>
      spec  <Object> -required-
        event       <Object> -required-
          selector  <string> -required-
        submit      <Object>
          arguments <Object>
            artifacts       <[]Object>
              archive       <Object>
                none        <Object>
                tar <Object>
                  compressionLevel  <integer>
                zip <Object>
              archiveLogs   <boolean>
              artifactGC    <Object>
                podMetadata <Object>
                  annotations       <map[string]string>
                  labels    <map[string]string>
                serviceAccountName  <string>
                strategy    <string>
              artifactory   <Object>
                passwordSecret      <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                url <string> -required-
                usernameSecret      <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
              azure <Object>
                accountKeySecret    <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                blob        <string> -required-
                container   <string> -required-
                endpoint    <string> -required-
                useSDKCreds <boolean>
              deleted       <boolean>
              from  <string>
              fromExpression        <string>
              gcs   <Object>
                bucket      <string>
                key <string> -required-
                serviceAccountKeySecret     <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
              git   <Object>
                branch      <string>
                depth       <integer>
                disableSubmodules   <boolean>
                fetch       <[]string>
                insecureIgnoreHostKey       <boolean>
                passwordSecret      <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                repo        <string> -required-
                revision    <string>
                singleBranch        <boolean>
                sshPrivateKeySecret <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                usernameSecret      <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
              globalName    <string>
              hdfs  <Object>
                addresses   <[]string>
                dataTransferProtection      <string>
                force       <boolean>
                hdfsUser    <string>
                krbCCacheSecret     <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                krbConfigConfigMap  <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                krbKeytabSecret     <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                krbRealm    <string>
                krbServicePrincipalName     <string>
                krbUsername <string>
                path        <string> -required-
              http  <Object>
                auth        <Object>
                  basicAuth <Object>
                    passwordSecret  <Object>
                      key   <string> -required-
                      name  <string>
                      optional      <boolean>
                    usernameSecret  <Object>
                      key   <string> -required-
                      name  <string>
                      optional      <boolean>
                  clientCert        <Object>
                    clientCertSecret        <Object>
                      key   <string> -required-
                      name  <string>
                      optional      <boolean>
                    clientKeySecret <Object>
                      key   <string> -required-
                      name  <string>
                      optional      <boolean>
                  oauth2    <Object>
                    clientIDSecret  <Object>
                      key   <string> -required-
                      name  <string>
                      optional      <boolean>
                    clientSecretSecret      <Object>
                      key   <string> -required-
                      name  <string>
                      optional      <boolean>
                    endpointParams  <[]Object>
                      key   <string> -required-
                      value <string>
                    scopes  <[]string>
                    tokenURLSecret  <Object>
                      key   <string> -required-
                      name  <string>
                      optional      <boolean>
                headers     <[]Object>
                  name      <string> -required-
                  value     <string> -required-
                url <string> -required-
              mode  <integer>
              name  <string> -required-
              optional      <boolean>
              oss   <Object>
                accessKeySecret     <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                bucket      <string>
                createBucketIfNotPresent    <boolean>
                endpoint    <string>
                key <string> -required-
                lifecycleRule       <Object>
                  markDeletionAfterDays     <integer>
                  markInfrequentAccessAfterDays     <integer>
                secretKeySecret     <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                securityToken       <string>
                useSDKCreds <boolean>
              path  <string>
              raw   <Object>
                data        <string> -required-
              recurseMode   <boolean>
              s3    <Object>
                accessKeySecret     <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                bucket      <string>
                caSecret    <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                createBucketIfNotPresent    <Object>
                  objectLocking     <boolean>
                encryptionOptions   <Object>
                  enableEncryption  <boolean>
                  kmsEncryptionContext      <string>
                  kmsKeyId  <string>
                  serverSideCustomerKeySecret       <Object>
                    key     <string> -required-
                    name    <string>
                    optional        <boolean>
                endpoint    <string>
                insecure    <boolean>
                key <string>
                region      <string>
                roleARN     <string>
                secretKeySecret     <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                sessionTokenSecret  <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                useSDKCreds <boolean>
              subPath       <string>
            parameters      <[]Object>
              default       <string>
              description   <string>
              enum  <[]string>
              globalName    <string>
              name  <string> -required-
              value <string>
              valueFrom     <Object>
                configMapKeyRef     <Object>
                  key       <string> -required-
                  name      <string>
                  optional  <boolean>
                default     <string>
                event       <string>
                expression  <string>
                jqFilter    <string>
                jsonPath    <string>
                parameter   <string>
                path        <string>
                supplied    <Object>
          metadata  <Object>
          workflowTemplateRef       <Object> -required-
            clusterScope    <boolean>
            name    <string>
    ```
    </details>
    
    Signed-off-by: Mason Malone <[email protected]>
    MasonM committed Oct 14, 2024
    Configuration menu
    Copy the full SHA
    8aa72f5 View commit details
    Browse the repository at this point in the history
  2. build: add additional safeguards to crds.go and update docs

    Signed-off-by: Mason Malone <[email protected]>
    MasonM committed Oct 14, 2024
    Configuration menu
    Copy the full SHA
    a2ca080 View commit details
    Browse the repository at this point in the history