From 18af2d6a8c8e3ca51ef33569af214b389d3bdc5c6a8768170b3134e7d9f124e5 Mon Sep 17 00:00:00 2001 From: Johannes Kastl Date: Sat, 7 Sep 2024 09:36:23 +0000 Subject: [PATCH] new package skupper: Virtual Application Network, enabling rich hybrid cloud communication OBS-URL: https://build.opensuse.org/package/show/devel:kubic/skupper?expand=0&rev=1 --- .gitattributes | 23 +++++++++++++ .gitignore | 1 + Makefile | 38 +++++++++++++++++++++ PACKAGING_README.md | 13 +++++++ _service | 19 +++++++++++ _servicedata | 4 +++ generated.tar.gz | 3 ++ skupper-1.7.3.obscpio | 3 ++ skupper.changes | 20 +++++++++++ skupper.obsinfo | 4 +++ skupper.spec | 79 +++++++++++++++++++++++++++++++++++++++++++ vendor.tar.gz | 3 ++ 12 files changed, 210 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 PACKAGING_README.md create mode 100644 _service create mode 100644 _servicedata create mode 100644 generated.tar.gz create mode 100644 skupper-1.7.3.obscpio create mode 100644 skupper.changes create mode 100644 skupper.obsinfo create mode 100644 skupper.spec create mode 100644 vendor.tar.gz diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..9c7593c --- /dev/null +++ b/Makefile @@ -0,0 +1,38 @@ +NAME = skupper + +mkfile_path := $(abspath $(lastword $(MAKEFILE_LIST))) +mkfile_dir := $(dir $(mkfile_path)) +export GOPATH := $(mkfile_dir)/tmpdir/ + +# make sure ./ is in the path, +# otherwise mockery is not found... +export PATH := :$(mkfile_dir)/tmpdir/bin:$(PATH) + +default: clean tar + +clean: + rm -rf $(NAME) $(NAME)-*.obscpio vendor.tar.gz generated.tar.gz ./tmpdir + +tar: + osc service manualrun + mkdir -p ./tmpdir/src/ && \ + rm -rf ./tmpdir/src/ && \ + echo "Copy files to ./tmpdir/src/" && \ + cp -r ./skupper/ ./tmpdir/src && \ + cd ./tmpdir/src/ && \ + echo "Starting go generate" && \ + ./scripts/update-codegen.sh && \ + ./scripts/libpod-generate.sh && \ + go mod download && \ + go mod vendor && \ + echo "Creating tarball vendor.tar.gz" && \ + tar czf ../../vendor.tar.gz ./vendor && \ + ls -lh ../../vendor.tar.gz && \ + echo "Creating tarball generated.tar.gz" && \ + tar czf ../../generated.tar.gz ./client/generated/ && \ + ls -lh ../../generated.tar.gz && \ + echo "Cleaning up" && \ + go clean -modcache && \ + cd ../../ && \ + rm -rf ./tmpdir && \ + echo "Finished" diff --git a/PACKAGING_README.md b/PACKAGING_README.md new file mode 100644 index 0000000..65608d1 --- /dev/null +++ b/PACKAGING_README.md @@ -0,0 +1,13 @@ +# Packaging skupper + +skupper requires to run `make generate-client` before vendoring the golang +dependencies. + +1. Change the version in the `_service` file +3. Run `make` +4. Check the autogenerated changelog entry +5. Commit the changes as usual + +For the OBS workflow you need `obs-service-tar_scm`. + +For the `make` part you need `make` and a recent go installation. diff --git a/_service b/_service new file mode 100644 index 0000000..9fc5151 --- /dev/null +++ b/_service @@ -0,0 +1,19 @@ + + + https://github.com/skupperproject/skupper + git + .git + 1.7.3 + @PARENT_TAG@ + enable + + + + + + + + *.tar + gz + + diff --git a/_servicedata b/_servicedata new file mode 100644 index 0000000..16f29f5 --- /dev/null +++ b/_servicedata @@ -0,0 +1,4 @@ + + + https://github.com/skupperproject/skupper + 2fc1dd5b2ac8dd37916f502a4ee54a7406ce753c \ No newline at end of file diff --git a/generated.tar.gz b/generated.tar.gz new file mode 100644 index 0000000..6f3dcdf --- /dev/null +++ b/generated.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a42713c1cfadd6cdbadbba50c4c69748bb06c5d5e99dc1f1f2be96f03db4bde +size 376207 diff --git a/skupper-1.7.3.obscpio b/skupper-1.7.3.obscpio new file mode 100644 index 0000000..9bbc31e --- /dev/null +++ b/skupper-1.7.3.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d48880263d92308fd213b4c07eb850bf28783fb3e5b1f77528b6d551c0e64756 +size 4086796 diff --git a/skupper.changes b/skupper.changes new file mode 100644 index 0000000..30e42bd --- /dev/null +++ b/skupper.changes @@ -0,0 +1,20 @@ +------------------------------------------------------------------- +Sun Aug 18 12:57:42 UTC 2024 - opensuse_buildservice@ojkastl.de + +- Update to version 1.7.3: + * update for 1.7.3 + * update for 1.7.2 + * Include labels from site spec on new secret + * Configure oauth-proxy with random cookie secret + * update for 1.7.1 + * update packages (#1480) + * Update for 1.7.0 + * Fix the early parsing of platform flag in init() (#1451) + * Default ingress to route on openshift + * Sk1765 fix flow protocol race (#1460) + +------------------------------------------------------------------- +Sun Aug 18 12:54:33 UTC 2024 - Johannes Kastl + +- new package skupper: Virtual Application Network, enabling rich + hybrid cloud communication diff --git a/skupper.obsinfo b/skupper.obsinfo new file mode 100644 index 0000000..48b26ba --- /dev/null +++ b/skupper.obsinfo @@ -0,0 +1,4 @@ +name: skupper +version: 1.7.3 +mtime: 1721068325 +commit: 2fc1dd5b2ac8dd37916f502a4ee54a7406ce753c diff --git a/skupper.spec b/skupper.spec new file mode 100644 index 0000000..ca43eaf --- /dev/null +++ b/skupper.spec @@ -0,0 +1,79 @@ +# +# spec file for package skupper +# +# 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/ +# + + +%define __arch_install_post export NO_BRP_STRIP_DEBUG=true + +Name: skupper +Version: 1.7.3 +Release: 0 +Summary: Virtual Application Network, enabling rich hybrid cloud communication +License: Apache-2.0 +URL: https://github.com/skupperproject/skupper +Source: %{name}-%{version}.tar.gz +Source1: vendor.tar.gz +Source2: generated.tar.gz +BuildRequires: go >= 1.22 + +%description +Skupper enables cloud communication by enabling you to create a Virtual +Application Network. + +This application layer network decouples addressing from the underlying network +infrastructure. This enables secure communication without a VPN. + +You can use Skupper to create a network from namespaces in one or more +Kubernetes clusters as described in the Getting Started. This guide describes a +simple network, however there are no restrictions on the topology created which +can include redundant paths. + +Connecting one Skupper site to another site enables communication both ways. +Communication can occur using any path available on the network, that is, +direct connections are not required to enable communication. + +Skupper supports anycast and multicast communication using the application +layer network (VAN), allowing you to configure your topology to match business +requirements. + +Skupper does not require any special privileges, that is, you do not require +the cluster-admin role to create networks. + +%prep +%autosetup -p 1 -a 1 +tar xvf %{SOURCE2} + +%build +go build \ + -mod=vendor \ + -buildmode=pie \ + -ldflags=" \ + -X github.com/skupperproject/skupper/pkg/version.Version=%{version}" \ + -o bin/%{name} ./cmd/%{name} + +%install +# Install the binary. +install -D -m 0755 bin/%{name} %{buildroot}/%{_bindir}/%{name} + +%check +go test -v -count=1 ./client + +%files +%doc README.md +%license LICENSE +%{_bindir}/%{name} + +%changelog diff --git a/vendor.tar.gz b/vendor.tar.gz new file mode 100644 index 0000000..989129c --- /dev/null +++ b/vendor.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5dd8bcd50c70100d8a6214f69f3495e4ea6c4344b975d97202ad2881d8bc43a2 +size 7728480