# Copyright 2019 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

EAPI=7

DESCRIPTION="CLI for container runtime interface (CRI)"
HOMEPAGE="https://github.com/kubernetes-sigs/cri-tools/blob/master/docs/crictl.md"
SRC_URI="https://github.com/kubernetes-incubator/cri-tools/releases/download/v${PV}/crictl-v${PV}-linux-amd64.tar.gz -> crictl-v${PV}-linux-amd64.tar.gz"

LICENSE="BSD-Google"
SLOT="0"
KEYWORDS="*"

# Default S=${WORKDIR}/${PV} but tarball does not store the binaries in a ${PV} folder.
S="${WORKDIR}"

src_install() {
	dobin crictl

	insinto /etc
	doins "${FILESDIR}"/crictl.yaml
}
