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
This commit is contained in:
Johannes Kastl 2024-09-07 09:36:23 +00:00 committed by Git OBS Bridge
commit 18af2d6a8c
12 changed files with 210 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -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

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

38
Makefile Normal file
View File

@ -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"

13
PACKAGING_README.md Normal file
View File

@ -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.

19
_service Normal file
View File

@ -0,0 +1,19 @@
<services>
<service name="obs_scm" mode="manual">
<param name="url">https://github.com/skupperproject/skupper</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
<param name="revision">1.7.3</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">enable</param>
</service>
<service name="set_version" mode="manual">
</service>
<!-- services below are running at buildtime -->
<service name="tar" mode="buildtime">
</service>
<service name="recompress" mode="buildtime">
<param name="file">*.tar</param>
<param name="compression">gz</param>
</service>
</services>

4
_servicedata Normal file
View File

@ -0,0 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/skupperproject/skupper</param>
<param name="changesrevision">2fc1dd5b2ac8dd37916f502a4ee54a7406ce753c</param></service></servicedata>

3
generated.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0a42713c1cfadd6cdbadbba50c4c69748bb06c5d5e99dc1f1f2be96f03db4bde
size 376207

3
skupper-1.7.3.obscpio Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d48880263d92308fd213b4c07eb850bf28783fb3e5b1f77528b6d551c0e64756
size 4086796

20
skupper.changes Normal file
View File

@ -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 <opensuse_buildservice@ojkastl.de>
- new package skupper: Virtual Application Network, enabling rich
hybrid cloud communication

4
skupper.obsinfo Normal file
View File

@ -0,0 +1,4 @@
name: skupper
version: 1.7.3
mtime: 1721068325
commit: 2fc1dd5b2ac8dd37916f502a4ee54a7406ce753c

79
skupper.spec Normal file
View File

@ -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

3
vendor.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5dd8bcd50c70100d8a6214f69f3495e4ea6c4344b975d97202ad2881d8bc43a2
size 7728480