File yoke.spec of Package yoke

#
# spec file for package yoke
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


Name:           yoke
Version:        0.1.2
Release:        0
Summary:        Infrastructure-as-Code (IaC) Package Deployer for Kubernetes
License:        MIT
URL:            https://github.com/yokecd/yoke
Source:         %{name}-%{version}.tar.gz
Source1:        vendor.tar.gz
BuildRequires:  go >= 1.23

%description
yoke is a Helm-inspired infrastructure-as-code (IaC) package deployer.

The philosophy behind yoke is that Kubernetes packages should be described via
code. Programming environments have control flow, test frameworks, static
typing, documentation, error management, and versioning. They are ideal for
building contracts and enforcing them.

yoke deploys "flights" to Kubernetes (think helm charts or packages). A flight
is a wasm executable that outputs the Kubernetes resources making up the
package as JSON/YAML to stdout.

yoke embeds a pure-Go wasm runtime (wazero) and deploys your flight to
Kubernetes. It keeps track of the different revisions for any given release and
provides capabilities such as rollbacks and inspection.

%prep
%autosetup -p 1 -a 1

%build
go build \
   -mod=vendor \
   -buildmode=pie \
   -o bin/%{name} ./cmd/yoke

%install
# Install the binary.
install -D -m 0755 bin/%{name} %{buildroot}/%{_bindir}/%{name}

%files
%doc readme.md
%license LICENSE
%{_bindir}/%{name}

%changelog
openSUSE Build Service is sponsored by