Hello community, here is the log from the commit of package sesdev for openSUSE:Factory checked in at 2020-12-11 20:16:34 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/sesdev (Old) and /work/SRC/openSUSE:Factory/.sesdev.new.2328 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sesdev" Fri Dec 11 20:16:34 2020 rev:19 rq:854638 version:1.11.0+1607012263.g73dea97 Changes: -------- --- /work/SRC/openSUSE:Factory/sesdev/sesdev.changes 2020-10-24 15:18:59.428319467 +0200 +++ /work/SRC/openSUSE:Factory/.sesdev.new.2328/sesdev.changes 2020-12-11 20:16:35.952656745 +0100 @@ -1,0 +2,24 @@ +Thu Dec 3 16:18:07 UTC 2020 - Nathan Cutler <[email protected]> + +- Update to 1.11.0+1607012263.g73dea97: + + upstream 1.11.0 release (2020-12-03) + * Implement --rgw-ssl option for deploying RGWs with SSL enabled (PR #557) + * zypper: add repos when needed (PR #558) + * ses7: use product container image when --product given (PR #561) + * Handle image_paths_product, image_paths_devel overrides in config.yaml (PR #564) + * seslib/constant.py: add SES7 Update repo (PR #565) + +------------------------------------------------------------------- +Fri Nov 13 16:04:04 UTC 2020 - Nathan Cutler <[email protected]> + +- Update to 1.10.0+1605283435.g8e610fb: + + upstream 1.10.0 release (2020-11-13) + * contrib/standalone.sh: add --fqdn test cases (PR #523) + * Implement --no-apparmor option (PR #543) + * Expose Ceph Dashboard on CaaSP SES deployment (PR #553) + * doc/README.md: add common pitfall "Failed to intialize libnetcontrol" (PR #554) + * spec: pin sesdev-qa version to sesdev version (PR #551) + * constant,zypper: use download.nue.suse.com instead of download.suse.de (PR #552) + * deployment_day_2.sh: create CephFS using documented procedure (PR #555) + +------------------------------------------------------------------- Old: ---- sesdev-1.9.1+1603459604.g8c9ed2c.tar.gz New: ---- sesdev-1.11.0+1607012263.g73dea97.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ sesdev.spec ++++++ --- /var/tmp/diff_new_pack.UgiObM/_old 2020-12-11 20:16:36.788657092 +0100 +++ /var/tmp/diff_new_pack.UgiObM/_new 2020-12-11 20:16:36.796657095 +0100 @@ -16,7 +16,7 @@ # Name: sesdev -Version: 1.9.1+1603459604.g8c9ed2c +Version: 1.11.0+1607012263.g73dea97 Release: 1%{?dist} Summary: CLI tool to deploy and manage SES clusters License: MIT @@ -54,7 +54,7 @@ Requires: python3-setuptools Requires: vagrant > 2.2.2 Requires: vagrant-libvirt -Requires: sesdev-qa +Requires: sesdev-qa = %{version}-%{release} %if 0%{?el8} || 0%{?fedora} %{?python_disable_dependency_generator} ++++++ sesdev-1.9.1+1603459604.g8c9ed2c.tar.gz -> sesdev-1.11.0+1607012263.g73dea97.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/CHANGELOG.md new/sesdev-1.11.0+1607012263.g73dea97/CHANGELOG.md --- old/sesdev-1.9.1+1603459604.g8c9ed2c/CHANGELOG.md 2020-10-23 15:26:43.976071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/CHANGELOG.md 2020-12-03 17:17:43.807857359 +0100 @@ -7,6 +7,34 @@ ## [Unreleased] +## [1.11.0] - 2020-12-03 + +### Added +- Implement --rgw-ssl option for deploying RGWs with SSL enabled (PR #557) + +### Fixed +- zypper: add repos when needed (PR #558) +- ses7: use product container image when --product given (PR #561) +- Handle image_paths_product, image_paths_devel overrides in config.yaml (PR #564) + +### Changed +- seslib/constant.py: add SES7 Update repo (PR #565) + +## [1.10.0] - 2020-11-13 + +### Added +- contrib/standalone.sh: add --fqdn test cases (PR #523) +- Implement --no-apparmor option (PR #543) +- Expose Ceph Dashboard on CaaSP SES deployment (PR #553) +- doc/README.md: add common pitfall "Failed to intialize libnetcontrol" + (PR #554) + +### Changed +- spec: pin sesdev-qa version to sesdev version (PR #551) +- constant,zypper: use download.nue.suse.com instead of download.suse.de + (PR #552) +- deployment_day_2.sh: create CephFS using documented procedure (PR #555) + ## [1.9.1] - 2020-10-23 ### Fixed @@ -595,7 +623,9 @@ - Minimal README with a few usage instructions. - The CHANGELOG file. -[unreleased]: https://github.com/SUSE/sesdev/compare/v1.9.1...HEAD +[unreleased]: https://github.com/SUSE/sesdev/compare/v1.11.0...HEAD +[1.11.0]: https://github.com/SUSE/sesdev/releases/tag/v1.11.0 +[1.10.0]: https://github.com/SUSE/sesdev/releases/tag/v1.10.0 [1.9.1]: https://github.com/SUSE/sesdev/releases/tag/v1.9.1 [1.9.0]: https://github.com/SUSE/sesdev/releases/tag/v1.9.0 [1.8.0]: https://github.com/SUSE/sesdev/releases/tag/v1.8.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/README.md new/sesdev-1.11.0+1607012263.g73dea97/README.md --- old/sesdev-1.9.1+1603459604.g8c9ed2c/README.md 2020-10-23 15:26:43.976071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/README.md 2020-12-03 17:17:43.807857359 +0100 @@ -95,6 +95,7 @@ * [mount.nfs: Unknown error 521](#mountnfs-unknown-error-521) * [Problems accessing dashboard on remote sesdev](#problems-accessing-dashboard-on-remote-sesdev) * [Error creating IPv6 cluster](#error-creating-ipv6-cluster) + * [Failed to initialize libnetcontrol](#failed-to-initialize-libnetcontrol) * [Contributing](#contributing) @@ -112,6 +113,10 @@ #### Install KVM/QEMU and Libvirt +First, if on SUSE Linux Enterprise, make sure you have the Server Applications +Module available on the system. (Links to internal repos are available +[here](https://confluence.suse.com/display/applications/Vagrant+and+Vagrant+Boxes+for+openSUSE+and+SLE#VagrantandVagrantBoxesforopenSUSEandSLE-openSUSELeap15.2andSLE15SP2).) + Run the following commands as root: ``` @@ -146,7 +151,8 @@ repos. Just install the ``vagrant`` and ``vagrant-libvirt`` packages. For SLE-15-SP2, the packages are available via the -[SUSE Package Hub](https://packagehub.suse.com/). +[SUSE Package Hub](https://packagehub.suse.com/). (Links to internal repos are available +[here](https://confluence.suse.com/display/applications/Vagrant+and+Vagrant+Boxes+for+openSUSE+and+SLE#VagrantandVagrantBoxesforopenSUSEandSLE-openSUSELeap15.2andSLE15SP2).) ##### Install Vagrant on openSUSE Leap 15.1, SLE-15-SP1 @@ -638,16 +644,16 @@ In Ceph versions "octopus" and newer, the Ceph daemons run inside containers. When the cluster is bootstrapped, a container image is downloaded from a remote -registry. The default image paths are set by the internal dictionary -`IMAGE_PATHS` in `seslib/__init__.py`. You can specify a different image path -using the `--image-path` option to, e.g., `sesdev create octopus`. +registry. The default image paths are set by the internal dictionaries +`IMAGE_PATHS_DEVEL` and `IMAGE_PATHS_PRODUCT`. You can specify a different +image path using the `--image-path` option to e.g., `sesdev create octopus`. If you would like to permanently specify a different image path for one or more Ceph versions, you can override the defaults by adding a stanza like the following to your `~/.sesdev/config.yaml`: ``` -image_paths: +image_paths_devel: octopus: 'registry.opensuse.org/filesystems/ceph/octopus/images/ceph/ceph' ``` @@ -696,7 +702,7 @@ leap-15.2: - 'https://download.opensuse.org/repositories/filesystems:/ceph:/octopus/openSUSE_Leap_15.2' - '96!https://download.opensuse.org/repositories/filesystems:/ceph:/octopus:/upstream/openSUSE_Leap_15.2' -image_paths: +image_paths_devel: octopus: 'registry.opensuse.org/filesystems/ceph/octopus/upstream/images/ceph/ceph' ``` @@ -740,7 +746,7 @@ - 'http://download.suse.de/ibs/SUSE:/SLE-15-SP2:/Update:/Products:/SES7/images/repo/SUSE-Enterprise-Storage-7-POOL-x86_64-Media1/' - 'http://download.suse.de/ibs/Devel:/Storage:/7.0/images/repo/SUSE-Enterprise-Storage-7-POOL-x86_64-Media1/' - '96!http://download.suse.de/ibs/Devel:/Storage:/7.0:/CR/SLE_15_SP2/' -image_paths: +image_paths_devel: ses7: 'registry.suse.de/devel/storage/7.0/cr/containers/ses/7/ceph/ceph' ``` @@ -1429,11 +1435,55 @@ Where `<if>` is the network interface from the error, or `all` if you want to apply the config to all network interfaces. +### Failed to initialize libnetcontrol + +#### Symptom + +After starting `libvirtd.service`, `systemctl status libvirtd.service` says + +``` +Failed to intialize libnetcontrol. Management of interface devices is disabled +``` + +(Yes, it really says "intialize" instead of "initialize".) + +#### Analysis + +At present, `libvirtd` works together well with the `wicked` network management +system. It does not work so well with `NetworkManager`, so if you see this +message it probably means you are using `NetworkManager`. + +These two - `wicked` and `NetworkManager` - are mutually exclusive: you must +have one or the other, and you cannot have both at the same time. + +#### Resolution + +The resolution is to disable `NetworkManager` by enabling `wicked` and +configuring it properly (i.e. so you don't experience any loss in network +connectivity). + +Refer to your operating system's documentation to learn how to configure +networking with `wicked`. For example, for openSUSE Leap 15.2 you can refer +to Reference -> System -> Basic Networking: + +https://doc.opensuse.org/documentation/leap/reference/html/book-opensuse-reference/cha-network.html + +Once you have `wicked` running without any loss of network connectivity, proceed +to restart libvirtd: + +``` +# systemctl restart libvirtd.service +``` + +After this, the `Failed to intialize libnetcontrol` message should no longer +appear in the journal (log) of `libvirtd.service`. + ## Contributing -If you would like to submit a patch to sesdev, please read the file -`CONTRIBUTING.rst` in the top-level directory of the source code distribution. -It can be found on-line here: +If you would like to submit a patch to sesdev, or otherwise participate in the +sesdev community, please read the files `CONTRIBUTING.rst` and +`CODE_OF_CONDUCT.md` in the top-level directory of the source code +distribution. These files can also be found on-line: https://github.com/SUSE/sesdev/blob/master/CONTRIBUTING.rst - +https://github.com/SUSE/sesdev/blob/master/CODE_OF_CONDUCT.md diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/contrib/standalone.sh new/sesdev-1.11.0+1607012263.g73dea97/contrib/standalone.sh --- old/sesdev-1.9.1+1603459604.g8c9ed2c/contrib/standalone.sh 2020-10-23 15:26:43.976071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/contrib/standalone.sh 2020-12-03 17:17:43.807857359 +0100 @@ -292,7 +292,7 @@ run_cmd sesdev --verbose qa-test ses6-1node run_cmd sesdev --verbose add-repo --update ses6-1node run_cmd sesdev --verbose destroy --non-interactive ses6-1node - run_cmd sesdev --verbose create ses6 --non-interactive ses6-4node + run_cmd sesdev --verbose create ses6 --non-interactive --fqdn ses6-4node run_cmd sesdev --verbose qa-test ses6-4node run_cmd sesdev --verbose supportconfig ses6-4node node1 rm -f scc* @@ -311,7 +311,7 @@ run_cmd sesdev --verbose create octopus --non-interactive "${CEPH_SALT_OPTIONS[@]}" --single-node octopus-1node run_cmd sesdev --verbose qa-test octopus-1node run_cmd sesdev --verbose destroy --non-interactive octopus-1node - run_cmd sesdev --verbose create octopus --non-interactive "${CEPH_SALT_OPTIONS[@]}" octopus-4node + run_cmd sesdev --verbose create octopus --non-interactive "${CEPH_SALT_OPTIONS[@]}" --fqdn octopus-4node run_cmd sesdev --verbose qa-test octopus-4node run_cmd sesdev status octopus-4node run_cmd sesdev --verbose destroy --non-interactive octopus-4node @@ -328,9 +328,12 @@ run_cmd test "$(sesdev show ses7-mini --format json --nodes-with-role bootstrap | jq -r '.[0]')" = "master" run_cmd sesdev --verbose qa-test ses7-mini run_cmd sesdev --verbose destroy --non-interactive ses7-mini - run_cmd sesdev --verbose create ses7 --non-interactive "${CEPH_SALT_OPTIONS[@]}" --single-node ses7-1node - run_cmd sesdev --verbose qa-test ses7-1node - run_cmd sesdev --verbose destroy --non-interactive ses7-1node + run_cmd sesdev --verbose create ses7 --non-interactive "${CEPH_SALT_OPTIONS[@]}" --single-node --fqdn ses7-1node-fqdn + run_cmd sesdev --verbose qa-test ses7-1node-fqdn + run_cmd sesdev --verbose destroy --non-interactive ses7-1node-fqdn + run_cmd sesdev --verbose create ses7 --non-interactive "${CEPH_SALT_OPTIONS[@]}" --single-node --product ses7-1node-product + run_cmd sesdev --verbose qa-test ses7-1node-product + run_cmd sesdev --verbose destroy --non-interactive ses7-1node-product run_cmd sesdev --verbose create ses7 --non-interactive "${CEPH_SALT_OPTIONS[@]}" ses7-4node run_cmd sesdev --verbose qa-test ses7-4node run_cmd sesdev --verbose supportconfig ses7-4node node1 @@ -354,7 +357,7 @@ run_cmd sesdev --verbose create pacific --non-interactive "${CEPH_SALT_OPTIONS[@]}" --single-node --ipv6 pacific-1node-ipv6 run_cmd sesdev --verbose qa-test pacific-1node-ipv6 run_cmd sesdev --verbose destroy --non-interactive pacific-1node-ipv6 - run_cmd sesdev --verbose create pacific --non-interactive "${CEPH_SALT_OPTIONS[@]}" pacific-4node + run_cmd sesdev --verbose create pacific --non-interactive "${CEPH_SALT_OPTIONS[@]}" --fqdn pacific-4node run_cmd sesdev --verbose qa-test pacific-4node run_cmd sesdev --verbose destroy --non-interactive pacific-4node fi diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/sesdev/__init__.py new/sesdev-1.11.0+1607012263.g73dea97/sesdev/__init__.py --- old/sesdev-1.9.1+1603459604.g8c9ed2c/sesdev/__init__.py 2020-10-23 15:26:43.980071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/sesdev/__init__.py 2020-12-03 17:17:43.807857359 +0100 @@ -164,7 +164,11 @@ click.option('--ssd', is_flag=True, default=False, help='On VMS with additional disks, make one disk non-rotational'), click.option('--fqdn', is_flag=True, default=False, - help='Make \'hostname\' command return FQDN') + help='Make \'hostname\' command return FQDN'), + click.option('--apparmor/--no-apparmor', is_flag=True, default=True, + help='Enable/disable AppArmor'), + click.option('--rgw-ssl/--no-rgw-ssl', is_flag=True, default=False, + help='Deploy RGW with SSL'), ] return _decorator_composer(click_options, func) @@ -337,6 +341,7 @@ def _gen_settings_dict( version, + apparmor=None, bluestore=None, ceph_branch=None, ceph_repo=None, @@ -368,6 +373,7 @@ ram=None, repo=None, repo_priority=None, + rgw_ssl=None, roles=None, salt=None, scc_pass=None, @@ -615,6 +621,14 @@ if msgr2_prefer_secure: settings_dict['msgr2_prefer_secure'] = True + if apparmor is not None: + settings_dict['apparmor'] = apparmor + + if rgw_ssl is not None: + if rgw_ssl and version not in ['nautilus', 'ses6']: + raise OptionNotSupportedInVersion('--rgw-ssl', version) + settings_dict['rgw_ssl'] = rgw_ssl + return settings_dict diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/sesdev.spec new/sesdev-1.11.0+1607012263.g73dea97/sesdev.spec --- old/sesdev-1.9.1+1603459604.g8c9ed2c/sesdev.spec 2020-10-23 15:26:44.304071041 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/sesdev.spec 2020-12-03 17:17:43.995858850 +0100 @@ -16,7 +16,7 @@ # Name: sesdev -Version: 1.9.1+1603459604.g8c9ed2c +Version: 1.11.0+1607012263.g73dea97 Release: 1%{?dist} Summary: CLI tool to deploy and manage SES clusters License: MIT @@ -54,7 +54,7 @@ Requires: python3-setuptools Requires: vagrant > 2.2.2 Requires: vagrant-libvirt -Requires: sesdev-qa +Requires: sesdev-qa = %{version}-%{release} %if 0%{?el8} || 0%{?fedora} %{?python_disable_dependency_generator} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/constant.py new/sesdev-1.11.0+1607012263.g73dea97/seslib/constant.py --- old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/constant.py 2020-10-23 15:26:43.980071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/seslib/constant.py 2020-12-03 17:17:43.807857359 +0100 @@ -18,12 +18,46 @@ DEBUG = False - IMAGE_PATHS = { + DEVELOPER_TOOLS_REPOS = { + 'sles-15-sp1': { + 'dev-tools': 'http://dist.suse.de/ibs/SUSE/Products/' + 'SLE-Module-Development-Tools/15-SP1/x86_64/product/', + 'dev-tools-update': 'http://dist.suse.de/ibs/SUSE/Products/' + 'SLE-Module-Development-Tools/15-SP1/x86_64/product/', + }, + 'sles-15-sp2': { + 'dev-tools': 'http://download.nue.suse.com/ibs/SUSE/Products/' + 'SLE-Module-Development-Tools/15-SP2/x86_64/product/', + 'dev-tools-update': 'http://download.nue.suse.com/ibs/SUSE/Updates/' + 'SLE-Module-Development-Tools/15-SP2/x86_64/update/', + }, + } + + IMAGE_PATHS_DEVEL = { 'ses7': 'registry.suse.de/devel/storage/7.0/containers/ses/7/ceph/ceph', 'octopus': 'registry.opensuse.org/filesystems/ceph/octopus/images/ceph/ceph', 'pacific': 'registry.opensuse.org/filesystems/ceph/pacific/images/ceph/ceph', } + IMAGE_PATHS_PRODUCT = { + 'ses7': 'registry.suse.com/ses/7/ceph/ceph', + } + + INTERNAL_MEDIA_REPOS = { + 'ses5': { + 'ses5-internal-media': 'http://download.suse.de/ibs/Devel:/Storage:/5.0/images/repo/' + 'SUSE-Enterprise-Storage-5-POOL-Internal-x86_64-Media/', + }, + 'ses6': { + 'ses6-internal-media': 'http://download.suse.de/ibs/Devel:/Storage:/6.0/images/repo/' + 'SUSE-Enterprise-Storage-6-POOL-Internal-x86_64-Media/', + }, + 'ses7': { + 'ses7-internal-media': 'http://download.suse.de/ibs/Devel:/Storage:/7.0/images/repo/' + 'SUSE-Enterprise-Storage-7-POOL-Internal-x86_64-Media/', + }, + } + JINJA_ENV = Environment(loader=PackageLoader('seslib', 'templates'), trim_blocks=True) LOGFILE = None @@ -86,64 +120,64 @@ 'Appliances:/Images:/openSUSE-Tumbleweed/openSUSE_Tumbleweed/' 'Tumbleweed.x86_64-libvirt.box', 'opensuse/Tumbleweed.x86_64': 'opensuse/Tumbleweed.x86_64', - 'sles-15-sp1': 'http://download.suse.de/ibs/Virtualization:/Vagrant:/SLE-15-SP1/images/' - 'SLES15-SP1-Vagrant.x86_64-libvirt.box', - 'sles-12-sp3': 'http://download.suse.de/ibs/Devel:/Storage:/5.0/vagrant/' + 'sles-15-sp1': 'http://download.nue.suse.com/ibs/Virtualization:/Vagrant:/SLE-15-SP1/' + 'images/SLES15-SP1-Vagrant.x86_64-libvirt.box', + 'sles-12-sp3': 'http://download.nue.suse.com/ibs/Devel:/Storage:/5.0/vagrant/' 'sle12sp3.x86_64.box', 'leap-15.2': 'https://download.opensuse.org/repositories/Virtualization:/' 'Appliances:/Images:/openSUSE-Leap-15.2/images/' 'Leap-15.2.x86_64-libvirt.box', 'opensuse/Leap-15.2.x86_64': 'opensuse/Leap-15.2.x86_64', - 'sles-15-sp2': 'http://download.suse.de/ibs/Virtualization:/Vagrant:/SLE-15-SP2/images/' - 'SLES15-SP2-Vagrant.x86_64-libvirt.box', + 'sles-15-sp2': 'http://download.nue.suse.com/ibs/Virtualization:/Vagrant:/SLE-15-SP2/' + 'images/SLES15-SP2-Vagrant.x86_64-libvirt.box', 'generic/ubuntu1804': 'generic/ubuntu1804', } - OS_PACKAGE_MANAGER_MAPPING = { - 'sles-12-sp3': 'zypper', - 'sles-15-sp1': 'zypper', - 'sles-15-sp2': 'zypper', - 'leap-15.1': 'zypper', - 'leap-15.2': 'zypper', - 'tumbleweed': 'zypper', - 'ubuntu-bionic': 'apt', - } - OS_MAKECHECK_REPOS = { 'sles-12-sp3': { 'sdk': 'http://dist.suse.de/ibs/SUSE/Products/SLE-SDK/12-SP3/x86_64/product/', 'sdk-update': 'http://dist.suse.de/ibs/SUSE/Updates/SLE-SDK/12-SP3/x86_64/update/', }, 'sles-15-sp1': { - 'desktop-apps': 'http://download.suse.de/ibs/SUSE/Products/' + 'desktop-apps': 'http://download.nue.suse.com/ibs/SUSE/Products/' 'SLE-Module-Desktop-Applications/15-SP1/x86_64/product/', - 'desktop-apps-update': 'http://download.suse.de/ibs/SUSE/Updates/' + 'desktop-apps-update': 'http://download.nue.suse.com/ibs/SUSE/Updates/' 'SLE-Module-Desktop-Applications/15-SP1/x86_64/update/', 'dev-tools': 'http://dist.suse.de/ibs/SUSE/Products/' 'SLE-Module-Development-Tools/15-SP1/x86_64/product/', 'dev-tools-update': 'http://dist.suse.de/ibs/SUSE/Products/' 'SLE-Module-Development-Tools/15-SP1/x86_64/product/', - 'workstation': 'http://download.suse.de/ibs/SUSE:/SLE-15-SP1:/GA:/TEST/images/repo/' - 'SLE-15-SP1-Product-WE-POOL-x86_64-Media1/', - 'workstation-update': 'http://download.suse.de/ibs/SUSE/Updates/SLE-Product-WE/15-SP1/' - 'x86_64/update/', + 'workstation': 'http://download.nue.suse.com/ibs/SUSE:/SLE-15-SP1:/GA:/TEST/images/' + 'repo/SLE-15-SP1-Product-WE-POOL-x86_64-Media1/', + 'workstation-update': 'http://download.nue.suse.com/ibs/SUSE/Updates/SLE-Product-WE/' + '15-SP1/x86_64/update/', }, 'sles-15-sp2': { - 'desktop-apps': 'http://download.suse.de/ibs/SUSE/Products/' + 'desktop-apps': 'http://download.nue.suse.com/ibs/SUSE/Products/' 'SLE-Module-Desktop-Applications/15-SP2/x86_64/product/', - 'desktop-apps-update': 'http://download.suse.de/ibs/SUSE/Updates/' + 'desktop-apps-update': 'http://download.nue.suse.com/ibs/SUSE/Updates/' 'SLE-Module-Desktop-Applications/15-SP2/x86_64/update/', - 'dev-tools': 'http://download.suse.de/ibs/SUSE/Products/SLE-Module-Development-Tools/' - '15-SP2/x86_64/product/', - 'dev-tools-update': 'http://download.suse.de/ibs/SUSE/Updates/' + 'dev-tools': 'http://download.nue.suse.com/ibs/SUSE/Products/' + 'SLE-Module-Development-Tools/15-SP2/x86_64/product/', + 'dev-tools-update': 'http://download.nue.suse.com/ibs/SUSE/Updates/' 'SLE-Module-Development-Tools/15-SP2/x86_64/update/', - 'workstation': 'http://download.suse.de/ibs/SUSE:/SLE-15-SP2:/GA:/TEST/images/repo/' - 'SLE-15-SP2-Product-WE-POOL-x86_64-Media1/', - 'workstation-update': 'http://download.suse.de/ibs/SUSE/Updates/SLE-Product-WE/15-SP2/' - 'x86_64/update/', + 'workstation': 'http://download.nue.suse.com/ibs/SUSE:/SLE-15-SP2:/GA:/TEST/images/' + 'repo/SLE-15-SP2-Product-WE-POOL-x86_64-Media1/', + 'workstation-update': 'http://download.nue.suse.com/ibs/SUSE/Updates/SLE-Product-WE/' + '15-SP2/x86_64/update/', }, } + OS_PACKAGE_MANAGER_MAPPING = { + 'sles-12-sp3': 'zypper', + 'sles-15-sp1': 'zypper', + 'sles-15-sp2': 'zypper', + 'leap-15.1': 'zypper', + 'leap-15.2': 'zypper', + 'tumbleweed': 'zypper', + 'ubuntu-bionic': 'apt', + } + OS_REPOS = { 'sles-12-sp3': { 'base': 'http://dist.suse.de/ibs/SUSE/Products/SLE-SERVER/12-SP3/x86_64/product/', @@ -156,32 +190,34 @@ 'product/', 'product-update': 'http://dist.suse.de/ibs/SUSE/Updates/SLE-Product-SLES/15-SP1/' 'x86_64/update/', - 'base': 'http://download.suse.de/ibs/SUSE/Products/SLE-Module-Basesystem/15-SP1/' + 'base': 'http://download.nue.suse.com/ibs/SUSE/Products/SLE-Module-Basesystem/15-SP1/' 'x86_64/product/', - 'update': 'http://download.suse.de/ibs/SUSE/Updates/SLE-Module-Basesystem/15-SP1/' + 'update': 'http://download.nue.suse.com/ibs/SUSE/Updates/SLE-Module-Basesystem/15-SP1/' 'x86_64/update/', - 'server-apps': 'http://download.suse.de/ibs/SUSE/Products/' + 'server-apps': 'http://download.nue.suse.com/ibs/SUSE/Products/' 'SLE-Module-Server-Applications/15-SP1/x86_64/product/', - 'server-apps-update': 'http://download.suse.de/ibs/SUSE/Updates/' + 'server-apps-update': 'http://download.nue.suse.com/ibs/SUSE/Updates/' 'SLE-Module-Server-Applications/15-SP1/x86_64/update/', - 'storage': 'http://download.suse.de/ibs/SUSE/Products/Storage/6/x86_64/product/', - 'storage-update': 'http://download.suse.de/ibs/SUSE/Updates/Storage/6/x86_64/update/' + 'storage': 'http://download.nue.suse.com/ibs/SUSE/Products/Storage/6/x86_64/product/', + 'storage-update': 'http://download.nue.suse.com/ibs/SUSE/Updates/Storage/6/x86_64/' + 'update/', }, 'sles-15-sp2': { 'product': 'http://dist.suse.de/ibs/SUSE/Products/SLE-Product-SLES/15-SP2/x86_64/' 'product/', 'product-update': 'http://dist.suse.de/ibs/SUSE/Updates/SLE-Product-SLES/15-SP2/' 'x86_64/update/', - 'base': 'http://download.suse.de/ibs/SUSE/Products/SLE-Module-Basesystem/15-SP2/' + 'base': 'http://download.nue.suse.com/ibs/SUSE/Products/SLE-Module-Basesystem/15-SP2/' 'x86_64/product/', - 'update': 'http://download.suse.de/ibs/SUSE/Updates/SLE-Module-Basesystem/15-SP2/' + 'update': 'http://download.nue.suse.com/ibs/SUSE/Updates/SLE-Module-Basesystem/15-SP2/' 'x86_64/update/', - 'server-apps': 'http://download.suse.de/ibs/SUSE/Products/' + 'server-apps': 'http://download.nue.suse.com/ibs/SUSE/Products/' 'SLE-Module-Server-Applications/15-SP2/x86_64/product/', - 'server-apps-update': 'http://download.suse.de/ibs/SUSE/Updates/' + 'server-apps-update': 'http://download.nue.suse.com/ibs/SUSE/Updates/' 'SLE-Module-Server-Applications/15-SP2/x86_64/update/', - 'storage7-media': 'http://download.suse.de/ibs/SUSE:/SLE-15-SP2:/Update:/Products:/' - 'SES7/images/repo/SUSE-Enterprise-Storage-7-POOL-x86_64-Media1/', + 'storage': 'http://download.nue.suse.com/ibs/SUSE/Products/Storage/7/x86_64/product/', + 'storage-update': 'http://download.nue.suse.com/ibs/SUSE/Updates/Storage/7/x86_64/' + 'update/', }, } @@ -258,7 +294,7 @@ VERSION_DEVEL_REPOS = { 'ses5': { 'sles-12-sp3': [ - 'http://download.suse.de/ibs/Devel:/Storage:/5.0/images/repo/' + 'http://download.nue.suse.com/ibs/Devel:/Storage:/5.0/images/repo/' 'SUSE-Enterprise-Storage-5-POOL-x86_64-Media1/' ], }, @@ -270,7 +306,7 @@ }, 'ses6': { 'sles-15-sp1': [ - 'http://download.suse.de/ibs/Devel:/Storage:/6.0/images/repo/' + 'http://download.nue.suse.com/ibs/Devel:/Storage:/6.0/images/repo/' 'SUSE-Enterprise-Storage-6-POOL-x86_64-Media1/' ], }, @@ -301,45 +337,45 @@ }, 'ses7': { 'sles-15-sp2': [ - 'http://download.suse.de/ibs/Devel:/Storage:/7.0/images/repo/' + 'http://download.nue.suse.com/ibs/Devel:/Storage:/7.0/images/repo/' 'SUSE-Enterprise-Storage-7-POOL-x86_64-Media1/' ], }, 'caasp4': { 'sles-15-sp2': [ - 'http://download.suse.de/ibs/SUSE/Products/SLE-Module-Containers/15-SP2/x86_64/' - 'product/', - 'http://download.suse.de/ibs/SUSE/Updates/SLE-Module-Containers/15-SP2/x86_64/' - 'update/', - 'http://download.suse.de/ibs/SUSE/Products/SLE-Module-Public-Cloud/15-SP2/x86_64/' - 'product/', - 'http://download.suse.de/ibs/SUSE/Updates/SLE-Module-Public-Cloud/15-SP2/x86_64/' - 'update/', - 'http://download.suse.de/ibs/SUSE/Updates/SLE-Module-Public-Cloud/15-SP1/x86_64/' + 'http://download.nue.suse.com/ibs/SUSE/Products/SLE-Module-Containers/15-SP2/' + 'x86_64/product/', + 'http://download.nue.suse.com/ibs/SUSE/Updates/SLE-Module-Containers/15-SP2/x86_64/' 'update/', - 'http://download.suse.de/ibs/SUSE:/SLE-15-SP2:/Update:/Products:/CaaSP:/4.5/' + 'http://download.nue.suse.com/ibs/SUSE/Products/SLE-Module-Public-Cloud/15-SP2/' + 'x86_64/product/', + 'http://download.nue.suse.com/ibs/SUSE/Updates/SLE-Module-Public-Cloud/15-SP2/' + 'x86_64/update/', + 'http://download.nue.suse.com/ibs/SUSE/Updates/SLE-Module-Public-Cloud/15-SP1/' + 'x86_64/update/', + 'http://download.nue.suse.com/ibs/SUSE:/SLE-15-SP2:/Update:/Products:/CaaSP:/4.5/' 'standard/', - 'http://download.suse.de/ibs/SUSE/Updates/SUSE-CAASP/4.5/x86_64/update/' + 'http://download.nue.suse.com/ibs/SUSE/Updates/SUSE-CAASP/4.5/x86_64/update/' ], }, 'makecheck': { 'sles-12-sp3': [ - 'http://download.suse.de/ibs/Devel:/Storage:/5.0/images/repo/' + 'http://download.nue.suse.com/ibs/Devel:/Storage:/5.0/images/repo/' 'SUSE-Enterprise-Storage-5-POOL-x86_64-Media1/', - '10000!http://download.suse.de/ibs/Devel:/Storage:/5.0/images/repo/' + '10000!http://download.nue.suse.com/ibs/Devel:/Storage:/5.0/images/repo/' 'SUSE-Enterprise-Storage-5-POOL-Internal-x86_64-Media/', ], 'sles-15-sp1': [ - 'http://download.suse.de/ibs/Devel:/Storage:/6.0/images/repo/' + 'http://download.nue.suse.com/ibs/Devel:/Storage:/6.0/images/repo/' 'SUSE-Enterprise-Storage-6-POOL-x86_64-Media1/', - # '10000!http://download.suse.de/ibs/Devel:/Storage:/6.0/images/repo/' + # '10000!http://download.nue.suse.com/ibs/Devel:/Storage:/6.0/images/repo/' # 'SUSE-Enterprise-Storage-6-POOL-Internal-x86_64-Media/', ], 'leap-15.1': [], 'sles-15-sp2': [ - 'http://download.suse.de/ibs/Devel:/Storage:/7.0/images/repo/' + 'http://download.nue.suse.com/ibs/Devel:/Storage:/7.0/images/repo/' 'SUSE-Enterprise-Storage-7-POOL-x86_64-Media1/', - '10000!http://download.suse.de/ibs/Devel:/Storage:/7.0/images/repo/' + '10000!http://download.nue.suse.com/ibs/Devel:/Storage:/7.0/images/repo/' 'SUSE-Enterprise-Storage-7-POOL-Internal-x86_64-Media/', ], 'leap-15.2': [], diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/deployment.py new/sesdev-1.11.0+1607012263.g73dea97/seslib/deployment.py --- old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/deployment.py 2020-10-23 15:26:43.980071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/seslib/deployment.py 2020-12-03 17:17:43.807857359 +0100 @@ -102,6 +102,8 @@ self.bootstrap_mon_ip = None self.version_devel_repos = None self.os_base_repos = None + self.internal_media_repo = None + self.developer_tools_repos = None self.os_makecheck_repos = None self.os_upgrade_repos = None self.upgrade_devel_repos = None @@ -150,9 +152,14 @@ Constant.VERSION_PREFERRED_DEPLOYMENT_TOOL[self.settings.version] def __populate_image_path(self): - if self.settings.deployment_tool == 'cephadm': - if not self.settings.image_path: - self.settings.image_path = self.settings.image_paths[self.settings.version] + if self.settings.deployment_tool == 'cephadm' and not self.settings.image_path: + if not self.settings.devel_repo: + if self.settings.version in self.settings.image_paths_product: + self.settings.image_path = \ + self.settings.image_paths_product[self.settings.version] + return + self.settings.image_path = \ + self.settings.image_paths_devel[self.settings.version] def __set_up_make_check(self): self.settings.override('single_node', True) @@ -445,6 +452,18 @@ else: self.os_upgrade_repos = [] + def __set_internal_media_repo(self): + if self.settings.version in self.settings.internal_media_repos: + self.internal_media_repo = \ + self.settings.internal_media_repos[self.settings.version].items() + + def __set_developer_tools_repos(self): + if self.settings.os in self.settings.developer_tools_repos: + self.developer_tools_repos = \ + list( + self.settings.developer_tools_repos[self.settings.os].items() + ) + def __set_os_makecheck_repos(self): if self.settings.os in self.settings.os_makecheck_repos: self.os_makecheck_repos = \ @@ -481,6 +500,8 @@ """ self.__set_version_devel_repos() self.__set_os_base_repos() + self.__set_internal_media_repo() + self.__set_developer_tools_repos() self.__set_os_makecheck_repos() self.__analyze_ceph_salt_github_pr_fetching() self.__set_cephadm_bootstrap_node() @@ -589,6 +610,10 @@ 'msgr2_prefer_secure': self.settings.msgr2_prefer_secure, 'upgrade_devel_repos': self.upgrade_devel_repos, 'os_upgrade_repos': self.os_upgrade_repos, + 'apparmor': self.settings.apparmor, + 'rgw_ssl': self.settings.rgw_ssl, + 'internal_media_repo': self.internal_media_repo, + 'developer_tools_repos': self.developer_tools_repos, } scripts = {} @@ -921,6 +946,10 @@ result += " - {}\n".format(repo_obj.url) if self.settings.version in Constant.CORE_VERSIONS: result += "- qa_test: {}\n".format(self.settings.qa_test) + if self.settings.fqdn: + result += "- FQDN: {}\n".format(self.settings.fqdn) + if self.settings.rgw_ssl: + result += "- RGW with SSL: {}\n".format(self.settings.rgw_ssl) if show_individual_vms: result += "\n" result += "Individual VM parameters:\n" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/settings.py new/sesdev-1.11.0+1607012263.g73dea97/seslib/settings.py --- old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/settings.py 2020-10-23 15:26:43.980071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/seslib/settings.py 2020-12-03 17:17:43.807857359 +0100 @@ -10,6 +10,11 @@ SETTINGS = { # RESERVED KEY, DO NOT USE: 'strict' + 'apparmor': { + 'type': bool, + 'help': 'Enable/disable AppArmor', + 'default': True, + }, 'caasp_deploy_ses': { 'type': bool, 'help': 'Deploy SES using rook in CaasP', @@ -60,6 +65,11 @@ 'help': 'Include "devel" zypper repo, if applicable', 'default': True, }, + 'developer_tools_repos': { + 'type': dict, + 'help': 'Developer Tools Module repos for various versions of SLE', + 'default': Constant.DEVELOPER_TOOLS_REPOS, + }, 'disk_size': { 'type': int, 'help': 'Storage disk size in gigabytes', @@ -110,10 +120,29 @@ 'help': 'Container image path for Ceph daemons', 'default': '', }, - 'image_paths': { + 'image_paths_devel': { + 'type': dict, + 'help': 'paths to devel container images', + 'default': Constant.IMAGE_PATHS_DEVEL, + }, + 'image_paths_product': { 'type': dict, - 'help': 'paths to container images to be passed to "podman" and "cephadm bootstrap"', - 'default': Constant.IMAGE_PATHS, + 'help': 'paths to product container images', + 'default': Constant.IMAGE_PATHS_PRODUCT, + }, + 'internal_media_repos': { + 'type': dict, + 'help': 'Internal Media repos for various versions of SES', + 'default': Constant.INTERNAL_MEDIA_REPOS, + }, + 'ipv6': { + 'type': bool, + 'help': 'Configure IPv6 addresses. This option requires "Accept Router ' + 'Advertisements" to be set to 2. You can change it by running ' + '"sysctl -w net.ipv6.conf.<if>.accept_ra=2" where ' + '<if> is the network interface used by libvirt for network ' + 'forwarding, or "all" to apply to all interfaces.', + 'default': False }, 'libvirt_host': { 'type': str, @@ -215,15 +244,6 @@ 'help': 'Automatically run integration tests on the deployed cluster', 'default': False, }, - 'ipv6': { - 'type': bool, - 'help': 'Configure IPv6 addresses. This option requires "Accept Router ' - 'Advertisements" to be set to 2. You can change it by running ' - '"sysctl -w net.ipv6.conf.<if>.accept_ra=2" where ' - '<if> is the network interface used by libvirt for network ' - 'forwarding, or "all" to apply to all interfaces.', - 'default': False - }, 'ram': { 'type': int, 'help': 'RAM size in gigabytes for each node', @@ -239,6 +259,11 @@ 'help': 'DEPRECATED: use custom_repos instead', 'default': [], }, + 'rgw_ssl': { + 'type': bool, + 'help': 'Whether to deploy RGW with SSL enabled', + 'default': False, + }, 'roles': { 'type': list, 'help': 'Roles to apply to the current deployment', @@ -406,7 +431,8 @@ assert isinstance(config_tree, dict), "yaml.load() of config file misbehaved!" __fill_in_config_tree('os_repos', Constant.OS_REPOS) __fill_in_config_tree('version_devel_repos', Constant.VERSION_DEVEL_REPOS) - __fill_in_config_tree('image_paths', Constant.IMAGE_PATHS) + __fill_in_config_tree('image_paths_devel', Constant.IMAGE_PATHS_DEVEL) + __fill_in_config_tree('image_paths_product', Constant.IMAGE_PATHS_PRODUCT) __fill_in_config_tree('version_default_roles', Constant.ROLES_DEFAULT_BY_VERSION) return config_tree diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/caasp/master.sh.j2 new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/caasp/master.sh.j2 --- old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/caasp/master.sh.j2 2020-10-23 15:26:43.980071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/caasp/master.sh.j2 2020-12-03 17:17:43.811857390 +0100 @@ -49,6 +49,29 @@ set -ex } +function wait_for_rook_ceph { + set +ex + timeout_seconds="900" + remaining_seconds="$timeout_seconds" + interval_seconds="10" + while true ; do + echo "Waiting for $1 $2 to be ready" + set -x + kubectl get $1 $2 -n rook-ceph 2>/dev/null + status=$? + set +x + remaining_seconds="$(( remaining_seconds - interval_seconds ))" + [ "$status" = "0" ] && break + if [ "$remaining_seconds" -le "0" ] ; then + echo "It seems unlikely that $1 $2 will ever appear. Bailing out!" + set -e + false + fi + sleep "$interval_seconds" + done + set -ex +} + zypper --non-interactive install skuba touch /tmp/ready @@ -216,6 +239,18 @@ kubectl apply -f cluster.yaml -f toolbox.yaml echo "Verify the installation by running 'kubectl get pods -n rook-ceph'" +# expose ceph dashboard +wait_for_rook_ceph service rook-ceph-mgr-dashboard +kubectl create -f dashboard-loadbalancer.yaml +wait_for_rook_ceph service rook-ceph-mgr-dashboard-loadbalancer +export CEPH_DASHBOARD_PORT=$(kubectl get -o jsonpath="{.spec.ports[0].port}" services rook-ceph-mgr-dashboard-loadbalancer -n rook-ceph) +export CEPH_DASHBOARD_IP=$(kubectl get -o jsonpath="{.status.loadBalancer.ingress[0].ip}" services rook-ceph-mgr-dashboard-loadbalancer -n rook-ceph) +wait_for_rook_ceph secret rook-ceph-dashboard-password +export CEPH_DASHBOARD_PASSWORD=$(kubectl -n rook-ceph get secret rook-ceph-dashboard-password -o jsonpath="{['data']['password']}" | base64 --decode && echo) +echo "Access ceph dashboard at: https://$CEPH_DASHBOARD_IP:$CEPH_DASHBOARD_PORT/" +echo " Ceph dashboard username: admin" +echo " Ceph dashboard password: $CEPH_DASHBOARD_PASSWORD" + {% endif %} {# caasp_deploy_ses #} {% else %} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/cephadm/deployment_day_2.sh.j2 new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/cephadm/deployment_day_2.sh.j2 --- old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/cephadm/deployment_day_2.sh.j2 2020-10-23 15:26:43.980071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/cephadm/deployment_day_2.sh.j2 2020-12-03 17:17:43.811857390 +0100 @@ -130,11 +130,18 @@ {% if mds_nodes > 0 %} {% set service_spec_mds = "/root/service_spec_mds.yml" %} -{% set fs_volume = "sesdev_fs" %} +{% set fs_name = "sesdev_fs" %} +{% set fs_pool_prefix = "cephfs." %} +{% set fs_meta_pool = fs_pool_prefix + fs_name + ".meta" %} +{% set fs_data_pool = fs_pool_prefix + fs_name + ".data" %} + +ceph osd pool create {{ fs_meta_pool }} +ceph osd pool create {{ fs_data_pool }} + cat >> {{ service_spec_mds }} << 'EOF' --- service_type: mds -service_id: {{ fs_volume }} +service_id: {{ fs_name }} placement: hosts: {% for node in nodes %} @@ -187,8 +194,7 @@ done set -x -# create the volume -ceph fs volume create {{ fs_volume }} +ceph fs new {{ fs_name }} {{ fs_meta_pool }} {{ fs_data_pool }} sleep 10 ceph fs status sleep 5 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/provision.sh.j2 new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/provision.sh.j2 --- old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/provision.sh.j2 2020-10-23 15:26:43.980071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/provision.sh.j2 2020-12-03 17:17:43.811857390 +0100 @@ -80,7 +80,24 @@ # sync clocks if needed {% include "sync_clocks.j2" %} -# deploy state machine +# apparmor +{% if apparmor %} +aa-status || true +{% else %} +aa-teardown +echo "Possibly changing GRUB configuration to disable apparmor persistently" +GRUB_APPARMOR_BEFORE="$(grep ^GRUB_CMDLINE_LINUX_DEFAULT /etc/default/grub)" +sed -i -e 's/^GRUB_CMDLINE_LINUX_DEFAULT=""$/GRUB_CMDLINE_LINUX_DEFAULT="apparmor=0"/' /etc/default/grub +GRUB_APPARMOR_AFTER="$(grep ^GRUB_CMDLINE_LINUX_DEFAULT /etc/default/grub)" +if [ "$GRUB_APPARMOR_AFTER" ] && [ "$GRUB_APPARMOR_BEFORE" != "$GRUB_APPARMOR_AFTER" ] ; then + grub2-mkconfig -o /boot/grub2/grub.cfg +else + echo "GRUB configuration did not change; not persisting it" +fi +aa-status || true +{% endif %}{# apparmor #} + +# deployment state machine # DeepSea {% if deploy_salt and deployment_tool == "deepsea" %} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/salt/deepsea/deepsea_deployment.sh.j2 new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/salt/deepsea/deepsea_deployment.sh.j2 --- old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/salt/deepsea/deepsea_deployment.sh.j2 2020-10-23 15:26:43.980071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/salt/deepsea/deepsea_deployment.sh.j2 2020-12-03 17:17:43.811857390 +0100 @@ -1,3 +1,4 @@ + {% if deepsea_git_repo %} cd /root git clone {{ deepsea_git_repo }} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/salt/deepsea/nautilus_policy.cfg.j2 new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/salt/deepsea/nautilus_policy.cfg.j2 --- old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/salt/deepsea/nautilus_policy.cfg.j2 2020-10-23 15:26:43.980071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/salt/deepsea/nautilus_policy.cfg.j2 2020-12-03 17:17:43.811857390 +0100 @@ -35,3 +35,4 @@ role-grafana/cluster/{{ node.name }}*.sls {% endif %} {% endfor %} + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/salt/deepsea/nautilus_pre_stage_1.sh.j2 new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/salt/deepsea/nautilus_pre_stage_1.sh.j2 --- old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/salt/deepsea/nautilus_pre_stage_1.sh.j2 1970-01-01 01:00:00.000000000 +0100 +++ new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/salt/deepsea/nautilus_pre_stage_1.sh.j2 2020-12-03 17:17:43.811857390 +0100 @@ -0,0 +1,23 @@ + +{% if rgw_ssl %} +# Set up RGW-over-SSL +CERTDIR=/srv/salt/ceph/rgw/cert +mkdir -p $CERTDIR +pushd $CERTDIR +openssl req -x509 \ + -nodes \ + -days 1095 \ + -newkey rsa:4096 \ + -keyout rgw.key \ + -out rgw.crt \ + -subj "/C=DE" +cat rgw.key > rgw.pem && cat rgw.crt >> rgw.pem +popd +GLOBALYML=/srv/pillar/ceph/stack/global.yml +cat <<EOF >> $GLOBALYML +rgw_init: default-ssl +EOF +cat $GLOBALYML +cp /srv/salt/ceph/configuration/files/rgw-ssl.conf \ + /srv/salt/ceph/configuration/files/ceph.conf.d/rgw.conf +{% endif %} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/salt/deepsea/ses6_pre_stage_1.sh.j2 new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/salt/deepsea/ses6_pre_stage_1.sh.j2 --- old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/salt/deepsea/ses6_pre_stage_1.sh.j2 1970-01-01 01:00:00.000000000 +0100 +++ new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/salt/deepsea/ses6_pre_stage_1.sh.j2 2020-12-03 17:17:43.811857390 +0100 @@ -0,0 +1 @@ +{% include "salt/deepsea/nautilus_pre_stage_1.sh.j2" %} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/zypper.j2 new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/zypper.j2 --- old/sesdev-1.9.1+1603459604.g8c9ed2c/seslib/templates/zypper.j2 2020-10-23 15:26:43.980071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/seslib/templates/zypper.j2 2020-12-03 17:17:43.811857390 +0100 @@ -37,6 +37,18 @@ zypper addrepo --refresh {{ os_repo_url }} {{ os_repo_name }} {% endfor %} +# ses6 deepsea install from source requires: +# - SES6 Internal Media repo +# - SLE-15-SP1 Developer Tools Module repos +{% if version == 'ses6' and deepsea_git_repo and node == master %} +{% for internal_media_repo_name, internal_media_repo_url in internal_media_repo %} +zypper addrepo --refresh {{ internal_media_repo_url }} {{ internal_media_repo_name }} +{% endfor %} +{% for dev_tools_repo_name, dev_tools_repo_url in developer_tools_repos %} +zypper addrepo --refresh {{ dev_tools_repo_url }} {{ dev_tools_repo_name }} +{% endfor %} +{% endif %}{# version == 'ses6' and deepsea_git_repo #} + # make check repos {% if version == 'makecheck' %} {% for os_repo_name, os_repo_url in os_makecheck_repos %} @@ -175,11 +187,11 @@ {% if os.startswith("sle") %} zypper addrepo --refresh {%- if os == 'sles-15-sp2' %} - http://download.suse.de/ibs/SUSE:/CA/SLE_15_SP2/SUSE:CA.repo + http://download.nue.suse.com/ibs/SUSE:/CA/SLE_15_SP2/SUSE:CA.repo {%- elif os == 'sles-15-sp1' %} - http://download.suse.de/ibs/SUSE:/CA/SLE_15_SP1/SUSE:CA.repo + http://download.nue.suse.com/ibs/SUSE:/CA/SLE_15_SP1/SUSE:CA.repo {%- elif os == 'sles-12-sp3' %} - http://download.suse.de/ibs/SUSE:/CA/SLE_12_SP3/SUSE:CA.repo + http://download.nue.suse.com/ibs/SUSE:/CA/SLE_12_SP3/SUSE:CA.repo {% endif %} {% endif %}{# os.startswith("sle") #} @@ -202,6 +214,8 @@ 'man', 'command-not-found', 'bc', + 'apparmor-utils', + 'apparmor-parser', ] %} {% if os == 'sles-12-sp3' %} zypper --non-interactive install {{ basic_pkgs_to_install | join(' ') }} ntp diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sesdev-1.9.1+1603459604.g8c9ed2c/tox.ini new/sesdev-1.11.0+1607012263.g73dea97/tox.ini --- old/sesdev-1.9.1+1603459604.g8c9ed2c/tox.ini 2020-10-23 15:26:43.980071088 +0200 +++ new/sesdev-1.11.0+1607012263.g73dea97/tox.ini 2020-12-03 17:17:43.811857390 +0100 @@ -16,6 +16,7 @@ pytest --pycodestyle {posargs: -vv} [testenv:lint] +allowlist_externals = pylint commands = pylint sesdev pylint seslib _______________________________________________ openSUSE Commits mailing list -- [email protected] To unsubscribe, email [email protected] List Netiquette: https://en.opensuse.org/openSUSE:Mailing_list_netiquette List Archives: https://lists.opensuse.org/archives/list/[email protected]
