* rook building successfully

* importing runtime dependencies

* cleaning up rook.spec

* enabling patterns-ceph-containers without select dependencies

* updating licenses for added packages

* licensing corrections for added packages

* applied lint diffs

* ignoring meta package in cgmanifest

* updating licenses-map metadata

* correcting releases

* adding source link, correcting changelog

* added vendor tar instructions

* removing opensuse csi references from rook

* removed rook build flags, remove patterns-ceph source, removed rook test binary

* updating signatures.json

* correcting capitalization of source attribution

* Corrected changelog comment

Co-authored-by: maxbrodeururbas <maxbr@microsoft.com>
This commit is contained in:
Max Brodeur-Urbas 2021-11-10 11:49:30 -08:00 коммит произвёл GitHub
Родитель 2a065b97fc
Коммит 68fdd50ff4
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
13 изменённых файлов: 1396 добавлений и 2 удалений

1
.github/workflows/validate-cg-manifest.sh поставляемый
Просмотреть файл

@ -27,6 +27,7 @@ ignore_list=" \
moby-buildx \
moby-containerd \
openjdk8 \
patterns-ceph-containers \
python-markupsafe \
python-nocasedict \
python-nocasedict \

Различия файлов скрыты, потому что одна или несколько строк слишком длинны

Просмотреть файл

@ -209,6 +209,7 @@
"sos",
"squashfs-tools",
"sscg",
"tini",
"uclibc-ng",
"usbredir",
"uuid",
@ -364,6 +365,8 @@
"jna",
"kured",
"libcontainers-common",
"patterns-ceph-containers",
"rook",
"xcursor-themes"
]
},

Просмотреть файл

@ -0,0 +1,3 @@
{
"Signatures": {}
}

Просмотреть файл

@ -0,0 +1,93 @@
Summary: Patterns for the Ceph containers
Name: patterns-ceph-containers
Version: 1.0
Release: 1%{?dist}
License: MIT
Vendor: Microsoft Corporation
Distribution: Mariner
Group: Metapackages
URL: http://en.opensuse.org/Patterns
ExclusiveArch: x86_64 aarch64 ppc64le s390x
%description
This is an internal package that is used to create the patterns as part
of the installation source setup. Installation of this package does
not make sense.
%package ceph_base
Summary: Ceph base
Group: Metapackages
Provides: pattern() = ceph_base
Provides: pattern-category() = Containers
Provides: pattern-order() = 3000
Provides: pattern-visible()
Requires: ca-certificates
Requires: ceph
Requires: ceph-base
Requires: ceph-common
Requires: ceph-fuse
Requires: ceph-grafana-dashboards
Requires: ceph-mds
Requires: ceph-mgr
Requires: ceph-mgr-cephadm
Requires: ceph-mgr-dashboard
Requires: ceph-mgr-rook
#Package currently not supported in mariner, keeping dependency for future reference.
#Requires: ceph-mgr-diskprediction-local
Requires: ceph-mon
Requires: ceph-osd
Requires: ceph-prometheus-alerts
Requires: ceph-radosgw
Requires: cephadm
Requires: e2fsprogs
Requires: gptfdisk
Requires: kmod
Requires: lvm2
#Package currently not supported in mariner, keeping dependency for future reference.
#Requires: ceph-iscsi
Requires: rbd-mirror
Requires: rbd-nbd
%description ceph_base
This provides the base for the Ceph, Rook, Ceph CSI driver packages and containers.
%prep
# empty on purpose
%build
# empty on purpose
%files ceph_base
%changelog
* Mon Oct 04 2021 Max Brodeur-Urbas <maxbr@microsoft.com> - 1.0-1
- Initial CBL-Mariner import from openSUSE Tumbleweed (license: same as "License" tag).
- License Verified
- Removed unused source file
* Mon Feb 1 2021 Nathan Cutler <ncutler@suse.com>
- Drop all nfs-ganesha packages from ceph-base:
+ nfs-ganesha
+ nfs-ganesha-ceph
+ nfs-ganesha-rgw
+ nfs-ganesha-rados-grace
+ nfs-ganesha-rados-urls
* Tue Jan 28 2020 Denis Kondratenko <denis.kondratenko@suse.com>
- Added nfs-ganesha-rados-urls to ceph_base
* Fri Dec 13 2019 Kristoffer Gronlund <kgronlund@suse.com>
- ceph-daemon was renamed to cephadm
- ceph-mgr-ssh was renamed to ceph-mgr-cephadm
* Thu Nov 28 2019 Kristoffer Gronlund <kgronlund@suse.com>
- Add missing dependencies to pattern
* Mon Jul 22 2019 Denis Kondratenko <denis.kondratenko@suse.com>
- Rename pattern according to the recomendations (replacing "-" with "_")
* Mon Jul 22 2019 Denis Kondratenko <denis.kondratenko@suse.com>
- Add missing packages (mgr) to the pattern
* Wed Jul 17 2019 Denis Kondratenko <denis.kondratenko@suse.com>
- Initial version

