-
Notifications
You must be signed in to change notification settings - Fork 5
ci: preparation of go code decoupling #779
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
Open
procinger
wants to merge
9
commits into
main
Choose a base branch
from
ci/prepare-go-code-decoupling
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Owner
procinger
commented
Sep 19, 2025
- preparation of go code decoupling
af43a1d
to
b3a102e
Compare
Argo CD Diff PreviewSummary: base/kargo => /dev/null | 6477 ----------------------------------
{base => target}/kubernetes-services | 34 -
2 files changed, 6511 deletions(-) Diff:diff --git base/kargo base/kargo
deleted file mode 100644
index 25dad73..0000000
--- base/kargo
+++ /dev/null
@@ -1,6477 +0,0 @@
----
-apiVersion: v1
-data:
- ADMIN_ACCOUNT_ENABLED: "true"
- ADMIN_ACCOUNT_TOKEN_AUDIENCE: localhost
- ADMIN_ACCOUNT_TOKEN_ISSUER: https://localhost
- ADMIN_ACCOUNT_TOKEN_TTL: 24h
- KARGO_NAMESPACE: kargo
- LOG_LEVEL: INFO
- PERMISSIVE_CORS_POLICY_ENABLED: "false"
- ROLLOUTS_INTEGRATION_ENABLED: "true"
- SECRET_MANAGEMENT_ENABLED: "true"
- TLS_CERT_PATH: /etc/kargo/tls.crt
- TLS_ENABLED: "true"
- TLS_KEY_PATH: /etc/kargo/tls.key
-kind: ConfigMap
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/ConfigMap:kargo/kargo-api
- labels:
- app.kubernetes.io/component: api
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-api
- namespace: kargo
-
----
-apiVersion: v1
-data:
- ALLOW_CREDENTIALS_OVER_HTTP: "false"
- API_SERVER_BASE_URL: https://localhost
- ARGOCD_INTEGRATION_ENABLED: "true"
- ARGOCD_NAMESPACE: argocd
- ARGOCD_WATCH_ARGOCD_NAMESPACE_ONLY: "false"
- GITCLIENT_EMAIL: [email protected]
- GITCLIENT_NAME: Kargo
- GITCLIENT_SIGNING_KEY_TYPE: gpg
- GLOBAL_CREDENTIALS_NAMESPACES: ""
- LOG_LEVEL: INFO
- MAX_CONCURRENT_CONTROL_FLOW_RECONCILES: "4"
- MAX_CONCURRENT_PROMOTION_RECONCILES: "4"
- MAX_CONCURRENT_STAGE_RECONCILES: "4"
- MAX_CONCURRENT_WAREHOUSE_RECONCILES: "4"
- ROLLOUTS_CONTROLLER_INSTANCE_ID: ""
- ROLLOUTS_INTEGRATION_ENABLED: "true"
-kind: ConfigMap
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/ConfigMap:kargo/kargo-controller
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-controller
- namespace: kargo
-
----
-apiVersion: v1
-data:
- LOG_LEVEL: INFO
- MAX_RETAINED_FREIGHT: "20"
- MAX_RETAINED_PROMOTIONS: "20"
- MIN_FREIGHT_DELETION_AGE: 336h
- MIN_PROMOTION_DELETION_AGE: 336h
- NUM_WORKERS: "3"
-kind: ConfigMap
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/ConfigMap:kargo/kargo-garbage-collector
- labels:
- app.kubernetes.io/component: garbage-collector
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-garbage-collector
- namespace: kargo
-
----
-apiVersion: v1
-data:
- KARGO_NAMESPACE: kargo
- LOG_LEVEL: INFO
- MAX_CONCURRENT_NAMESPACE_RECONCILES: "4"
- MAX_CONCURRENT_PROJECT_RECONCILES: "4"
- MAX_CONCURRENT_SERVICE_ACCOUNT_RECONCILES: "4"
-kind: ConfigMap
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/ConfigMap:kargo/kargo-management-controller
- labels:
- app.kubernetes.io/component: management-controller
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-management-controller
- namespace: kargo
-
----
-apiVersion: v1
-data:
- CONTROLPLANE_USER_REGEX: ^system:serviceaccount:kargo:(kargo-api|kargo-controller|kargo-garbage-collector|kargo-management-controller)$
- KARGO_NAMESPACE: kargo
- LOG_LEVEL: INFO
-kind: ConfigMap
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/ConfigMap:kargo/kargo-webhooks-server
- labels:
- app.kubernetes.io/component: webhooks-server
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-webhooks-server
- namespace: kargo
-
----
-apiVersion: v1
-data:
- ADMIN_ACCOUNT_PASSWORD_HASH: ++++++++
- ADMIN_ACCOUNT_TOKEN_SIGNING_KEY: ++++++++
-kind: Secret
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/Secret:kargo/kargo-api
- labels:
- app.kubernetes.io/component: api
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-api
- namespace: kargo
-type: Opaque
-
----
-apiVersion: v1
-kind: Service
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/Service:kargo/kargo-api
- labels:
- app.kubernetes.io/component: api
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-api
- namespace: kargo
-spec:
- ports:
- - port: 443
- protocol: TCP
- targetPort: 8080
- selector:
- app.kubernetes.io/component: api
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/name: kargo
- type: ClusterIP
-
----
-apiVersion: v1
-kind: Service
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/Service:kargo/kargo-webhooks-server
- labels:
- app.kubernetes.io/component: webhooks-server
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-webhooks-server
- namespace: kargo
-spec:
- ports:
- - port: 443
- protocol: TCP
- targetPort: 9443
- selector:
- app.kubernetes.io/component: webhooks-server
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/name: kargo
- type: ClusterIP
-
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/ServiceAccount:kargo/kargo-admin
- labels:
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-admin
- namespace: kargo
-
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/ServiceAccount:kargo/kargo-api
- labels:
- app.kubernetes.io/component: api
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-api
- namespace: kargo
-
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/ServiceAccount:kargo/kargo-controller
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-controller
- namespace: kargo
-
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/ServiceAccount:kargo/kargo-garbage-collector
- labels:
- app.kubernetes.io/component: garbage-collector
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-garbage-collector
- namespace: kargo
-
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/ServiceAccount:kargo/kargo-management-controller
- labels:
- app.kubernetes.io/component: management-controller
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-management-controller
- namespace: kargo
-
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/ServiceAccount:kargo/kargo-viewer
- labels:
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-viewer
- namespace: kargo
-
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:/ServiceAccount:kargo/kargo-webhooks-server
- labels:
- app.kubernetes.io/component: webhooks-server
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo-webhooks-server
- namespace: kargo
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: MutatingWebhookConfiguration
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:admissionregistration.k8s.io/MutatingWebhookConfiguration:kargo/kargo
- cert-manager.io/inject-ca-from: kargo/kargo-webhooks-server
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo
-webhooks:
-- admissionReviewVersions:
- - v1
- clientConfig:
- service:
- name: kargo-webhooks-server
- namespace: kargo
- path: /mutate-kargo-akuity-io-v1alpha1-freight
- failurePolicy: Fail
- name: freight.kargo.akuity.io
- rules:
- - apiGroups:
- - kargo.akuity.io
- apiVersions:
- - v1alpha1
- operations:
- - CREATE
- - UPDATE
- resources:
- - freights
- scope: Namespaced
- sideEffects: None
-- admissionReviewVersions:
- - v1
- clientConfig:
- service:
- name: kargo-webhooks-server
- namespace: kargo
- path: /mutate-kargo-akuity-io-v1alpha1-promotion
- failurePolicy: Fail
- name: promotion.kargo.akuity.io
- rules:
- - apiGroups:
- - kargo.akuity.io
- apiVersions:
- - v1alpha1
- operations:
- - CREATE
- - UPDATE
- resources:
- - promotions
- scope: Namespaced
- sideEffects: None
-- admissionReviewVersions:
- - v1
- clientConfig:
- service:
- name: kargo-webhooks-server
- namespace: kargo
- path: /mutate-kargo-akuity-io-v1alpha1-stage
- failurePolicy: Fail
- name: stage.kargo.akuity.io
- rules:
- - apiGroups:
- - kargo.akuity.io
- apiVersions:
- - v1alpha1
- operations:
- - CREATE
- - UPDATE
- resources:
- - stages
- scope: Namespaced
- sideEffects: None
-- admissionReviewVersions:
- - v1
- clientConfig:
- service:
- name: kargo-webhooks-server
- namespace: kargo
- path: /mutate-kargo-akuity-io-v1alpha1-warehouse
- failurePolicy: Fail
- name: warehouse.kargo.akuity.io
- rules:
- - apiGroups:
- - kargo.akuity.io
- apiVersions:
- - v1alpha1
- operations:
- - CREATE
- - UPDATE
- resources:
- - warehouses
- scope: Namespaced
- sideEffects: None
-
----
-apiVersion: admissionregistration.k8s.io/v1
-kind: ValidatingWebhookConfiguration
-metadata:
- annotations:
- argocd.argoproj.io/tracking-id: kargo:admissionregistration.k8s.io/ValidatingWebhookConfiguration:kargo/kargo
- cert-manager.io/inject-ca-from: kargo/kargo-webhooks-server
- labels:
- app.kubernetes.io/component: controller
- app.kubernetes.io/instance: kargo
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/name: kargo
- app.kubernetes.io/version: v1.5.3
- helm.sh/chart: kargo-1.5.3
- name: kargo
-webhooks:
-- admissionReviewVersions:
- - v1
- clientConfig:
- service:
- name: kargo-webhooks-server
- namespace: kargo
- path: /validate-kargo-akuity-io-v1alpha1-freight
- failurePolicy: Fail
- name: freight.kargo.akuity.io
- rules:
- - apiGroups:
- - kargo.akuity.io
- apiVersions:
- - v1alpha1
- operations:
- - CREATE
- - UPDATE
- - DELETE
- resources:
- - freights
- - freights/status
- scope: Namespaced
- sideEffects: None
-- admissionReviewVersions:
- - v1
- clientConfig:
- service:
- name: kargo-webhooks-server
- namespace: kargo
- path: /validate-kargo-akuity-io-v1alpha1-project
- failurePolicy: Fail
- name: project.kargo.akuity.io
- rules:
- - apiGroups:
- - kargo.akuity.io
- apiVersions:
- - v1alpha1
- operations:
- - CREATE
- - UPDATE
- resources:
- - projects
- scope: Cluster
- sideEffects: NoneOnDryRun
-- admissionReviewVersions:
- - v1
- clientConfig:
- service:
- name: kargo-webhooks-server
- namespace: kargo
- path: /validate-kargo-akuity-io-v1alpha1-projectconfig
- failurePolicy: Fail
- name: projectconfig.kargo.akuity.io
- rules:
- - apiGroups:
- - kargo.akuity.io
- apiVersions:
- - v1alpha1
- operations:
- - CREATE
- - UPDATE
- resources:
- - projectconfigs
- scope: Namespaced
- sideEffects: NoneOnDryRun
-- admissionReviewVersions:
- - v1
- clientConfig:
- service:
- name: kargo-webhooks-server
- namespace: kargo
- path: /validate-kargo-akuity-io-v1alpha1-promotion
- failurePolicy: Fail
- name: promotion.kargo.akuity.io
- rules:
- - apiGroups:
- - kargo.akuity.io
- apiVersions:
- - v1alpha1
- operations:
- - CREATE
- - UPDATE
- - DELETE
- resources:
- - promotions
- scope: Namespaced
- sideEffects: None
-- admissionReviewVersions:
- - v1
- clientConfig:
- service:
- name: kargo-webhooks-server
- namespace: kargo
- path: /validate-kargo-akuity-io-v1alpha1-promotiontask
- failurePolicy: Fail
- name: promotiontask.kargo.akuity.io
- rules:
- - apiGroups:
- - kargo.akuity.io
- apiVersions:
- - v1alpha1
- operations:
- - CREATE
- resources:
- - promotiontasks
- scope: Namespaced
- sideEffects: None
-- admissionReviewVersions:
- - v1
- clientConfig:
- service:
- name: kargo-webhooks-server
- namespace: kargo
- path: /validate-kargo-akuity-io-v1alpha1-stage
- failurePolicy: Fail
- name: stage.kargo.akuity.io
- rules:
- - apiGroups:
- - kargo.akuity.io
- apiVersions:
- - v1alpha1
- operations:
- - CREATE
- - UPDATE
- resources:
- - stages
- scope: Namespaced
- sideEffects: None
-- admissionReviewVersions:
- - v1
- clientConfig:
- service:
- name: kargo-webhooks-server
- namespace: kargo
- path: /validate-kargo-akuity-io-v1alpha1-warehouse
- failurePolicy: Fail
- name: warehouse.kargo.akuity.io
- rules:
- - apiGroups:
- - kargo.akuity.io
- apiVersions:
- - v1alpha1
- operations:
- - CREATE
- - UPDATE
- resources:
- - warehouses
- scope: Namespaced
- sideEffects: None
-
----
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- controller-gen.kubebuilder.io/version: v0.18.0
- helm.sh/resource-policy: keep
- name: clusterpromotiontasks.kargo.akuity.io
-spec:
- group: kargo.akuity.io
- names:
- kind: ClusterPromotionTask
- listKind: ClusterPromotionTaskList
- plural: clusterpromotiontasks
- shortNames:
- - clusterpromotask
- - clusterpromotasks
- singular: clusterpromotiontask
- scope: Cluster
- versions:
- - additionalPrinterColumns:
- - jsonPath: .metadata.creationTimestamp
- name: Age
- type: date
- name: v1alpha1
- schema:
- openAPIV3Schema:
- properties:
- apiVersion:
- description: |-
- APIVersion defines the versioned schema of this representation of an object.
- Servers should convert recognized schemas to the latest internal value, and
- may reject unrecognized values.
- More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
- type: string
- kind:
- description: |-
- Kind is a string value representing the REST resource this object represents.
- Servers may infer this from the endpoint the client submits requests to.
- Cannot be updated.
- In CamelCase.
- More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
- type: string
- metadata:
- type: object
- spec:
- description: |-
- Spec describes the desired transition of a specific Stage into a specific
- Freight.
- properties:
- steps:
- description: |-
- Steps specifies the directives to be executed as part of this
- PromotionTask. The steps as defined here are inflated into a
- Promotion when it is built from a PromotionTemplate.
- items:
- description: PromotionStep describes a directive to be executed
- as part of a Promotion.
- properties:
- as:
- description: As is the alias this step can be referred to as.
- type: string
- config:
- description: |-
- Config is opaque configuration for the PromotionStep that is understood
- only by each PromotionStep's implementation. It is legal to utilize
- expressions in defining values at any level of this block.
- See https://docs.kargo.io/user-guide/reference-docs/expressions for details.
- x-kubernetes-preserve-unknown-fields: true
- continueOnError:
- description: |-
- ContinueOnError is a boolean value that, if set to true, will cause the
- Promotion to continue executing the next step even if this step fails. It
- also will not permit this failure to impact the overall status of the
- Promotion.
- type: boolean
- if:
- description: |-
- If is an optional expression that, if present, must evaluate to a boolean
- value. If the expression evaluates to false, the step will be skipped.
- If the expression does not evaluate to a boolean value, the step will be
- considered to have failed.
- type: string
- retry:
- description: Retry is the retry policy for this step.
- properties:
- errorThreshold:
- description: |-
- ErrorThreshold is the number of consecutive times the step must fail (for
- any reason) before retries are abandoned and the entire Promotion is marked
- as failed.
-
- If this field is set to 0, the effective default will be a step-specific
- one. If no step-specific default exists (i.e. is also 0), the effective
- default will be the system-wide default of 1.
-
- A value of 1 will cause the Promotion to be marked as failed after just
- a single failure; i.e. no retries will be attempted.
-
- There is no option to specify an infinite number of retries using a value
- such as -1.
-
- In a future release, Kargo is likely to become capable of distinguishing
- between recoverable and non-recoverable step failures. At that time, it is
- planned that unrecoverable failures will not be subject to this threshold
- and will immediately cause the Promotion to be marked as failed without
- further condition.
- format: int32
- type: integer
- timeout:
- description: |-
- Timeout is the soft maximum interval in which a step that returns a Running
- status (which typically indicates it's waiting for something to happen)
- may be retried.
-
- The maximum is a soft one because the check for whether the interval has
- elapsed occurs AFTER the step has run. This effectively means a step may
- run ONCE beyond the close of the interval.
-
- If this field is set to nil, the effective default will be a step-specific
- one. If no step-specific default exists (i.e. is also nil), the effective
- default will be the system-wide default of 0.
-
- A value of 0 will cause the step to be retried indefinitely unless the
- ErrorThreshold is reached.
- type: string
- type: object
- task:
- description: |-
- Task is a reference to a PromotionTask that should be inflated into a
- Promotion when it is built from a PromotionTemplate.
- properties:
- kind:
- description: |-
- Kind is the type of the PromotionTask. Can be either PromotionTask or
- ClusterPromotionTask, default is PromotionTask.
- enum:
- - PromotionTask
- - ClusterPromotionTask
- type: string
- name:
- description: Name is the name of the (Cluster)PromotionTask.
- maxLength: 253
- minLength: 1
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
- type: string
- required:
- - name
- type: object
- uses:
- description: Uses identifies a runner that can execute this
- step.
- minLength: 1
- type: string
- vars:
- description: |-
- Vars is a list of variables that can be referenced by expressions in
- the step's Config. The values override the values specified in the
- PromotionSpec.
- items:
- description: |-
- ExpressionVariable describes a single variable that may be referenced by
- expressions in the context of a ClusterPromotionTask, PromotionTask,
- Promotion, AnalysisRun arguments, or other objects that support expressions.
-
- It is used to pass information to the expression evaluation engine, and to
- allow for dynamic evaluation of expressions based on the variable values.
- properties:
- name:
- description: Name is the name of the variable.
- minLength: 1
- pattern: ^[a-zA-Z_]\w*$
- type: string
- value:
- description: |-
- Value is the value of the variable. It is allowed to utilize expressions
- in the value.
- See https://docs.kargo.io/user-guide/reference-docs/expressions for details.
- type: string
- required:
- - name
- type: object
- type: array
- type: object
- x-kubernetes-validations:
- - message: PromotionTask step must have uses set and must not reference
- another task
- rule: has(self.uses) && !has(self.task)
- minItems: 1
- type: array
- vars:
- description: |-
- Vars specifies the variables available to the PromotionTask. The
- values of these variables are the default values that can be
- overridden by the step referencing the task.
- items:
- description: |-
- ExpressionVariable describes a single variable that may be referenced by
- expressions in the context of a ClusterPromotionTask, PromotionTask,
- Promotion, AnalysisRun arguments, or other objects that support expressions.
-
- It is used to pass information to the expression evaluation engine, and to
- allow for dynamic evaluation of expressions based on the variable values.
- properties:
- name:
- description: Name is the name of the variable.
- minLength: 1
- pattern: ^[a-zA-Z_]\w*$
- type: string
- value:
- description: |-
- Value is the value of the variable. It is allowed to utilize expressions
- in the value.
- See https://docs.kargo.io/user-guide/reference-docs/expressions for details.
- type: string
- required:
- - name
- type: object
- type: array
- required:
- - steps
- type: object
- required:
- - spec
- type: object
- served: true
- storage: true
- subresources: {}
-
----
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- controller-gen.kubebuilder.io/version: v0.18.0
- helm.sh/resource-policy: keep
- name: freights.kargo.akuity.io
-spec:
- group: kargo.akuity.io
- names:
- kind: Freight
- listKind: FreightList
- plural: freights
- singular: freight
- scope: Namespaced
- versions:
- - additionalPrinterColumns:
- - jsonPath: .metadata.labels.kargo\.akuity\.io/alias
- name: Alias
- type: string
- - jsonPath: .origin.kind
- name: Origin (Kind)
- type: string
- - jsonPath: .origin.name
- name: Origin (Name)
- type: string
- - jsonPath: .metadata.creationTimestamp
- name: Age
- type: date
- name: v1alpha1
- schema:
- openAPIV3Schema:
- description: Freight represents a collection of versioned artifacts.
- properties:
- alias:
- description: |-
- Alias is a human-friendly alias for a piece of Freight. This is an optional
- field. A defaulting webhook will sync this field with the value of the
- kargo.akuity.io/alias label. When the alias label is not present or differs
- from the value of this field, the defaulting webhook will set the label to
- the value of this field. If the alias label is present and this field is
- empty, the defaulting webhook will set the value of this field to the value
- of the alias label. If this field is empty and the alias label is not
- present, the defaulting webhook will choose an available alias and assign
- it to both the field and label.
- type: string
- apiVersion:
- description: |-
- APIVersion defines the versioned schema of this representation of an object.
- Servers should convert recognized schemas to the latest internal value, and
- may reject unrecognized values.
- More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
- type: string
- charts:
- description: Charts describes specific versions of specific Helm charts.
- items:
- description: Chart describes a specific version of a Helm chart.
- properties:
- name:
- description: Name specifies the name of the chart.
- type: string
- repoURL:
- description: |-
- RepoURL specifies the URL of a Helm chart repository. Classic chart
- repositories (using HTTP/S) can contain differently named charts. When this
- field points to such a repository, the Name field will specify the name of
- the chart within the repository. In the case of a repository within an OCI
- registry, the URL implicitly points to a specific chart and the Name field
- will be empty.
- type: string
- version:
- description: Version specifies a particular version of the chart.
- type: string
- type: object
- type: array
- commits:
- description: Commits describes specific Git repository commits.
- items:
- description: GitCommit describes a specific commit from a specific Git
- repository.
- properties:
- author:
- description: Author is the author of the commit.
- type: string
- branch:
- description: Branch denotes the branch of the repository where this
- commit was found.
- type: string
- committer:
- description: Committer is the person who committed the commit.
- type: string
- id:
- description: |-
- ID is the ID of a specific commit in the Git repository specified by
- RepoURL.
- type: string
- message:
- description: |-
- Message is the message associated with the commit. At present, this only
- contains the first line (subject) of the commit message.
- type: string
- repoURL:
- description: RepoURL is the URL of a Git repository.
- type: string
- tag:
- description: |-
- Tag denotes a tag in the repository that matched selection criteria and
- resolved to this commit.
- type: string
- type: object
- type: array
- images:
- description: Images describes specific versions of specific container
- images.
- items:
- description: Image describes a specific version of a container image.
- properties:
- annotations:
- additionalProperties:
- type: string
- description: Annotations is a map of arbitrary metadata for the
- image.
- type: object
- digest:
- description: |-
- Digest identifies a specific version of the image in the repository
- specified by RepoURL. This is a more precise identifier than Tag.
- type: string
- gitRepoURL:
- description: |-
- GitRepoURL specifies the URL of a Git repository that contains the source
- code for the image repository referenced by the RepoURL field if Kargo was
- able to infer it.
-
- Deprecated: Use OCI annotations instead. Will be removed in v1.7.0.
- type: string
- repoURL:
- description: RepoURL describes the repository in which the image
- can be found.
- type: string
- tag:
- description: |-
- Tag identifies a specific version of the image in the repository specified
- by RepoURL.
- type: string
- type: object
- type: array
- kind:
- description: |-
- Kind is a string value representing the REST resource this object represents.
- Servers may infer this from the endpoint the client submits requests to.
- Cannot be updated.
- In CamelCase.
- More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
- type: string
- metadata:
- type: object
- origin:
- description: Origin describes a kind of Freight in terms of its origin.
- properties:
- kind:
- description: |-
- Kind is the kind of resource from which Freight may have originated. At
- present, this can only be "Warehouse".
- enum:
- - Warehouse
- type: string
- name:
- description: |-
- Name is the name of the resource of the kind indicated by the Kind field
- from which Freight may originate.
- type: string
- required:
- - kind
- - name
- type: object
- status:
- description: Status describes the current status of this Freight.
- properties:
- approvedFor:
- additionalProperties:
- description: |-
- ApprovedStage describes a Stage for which Freight has been (manually)
- approved.
- properties:
- approvedAt:
- description: ApprovedAt is the time at which the Freight was
- approved for the Stage.
- format: date-time
- type: string
- type: object
- description: |-
- ApprovedFor describes the Stages for which this Freight has been approved
- preemptively/manually by a user. This is useful for hotfixes, where one
- might wish to promote a piece of Freight to a given Stage without
- transiting the entire pipeline.
- type: object
- currentlyIn:
- additionalProperties:
- description: CurrentStage reflects a Stage's current use of Freight.
- properties:
- since:
- description: |-
- Since is the time at which the Stage most recently started using the
- Freight. This can be used to calculate how long the Freight has been in use
- by the Stage.
- format: date-time
- type: string
- type: object
- description: CurrentlyIn describes the Stages in which this Freight
- is currently in use.
- type: object
- verifiedIn:
- additionalProperties:
- description: VerifiedStage describes a Stage in which Freight has
- been verified.
- properties:
- longestSoak:
- description: |-
- LongestCompletedSoak represents the longest definite time interval wherein
- the Freight was in CONTINUOUS use by the Stage. This value is updated as
- Freight EXITS the Stage. If the Freight is currently in use by the Stage,
- the time elapsed since the Freight ENTERED the Stage is its current soak
- time, which may exceed the value of this field.
- type: string
- verifiedAt:
- description: VerifiedAt is the time at which the Freight was
- verified in the Stage.
- format: date-time
- type: string
- type: object
- description: |-
- VerifiedIn describes the Stages in which this Freight has been verified
- through promotion and subsequent health checks.
- type: object
- type: object
- required:
- - origin
- type: object
- served: true
- storage: true
- subresources:
- status: {}
-
----
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- controller-gen.kubebuilder.io/version: v0.18.0
- helm.sh/resource-policy: keep
- name: projectconfigs.kargo.akuity.io
-spec:
- group: kargo.akuity.io
- names:
- kind: ProjectConfig
- listKind: ProjectConfigList
- plural: projectconfigs
- singular: projectconfig
- scope: Namespaced
- versions:
- - additionalPrinterColumns:
- - jsonPath: .metadata.creationTimestamp
- name: Age
- type: date
- name: v1alpha1
- schema:
- openAPIV3Schema:
- description: |-
- ProjectConfig is a resource type that describes the configuration of a
- Project.
- properties:
- apiVersion:
- description: |-
- APIVersion defines the versioned schema of this representation of an object.
- Servers should convert recognized schemas to the latest internal value, and
- may reject unrecognized values.
- More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
- type: string
- kind:
- description: |-
- Kind is a string value representing the REST resource this object represents.
- Servers may infer this from the endpoint the client submits requests to.
- Cannot be updated.
- In CamelCase.
- More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
- type: string
- metadata:
- type: object
- spec:
- description: Spec describes the configuration of a Project.
- properties:
- promotionPolicies:
- description: |-
- PromotionPolicies defines policies governing the promotion of Freight to
- specific Stages within the Project.
- items:
- description: |-
- PromotionPolicy defines policies governing the promotion of Freight to a
- specific Stage.
- properties:
- autoPromotionEnabled:
- description: |-
- AutoPromotionEnabled indicates whether new Freight can automatically be
- promoted into the Stage referenced by the Stage field. Note: There are may
- be other conditions also required for an auto-promotion to occur. This
- field defaults to false, but is commonly set to true for Stages that
- subscribe to Warehouses instead of other, upstream Stages. This allows
- users to define Stages that are automatically updated as soon as new
- artifacts are detected.
- type: boolean
- stage:
- description: |-
- Stage is the name of the Stage to which this policy applies.
-
- Deprecated: Use StageSelector instead.
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
- type: string
- stageSelector:
- description: |-
- StageSelector is a selector that matches the Stage resource to which
- this policy applies.
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector
- requirements. The requirements are ANDed.
- items:
- description: |-
- A label selector requirement is a selector that contains values, a key, and an operator that
- relates the key and values.
- properties:
- key:
- description: key is the label key that the selector
- applies to.
- type: string
- operator:
- description: |-
- operator represents a key's relationship to a set of values.
- Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: |-
- values is an array of string values. If the operator is In or NotIn,
- the values array must be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. This array is replaced during a strategic
- merge patch.
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- required:
- - key
- - operator
- type: object
- type: array
- x-kubernetes-list-type: atomic
- matchLabels:
- additionalProperties:
- type: string
- description: |-
- matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
- map is equivalent to an element of matchExpressions, whose key field is "key", the
- operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- name:
- description: |-
- Name is the name of the resource to which this policy applies.
-
- It can be an exact name, a regex pattern (with prefix "regex:"), or a
- glob pattern (with prefix "glob:").
-
- When both Name and LabelSelector are specified, the Name is ANDed with
- the LabelSelector. I.e., the resource must match both the Name and
- LabelSelector to be selected by this policy.
-
- NOTE: Using a specific exact name is the most secure option. Pattern
- matching via regex or glob can be exploited by users with permissions to
- match promotion policies that weren't intended to apply to their
- resources. For example, a user could create a resource with a name
- deliberately crafted to match the pattern, potentially bypassing intended
- promotion controls.
- type: string
- type: object
- x-kubernetes-map-type: atomic
- type: object
- x-kubernetes-validations:
- - message: PromotionPolicy must have exactly one of stage or stageSelector
- set
- rule: 'has(self.stage) ? !has(self.stageSelector) : has(self.stageSelector)'
- type: array
- type: object
- type: object
- served: true
- storage: true
- subresources: {}
-
----
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- controller-gen.kubebuilder.io/version: v0.18.0
- helm.sh/resource-policy: keep
- name: projects.kargo.akuity.io
-spec:
- group: kargo.akuity.io
- names:
- kind: Project
- listKind: ProjectList
- plural: projects
- singular: project
- scope: Cluster
- versions:
- - additionalPrinterColumns:
- - jsonPath: .status.conditions[?(@.type=="Ready")].status
- name: Ready
- type: string
- - jsonPath: .status.conditions[?(@.type=="Ready")].message
- name: Status
- type: string
- - jsonPath: .metadata.creationTimestamp
- name: Age
- type: date
- name: v1alpha1
- schema:
- openAPIV3Schema:
- description: |-
- Project is a resource type that reconciles to a specially labeled namespace
- and other TODO: TBD project-level resources.
- properties:
- apiVersion:
- description: |-
- APIVersion defines the versioned schema of this representation of an object.
- Servers should convert recognized schemas to the latest internal value, and
- may reject unrecognized values.
- More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
- type: string
- kind:
- description: |-
- Kind is a string value representing the REST resource this object represents.
- Servers may infer this from the endpoint the client submits requests to.
- Cannot be updated.
- In CamelCase.
- More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
- type: string
- metadata:
- type: object
- spec:
- description: |-
- Spec describes a Project.
-
- Deprecated: Create a ProjectConfig resource with the same name as the
- Project resource in the Project's namespace. The ProjectConfig resource
- can be used to configure the Project.
- properties:
- promotionPolicies:
- description: |-
- PromotionPolicies defines policies governing the promotion of Freight to
- specific Stages within the Project.
- items:
- description: |-
- PromotionPolicy defines policies governing the promotion of Freight to a
- specific Stage.
- properties:
- autoPromotionEnabled:
- description: |-
- AutoPromotionEnabled indicates whether new Freight can automatically be
- promoted into the Stage referenced by the Stage field. Note: There are may
- be other conditions also required for an auto-promotion to occur. This
- field defaults to false, but is commonly set to true for Stages that
- subscribe to Warehouses instead of other, upstream Stages. This allows
- users to define Stages that are automatically updated as soon as new
- artifacts are detected.
- type: boolean
- stage:
- description: |-
- Stage is the name of the Stage to which this policy applies.
-
- Deprecated: Use StageSelector instead.
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
- type: string
- stageSelector:
- description: |-
- StageSelector is a selector that matches the Stage resource to which
- this policy applies.
- properties:
- matchExpressions:
- description: matchExpressions is a list of label selector
- requirements. The requirements are ANDed.
- items:
- description: |-
- A label selector requirement is a selector that contains values, a key, and an operator that
- relates the key and values.
- properties:
- key:
- description: key is the label key that the selector
- applies to.
- type: string
- operator:
- description: |-
- operator represents a key's relationship to a set of values.
- Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: |-
- values is an array of string values. If the operator is In or NotIn,
- the values array must be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. This array is replaced during a strategic
- merge patch.
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- required:
- - key
- - operator
- type: object
- type: array
- x-kubernetes-list-type: atomic
- matchLabels:
- additionalProperties:
- type: string
- description: |-
- matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
- map is equivalent to an element of matchExpressions, whose key field is "key", the
- operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- name:
- description: |-
- Name is the name of the resource to which this policy applies.
-
- It can be an exact name, a regex pattern (with prefix "regex:"), or a
- glob pattern (with prefix "glob:").
-
- When both Name and LabelSelector are specified, the Name is ANDed with
- the LabelSelector. I.e., the resource must match both the Name and
- LabelSelector to be selected by this policy.
-
- NOTE: Using a specific exact name is the most secure option. Pattern
- matching via regex or glob can be exploited by users with permissions to
- match promotion policies that weren't intended to apply to their
- resources. For example, a user could create a resource with a name
- deliberately crafted to match the pattern, potentially bypassing intended
- promotion controls.
- type: string
- type: object
- x-kubernetes-map-type: atomic
- type: object
- x-kubernetes-validations:
- - message: PromotionPolicy must have exactly one of stage or stageSelector
- set
- rule: 'has(self.stage) ? !has(self.stageSelector) : has(self.stageSelector)'
- type: array
- type: object
- status:
- description: Status describes the Project's current status.
- properties:
- conditions:
- description: |-
- Conditions contains the last observations of the Project's current
- state.
- items:
- description: Condition contains details for one aspect of the current
- state of this API Resource.
- properties:
- lastTransitionTime:
- description: |-
- lastTransitionTime is the last time the condition transitioned from one status to another.
- This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
- format: date-time
- type: string
- message:
- description: |-
- message is a human readable message indicating details about the transition.
- This may be an empty string.
- maxLength: 32768
- type: string
- observedGeneration:
- description: |-
- observedGeneration represents the .metadata.generation that the condition was set based upon.
- For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
- with respect to the current state of the instance.
- format: int64
- minimum: 0
- type: integer
- reason:
- description: |-
- reason contains a programmatic identifier indicating the reason for the condition's last transition.
- Producers of specific condition types may define expected values and meanings for this field,
- and whether the values are considered a guaranteed API.
- The value should be a CamelCase string.
- This field may not be empty.
- maxLength: 1024
- minLength: 1
- pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
- type: string
- status:
- description: status of the condition, one of True, False, Unknown.
- enum:
- - "True"
- - "False"
- - Unknown
- type: string
- type:
- description: type of condition in CamelCase or in foo.example.com/CamelCase.
- maxLength: 316
- pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
- type: string
- required:
- - lastTransitionTime
- - message
- - reason
- - status
- - type
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - type
- x-kubernetes-list-type: map
- stats:
- description: |-
- Stats contains a summary of the collective state of a Project's
- constituent resources.
- properties:
- stages:
- description: Stages contains a summary of the collective state
- of the Project's Stages.
- properties:
- count:
- description: Count contains the total number of Stages in
- the Project.
- format: int64
- type: integer
- health:
- description: Health contains a summary of the collective health
- of a Project's Stages.
- properties:
- healthy:
- description: Healthy contains the number of resources
- that are explicitly healthy.
- format: int64
- type: integer
- type: object
- type: object
- warehouses:
- description: |-
- Warehouses contains a summary of the collective state of the Project's
- Warehouses.
- properties:
- count:
- description: Count contains the total number of Warehouses
- in the Project.
- format: int64
- type: integer
- health:
- description: |-
- Health contains a summary of the collective health of a Project's
- Warehouses.
- properties:
- healthy:
- description: Healthy contains the number of resources
- that are explicitly healthy.
- format: int64
- type: integer
- type: object
- type: object
- type: object
- type: object
- type: object
- served: true
- storage: true
- subresources:
- status: {}
-
----
-apiVersion: apiextensions.k8s.io/v1
-kind: CustomResourceDefinition
-metadata:
- annotations:
- controller-gen.kubebuilder.io/version: v0.18.0
- helm.sh/resource-policy: keep
- name: promotions.kargo.akuity.io
-spec:
- group: kargo.akuity.io
- names:
- kind: Promotion
- listKind: PromotionList
- plural: promotions
- shortNames:
- - promo
- - promos
- singular: promotion
- scope: Namespaced
- versions:
- - additionalPrinterColumns:
- - jsonPath: .metadata.labels.kargo\.akuity\.io/shard
- name: Shard
- type: string
- - jsonPath: .spec.stage
- name: Stage
- type: string
- - jsonPath: .spec.freight
- name: Freight
- type: string
- - jsonPath: .status.phase
- name: Phase
- type: string
- - jsonPath: .metadata.creationTimestamp
- name: Age
- type: date
- name: v1alpha1
- schema:
- openAPIV3Schema:
- description: |-
- Promotion represents a request to transition a particular Stage into a
- particular Freight.
- properties:
- apiVersion:
- description: |-
- APIVersion defines the versioned schema of this representation of an object.
- Servers should convert recognized schemas to the latest internal value, and
- may reject unrecognized values.
- More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
- type: string
- kind:
- description: |-
- Kind is a string value representing the REST resource this object represents.
- Servers may infer this from the endpoint the client submits requests to.
- Cannot be updated.
- In CamelCase.
- More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
- type: string
- metadata:
- type: object
- spec:
- description: |-
- Spec describes the desired transition of a specific Stage into a specific
- Freight.
- properties:
- freight:
- description: |-
- Freight specifies the piece of Freight to be promoted into the Stage
- referenced by the Stage field.
- maxLength: 253
- minLength: 1
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
- type: string
- stage:
- description: |-
- Stage specifies the name of the Stage to which this Promotion
- applies. The Stage referenced by this field MUST be in the same
- namespace as the Promotion.
- maxLength: 253
- minLength: 1
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
- type: string
- steps:
- description: |-
- Steps specifies the directives to be executed as part of this Promotion.
- The order in which the directives are executed is the order in which they
- are listed in this field.
- items:
- description: PromotionStep describes a directive to be executed
- as part of a Promotion.
- properties:
- as:
- description: As is the alias this step can be referred to as.
- type: string
- config:
- description: |-
- Config is opaque configuration for the PromotionStep that is understood
- only by each PromotionStep's implementation. It is legal to utilize
- expressions in defining values at any level of this block.
- See https://docs.kargo.io/user-guide/reference-docs/expressions for details.
- x-kubernetes-preserve-unknown-fields: true
- continueOnError:
- description: |-
- ContinueOnError is a boolean value that, if set to true, will cause the
- Promotion to continue executing the next step even if this step fails. It
- also will not permit this failure to impact the overall status of the
- Promotion.
- type: boolean
- if:
- description: |-
- If is an optional expression that, if present, must evaluate to a boolean
- value. If the expression evaluates to false, the step will be skipped.
- If the expression does not evaluate to a boolean value, the step will be
- considered to have failed.
- type: string
- retry:
- description: Retry is the retry policy for this step.
- properties:
- errorThreshold:
- description: |-
- ErrorThreshold is the number of consecutive times the step must fail (for
- any reason) before retries are abandoned and the entire Promotion is marked
- as failed.
-
- If this field is set to 0, the effective default will be a step-specific
- one. If no step-specific default exists (i.e. is also 0), the effective
- default will be the system-wide default of 1.
-
- A value of 1 will cause the Promotion to be marked as failed after just
- a single failure; i.e. no retries will be attempted.
-
-
⚠️⚠️⚠️ Diff is too long. Truncated to 65536 characters. This can be adjusted with the `--max-diff-length` flag |
fb1bc5c
to
d2e2d6f
Compare
d2e2d6f
to
43f8e33
Compare
21f0cd4
to
f10800b
Compare
9ba3737
to
4583b3e
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.