apiVersion: krew.googlecontainertools.github.com/v1alpha2
kind: Plugin
metadata:
  name: preflight
spec:
  version: {{ .TagName }}
  platforms:
  - selector:
      matchLabels:
        os: linux
        arch: amd64
    {{addURIAndSha "https://github.com/replicatedhq/troubleshoot/releases/download/{{ .TagName }}/preflight_linux_amd64.tar.gz" .TagName }}
    files:
    - from: preflight
      to: .
    - from: LICENSE
      to: .
    bin: preflight
  - selector:
      matchLabels:
        os: linux
        arch: arm64
    {{addURIAndSha "https://github.com/replicatedhq/troubleshoot/releases/download/{{ .TagName }}/preflight_linux_arm64.tar.gz" .TagName }}
    files:
    - from: preflight
      to: .
    - from: LICENSE
      to: .
    bin: preflight
  - selector:
      matchLabels:
        os: linux
        arch: arm
    {{addURIAndSha "https://github.com/replicatedhq/troubleshoot/releases/download/{{ .TagName }}/preflight_linux_arm.tar.gz" .TagName }}
    files:
    - from: preflight
      to: .
    - from: LICENSE
      to: .
    bin: preflight
  - selector:
      matchLabels:
        os: darwin
        arch: amd64
    {{addURIAndSha "https://github.com/replicatedhq/troubleshoot/releases/download/{{ .TagName }}/preflight_darwin_all.tar.gz" .TagName }}
    files:
    - from: preflight
      to: .
    - from: LICENSE
      to: .
    bin: preflight
  - selector:
      matchLabels:
        os: darwin
        arch: arm64
    {{addURIAndSha "https://github.com/replicatedhq/troubleshoot/releases/download/{{ .TagName }}/preflight_darwin_all.tar.gz" .TagName }}
    files:
    - from: preflight
      to: .
    - from: LICENSE
      to: .
    bin: preflight
  shortDescription: Executes application preflight tests in a cluster
  homepage: https://github.com/replicatedhq/troubleshoot
  description: |
    This plugin executes application-specific preflight checks and conformance
    tests against a cluster, prior to installation of an application.

    Application developers can create and host a Preflight manifest that
    defines the minimum and desired Kubernetes environment for an application.
    Before installing the application, a cluster admin can use this plugin to
    execute the application preflight checksto identify any missing
    components, configuration or incompatibilities between the cluster and the
    desired environment.

    When executing Preflight tests, the test results will be displayed in a
    terminal-based UI on the workstation that executed the command.

    For information on creating a Preflight manifest, view the documentation
    at https://help.replicated.com/docs/troubleshoot/kubernetes/analysis/

    Usage:
      $ kubectl preflight <uri/path>

      where <uri/path> references a set of application preflight checks

      For example:

      $ kubectl preflight https://preflight.replicated.com

    For additional options:
      $ kubectl preflight --help

    Documentation:
      Full documentation on this plugin is available at:
      https://help.replicated.com/docs/troubleshoot/kubernetes/preflight/overview/

      For application developers writing collectors and analyzers:
      https://help.replicated.com/docs/troubleshoot/kubernetes/collectors/defining-collectors/