19
SPECS/rook/README Normal file
Просмотреть файл

@ -0,0 +1,19 @@
# Packaging rook
## Dependencies
- go
Requires go 1.12+ and GOPATH set correctly
- dep
go get -u github.com/golang/dep/cmd/dep
- git
- curl
## Updating the package
- run update-tarball.sh to create a new tarball
- update rook.changes
- remove the old tarballs
- osc ar
- osc commit

Просмотреть файл

@ -0,0 +1,13 @@
diff --git a/pkg/operator/ceph/agent/agent.go b/pkg/operator/ceph/agent/agent.go
index 7a8a468a..cfd94c98 100644
--- a/pkg/operator/ceph/agent/agent.go
+++ b/pkg/operator/ceph/agent/agent.go
@@ -38,7 +38,7 @@ const (
flexvolumePathDirEnv = "FLEXVOLUME_DIR_PATH"
libModulesPathDirEnv = "LIB_MODULES_DIR_PATH"
agentMountsEnv = "AGENT_MOUNTS"
- flexvolumeDefaultDirPath = "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/"
+ flexvolumeDefaultDirPath = "/var/lib/kubelet/volumeplugins"
agentDaemonsetPriorityClassNameEnv = "AGENT_PRIORITY_CLASS_NAME"
agentDaemonsetTolerationEnv = "AGENT_TOLERATION"
agentDaemonsetTolerationKeyEnv = "AGENT_TOLERATION_KEY"

Просмотреть файл

@ -0,0 +1,8 @@
{
"Signatures": {
"README": "62096159e1ed9692a12538242e9bd8af72288349804759198f7357ced65ef6c7",
"rook-1.6.2-vendor.tar.gz": "699e305ca8f5a4c22317c71fe0b6b1a0bf7a7683da3d82f06fd2d59bb94c65c9",
"rook-1.6.2.tar.gz": "0d8af94c6e163e376c39969934dc15e989e3b7101f1b588dd304d04190b6290c",
"update-tarball.sh": "fd98c71b1b407e8fe7713da2ec26670642cd1e005b28e3f56a76f851cf7fc6bf"
}
}

1085
SPECS/rook/rook.spec Normal file

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -0,0 +1,88 @@
#!/bin/bash
set -xEeuo pipefail
#ROOK_REPO="github.com/rook/rook"
#ROOK_REV="v1.4.0"
ROOK_REPO="github.com/SUSE/rook"
ROOK_REV="suse-release-1.6"
if ! command -V go;
then
echo "ERROR: could not find go binary"
exit 1
fi
if ! command -V git;
then
echo "ERROR: could not find git binary"
exit 1
fi
WORK_DIR=$(mktemp -d -t)
function clean_up {
echo "cleaning up..."
chmod -R +w $WORK_DIR
rm -rf $WORK_DIR
}
trap clean_up EXIT SIGINT SIGTERM
PKG_DIR=$(pwd)
function on_err {
code="$?"
set +Eeuo pipefail
echo "ERROR: previous command has failed"
echo "Removing archives."
rm -f $PKG_DIR/rook-$VERSION.tar.xz
rm -f $PKG_DIR/rook-$VERSION-vendor.tar.xz
exit $code
}
trap on_err ERR
cat <<EOF
tar-ing Rook $ROOK_REPO at revision '$ROOK_REV'
EOF
GOPATH=$WORK_DIR
GOPATH_ROOK="$GOPATH/src/github.com/rook/rook"
# For dep to get dependencies correctly, git repos must be located in their upstream locations in
# the GOPATH. i.e., we have to clone SUSE/rook to github.com/rook/rook
mkdir --parents $GOPATH_ROOK
git -C $GOPATH_ROOK/.. clone https://$ROOK_REPO.git
cd "$GOPATH_ROOK"
git fetch && git fetch --tags
git checkout "$ROOK_REV"
# e.g, DESCRIBE=v1.1.0-0-g56789def OR DESCRIBE=v1.1.0-beta.1-0-g12345abc
describe="$(git describe --long --tags)"
GIT_COMMIT=${describe##*-} # git commit hash is last hyphen-delimited field
remainder=${describe%-*} # strip off the git commit field & continue
GIT_COMMIT_NUM=${remainder##*-} # num of commits after tag is second-to-last hyphen-delimited field
RELEASE=${remainder%-*} # all content before git commit num is the release version tag
RELEASE=${RELEASE//-/'~'} # support upstream beta tags: replace hyphen with tilde
RELEASE=${RELEASE:1} # remove preceding 'v' from beginning of release
# strip off preceding 'v' from RELEASE
VERSION="${RELEASE}+git$GIT_COMMIT_NUM.$GIT_COMMIT"
# make primary source tarball before changing anything in the repo
cd $PKG_DIR
#mv $GOPATH_ROOK/rook $GOPATH_ROOK/rook-$RELEASE
#tar -C "$GOPATH_ROOK" -czf rook-$RELEASE.tar.gz rook-$RELEASE/
#tar -C "$GOPATH_ROOK/.." -cJf rook-$VERSION.tar.xz rook/
tar -C "$GOPATH_ROOK/.." -czf rook-$VERSION.tar.gz rook/
# update spec file versions
#sed -i "s/^Version:.*/Version: $RELEASE/" rook.spec
sed -i "s/^Version:.*/Version: $VERSION/" rook.spec
sed -i "s/^%global rook_container_version .*/%global rook_container_version ${RELEASE}/" rook.spec
# make vendor tarball (any existing rook directory must be removed first)
[ -d ./rook ] && rm -rf ./rook
osc -A https://api.suse.de service disabledrun
echo "Finished successfully!"

Просмотреть файл

@ -0,0 +1,5 @@
{
"Signatures": {
"tini-0.19.0.tar.gz": "0fd35a7030052acd9f58948d1d900fe1e432ee37103c5561554408bdac6bbf0d"
}
}

56
SPECS/tini/tini.spec Normal file
Просмотреть файл

@ -0,0 +1,56 @@
Summary: A tiny but valid init for containers
Name: tini
Version: 0.19.0
Release: 5%{?dist}
License: MIT
Vendor: Microsoft Corporation
Distribution: Mariner
URL: https://github.com/krallin/tini
Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
BuildRequires: cmake
BuildRequires: gcc
BuildRequires: glibc-devel
BuildRequires: sed
%description
Tini is the simplest init you could think of.
All Tini does is spawn a single child (Tini is meant to be run in a container),
and wait for it to exit all the while reaping zombies and performing signal
forwarding.
%prep
%autosetup
# Do not strip binaries
sed -i CMakeLists.txt -e 's/ -Wl,-s//'
%build
mkdir build && cd build
%cmake ..
%make_build
%install
%make_install -C build
rm -f %{buildroot}/%{_bindir}/tini-static
%files
%license LICENSE
%doc README.md
%{_bindir}/tini
%changelog
* Thu Nov 04 2021 Max Brodeur-Urbas <maxbr@microsoft.com> - 0.19.0-5
- Removed static tini package
* Wed Aug 18 2021 Tom Fay <tomfay@microsoft.com> - 0.19.0-4
- Initial CBL-Mariner import from Fedora 35 (license: MIT).
- License verified
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.19.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jun 15 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 0.19.0-2
- Use cmake3 on el7
* Sun Jun 13 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 0.19.0-1
- Initial package

Просмотреть файл

@ -7557,6 +7557,16 @@
}
}
},
{
"component": {
"type": "other",
"other": {
"name": "rook",
"version": "1.6.2",
"downloadUrl": "https://github.com/rook/rook/archive/refs/tags/v1.6.2.tar.gz"
}
}
},
{
"component": {
"type": "other",
@ -8858,6 +8868,16 @@
}
}
},
{
"component": {
"type": "other",
"other": {
"name": "tini",
"version": "0.19.0",
"downloadUrl": "https://github.com/krallin/tini/archive/v0.19.0/tini-0.19.0.tar.gz"
}
}
},
{
"component": {
"type": "other",