diff --git a/_servicedata b/_servicedata index bbe41df..2647081 100644 --- a/_servicedata +++ b/_servicedata @@ -1,4 +1,4 @@ https://github.com/SUSE/connect-ng.git - 19e761bb2dee186b48f7f9318bdbaba8a6e6ad4d \ No newline at end of file + 64b80e975c8dc30cdcfc9d42787e4cae229e0a3c \ No newline at end of file diff --git a/connect-ng-0.0.3~git9.19e761b.tar.xz b/connect-ng-0.0.3~git9.19e761b.tar.xz deleted file mode 100644 index 90cd66c..0000000 --- a/connect-ng-0.0.3~git9.19e761b.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:188260d43c9eb0c28a792a9bfa178314026718796685deceaeff6ab7acd48592 -size 385912 diff --git a/connect-ng-0.0.4~git0.64b80e9.tar.xz b/connect-ng-0.0.4~git0.64b80e9.tar.xz new file mode 100644 index 0000000..afbc6a7 --- /dev/null +++ b/connect-ng-0.0.4~git0.64b80e9.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b70c71eedc3cb4aa3b55f0b8b7683144c0d90fa9891a7e21adf57b8fb70b17f1 +size 593064 diff --git a/suseconnect-ng.changes b/suseconnect-ng.changes index 2070cce..9808586 100644 --- a/suseconnect-ng.changes +++ b/suseconnect-ng.changes @@ -1,3 +1,115 @@ +------------------------------------------------------------------- +Wed Dec 01 14:31:18 UTC 2021 - jan.suse@zerebecki.de + +- Update to version 0.0.4~git0.64b80e9: + * Makefile: also run tests under ./suseconnect + * Switch yast-test to upstream + * Removed examples leftover from the POC phase + * Add HA repo to get rubygem(ffi) before it's in the baseproduct + * Add versions and lib deps + * Post-review cleanup + * Package libsuseconnect and shim + * Align with yast-registration tests + * Fix SSLCertificate mixins + * Fix logger crash and restore mixin + * Removed TODO item handled separately + * Enable debug early + * Add package search for YaST's "Online Search" + * Clarify Repo fields + * Export UpdateSystem() + * Export SystemActivations() + * Add migration functions + * Fix handling of IsBase attribute + * Add missing JSONError + * Add list_installer_updates + * Add "update certificates" + * Add more specific errors + * Improved SSL error handling + * Init defaults for get_config() + * Improved debug logging + * Fix error scopes + * Fix ApiError interface + * Added DEFAULT_CREDENTIALS_DIR const + * get proxy credentials from curlrc + * Forward logs from Connect to YaST + * Separate Info logger + * Added more TODO items + * Simplify Config object init + * Map Repo and Config fields to JSON + * Add remaining fields listed in addon.rb + * Add product_type field to product + * First working yast part + * Add relative path support to credentials + * Add steps to test from yast + * Add yast create_credentials_file + * Add CreateCredentials() method + * Add yast credentials() + * Add yast announce_system - WIP + * Add MergeJSON method for Config + * Add readme for YaST integration + * Fix usage text + * Add missing -g argument + * Fix OBS CI, it now requires target + * Add manpage placeholder + * Simplify packageWanted() + * Add sorting and grouping options + * Add local repo search and duplicate removal + * Add basic online package search + * Update rpm spec for zypper-search-packages-plugin + * Add CLI for zypper search-packages plugin + * Optional base product in package search + * Use DefaultTransport defaults + client timeout + * Extract ReleaseType from zypper output + * Print failed command on zypper error like the Ruby + * Add package_search API wrapper + * Allow de-register/de-activate a single product + * Improve docstring for the Status struct + * Always show subscription information if available + * Refactor getStatuses() to ease testing + * Add SUMA/Uyuni check + * Fix status output order to follow zypper product xml + * Change GetExtensionsList() to reduce calls + * Add the subscription name to status output + * allow --instance-data together with --regcode + * Post-review cleanups + * Add selfupdate functionality + * Handle Leap -> SLES migration scenario + * Add offline migrations support + * Change parse error string and add block comment + * Add disabling of obsolete repos + * Add zypper repos listing + * Add interactive migration selection + * Allow loading Config from any path + * Remove dummy flag + * Add snapper support + * Add zypper backup/restore functions + * Use connect.StringSet + * Add --query option + * Add product and break-my-system options + * Add note on conflicting flags + * Check for flag contradictions + * Add echoing output of executed commands to console + * Move product printing out of checkProducts() + * Split --debug and --verbose + * Add zypper dist-upgrade part + * Split migration code + * Extract migration sorting + * Expose migration(Add|Remove)Service() functions + * Trap SIGINT/SIGTERM + * Add zypper.RefreshRepos() + * Expose client.upgradeProduct() + * Add --root parameter + * Add --migration N parameter + * Prepare available migrations + * Add API call to get online migration paths + * Add system products checking + * Add quiet logger for easier --quiet handling + * Add zypper migration plugin implementation. + * Export toTriplet and installReleasePackage + * Add basic string set implementation + * Remove quiet param from execute() and zypperRun() + * Simplify mocking of external commands + ------------------------------------------------------------------- Fri Aug 27 22:46:39 UTC 2021 - jzerebecki@suse.com diff --git a/suseconnect-ng.spec b/suseconnect-ng.spec index f0b8df2..7710b38 100644 --- a/suseconnect-ng.spec +++ b/suseconnect-ng.spec @@ -20,7 +20,7 @@ %global import_path %{provider_prefix} Name: suseconnect-ng -Version: 0.0.3~git9.19e761b +Version: 0.0.4~git0.64b80e9 Release: 0 URL: https://github.com/SUSE/connect-ng License: LGPL-2.1-or-later @@ -30,11 +30,14 @@ Source: connect-ng-%{version}.tar.xz Source1: %name-rpmlintrc BuildRequires: go >= 1.16 BuildRequires: golang-packaging +BuildRequires: ruby-devel BuildRequires: zypper -Obsoletes: SUSEConnect -Provides: SUSEConnect -Obsoletes: zypper-migration-plugin -Provides: zypper-migration-plugin +Obsoletes: SUSEConnect < 0.3.99 +Provides: SUSEConnect = 0.3.99 +Obsoletes: zypper-migration-plugin < 0.99 +Provides: zypper-migration-plugin = 0.99 +Obsoletes: zypper-search-packages-plugin < 0.99 +Provides: zypper-search-packages-plugin = 0.99 %if 0%{?fedora} || 0%{?rhel} || 0%{?centos_version} Requires: ca-certificates %else @@ -67,6 +70,25 @@ replaced SUSEConnect. %{go_nostrip} %{go_provides} +%package -n libsuseconnect +Summary: C interface to suseconnect-ng. +Group: System/Management +# the CLI is not used by libsuseconnect but it has the same dependencies and it's easier to keep one list above +Requires: suseconnect-ng + +%description -n libsuseconnect +This package contains library which provides C interface to selected +suseconnect-ng functions. + +%package -n suseconnect-ruby-bindings +Summary: Ruby bindings for libsuseconnect library. +Group: System/Management +Requires: libsuseconnect +Requires: rubygem(ffi) + +%description -n suseconnect-ruby-bindings +This package provides bindings needed to use libsuseconnect from Ruby scripts. + %prep %setup -q -n connect-ng-%{version} @@ -77,30 +99,34 @@ echo %{version} > internal/connect/version.txt find %_builddir/.. go list all %gobuild suseconnect -# only to test that it compiles, nothing from it is installed for now -make -C %_builddir/go/src/github.com/SUSE/connect-ng build-so-example +mkdir -p %_builddir/go/lib +go build -v -buildmode=c-shared -o %_builddir/go/lib/libsuseconnect.so %import_path/libsuseconnect find %_builddir/.. %install %goinstall ln -s suseconnect %buildroot/%_bindir/SUSEConnect -mkdir -p %buildroot/%_sbindir %buildroot/usr/lib/zypper/commands -ln -s ../bin/suseconnect %buildroot/%_sbindir/SUSEConnect +install -d -m0755 %buildroot/%_sbindir %buildroot/usr/lib/zypper/commands +ln -s %_bindir/suseconnect %buildroot/%_sbindir/SUSEConnect ln -s %_bindir/suseconnect %buildroot/usr/lib/zypper/commands/zypper-migration -#TODO package ruby module -#cp /home/abuild/rpmbuild/BUILD/go/src/github.com/SUSE/connect-ng/ext/libsuseconnect.so %_libdir/libsuseconnect.so +ln -s %_bindir/suseconnect %buildroot/usr/lib/zypper/commands/zypper-search-packages +install -D -m0755 %_builddir/go/lib/libsuseconnect.so %buildroot/%_libdir/libsuseconnect.so +install -d -m0755 %buildroot/%_libdir/ruby/vendor_ruby/%rb_ver +cp -r %_builddir/go/src/%import_path/yast/lib/* %buildroot/%_libdir/ruby/vendor_ruby/%rb_ver #TODO man pages not yet available in source, these are the names frome the ruby version #/usr/share/man/man5/SUSEConnect.5.gz #/usr/share/man/man8/SUSEConnect.8.gz #/usr/share/man/man8/zypper-migration.8.gz +#/usr/share/man/man8/zypper-search-packages.8.gz find %_builddir/.. # we currently do not ship the source for any go module rm -rf %buildroot/usr/share/go %check -%gotest github.com/SUSE/connect-ng/internal/connect -make -C %_builddir/go/src/github.com/SUSE/connect-ng gofmt +%gotest -v %import_path/internal/connect +%gotest -v %import_path/suseconnect +make -C %_builddir/go/src/%import_path gofmt %files %license LICENSE LICENSE.LGPL @@ -110,4 +136,12 @@ make -C %_builddir/go/src/github.com/SUSE/connect-ng gofmt %_sbindir/SUSEConnect /usr/lib/zypper/commands +%files -n libsuseconnect +%license LICENSE LICENSE.LGPL +%_libdir/libsuseconnect.so + +%files -n suseconnect-ruby-bindings +%doc yast/README.md +%_libdir/ruby/vendor_ruby/%rb_ver/suse + %changelog