Bug 947712

Summary: OpenStack installs fail - Probably because latest builds have not been pushed to repos
Product: [openSUSE] openSUSE Distribution Reporter: Tony Su <tonysu>
Component: Release NotesAssignee: Karl Eichwalder <ke>
Status: RESOLVED FIXED QA Contact: Stephan Kulow <coolo>
Severity: Major    
Priority: P5 - None CC: dimstar
Version: Leap 42.1   
Target Milestone: ---   
Hardware: All   
OS: openSUSE 42.1   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Bug Depends on:    
Bug Blocks: 949491    

Description Tony Su 2015-09-28 02:18:13 UTC
Actually this applies to both SUSE and openSUSE (all versions) since this is most likely a packaging problem and packages for all distros are packaged the same time by OBS.

Since I first encountered the bug, I have since found a workaround that works, I'll describe that first...

Workaround:
Instead of trying to install from either software.opensuse.org or the repos,
Install by downloading the package from the OBS and installing
https://build.opensuse.org/package/show?project=Cloud%3AOpenStack%3AKilo&package=openstack-neutron

NOTE: The above workaround suggests that current OBS builds for Kilo have not been pushed to the repos. I encountered a similar problem with the Controller pattern and will see if going directly to the OBS solves that, too.

The following stdout with reported errors when attempting to install from the openSUSE 13.2 and SUSE 12 repos:

System: openSUSE LEAP 42.1 (although I doubt the error has anything to do with the OS version)
 Repository: openSUSE (also tried SUSE)

Summary:
 Attempting to install OpenStack Kilo on a Network Node, first using the network-nodes pattern and then the faulty package.

Attempted first
 zypper in patterns-OpenStack-network-node
 Loading repository data...
 Reading installed packages...
 Resolving package dependencies...

Problem: patterns-OpenStack-network-node-2015.1-4.1.noarch requires openstack-neutron-dhcp-agent >= 2015.1, but this requirement cannot be provided
   uninstallable providers: openstack-neutron-dhcp-agent-2015.1.2~a0~dev65-1.1.noarch[OpenStack_Kilo]
  Solution 1: deinstallation of patterns-openSUSE-minimal_base-conflicts-20150505-6.5.x86_64
  Solution 2: do not install patterns-OpenStack-network-node-2015.1-4.1.noarch
  Solution 3: break patterns-OpenStack-network-node-2015.1-4.1.noarch by ignoring some of its dependencies

Choose from above solutions by number or cancel [1/2/3/c] (c):

Then, tried to resolve by attempting to install the neutron DHCP agent package first
 zypper in openstack-neutron-dhcp-agent
 Loading repository data...
 Reading installed packages...
 Resolving package dependencies...

Problem: openstack-neutron-dhcp-agent-2015.1.2~a0~dev65-1.1.noarch requires openstack-neutron = 2015.1.2~a0~dev65, but this requirement cannot be provided
   uninstallable providers: openstack-neutron-2015.1.2~a0~dev65-1.1.noarch[OpenStack_Kilo]
  Solution 1: deinstallation of patterns-openSUSE-minimal_base-conflicts-20150505-6.5.x86_64
  Solution 2: do not install openstack-neutron-dhcp-agent-2015.1.2~a0~dev65-1.1.noarch
  Solution 3: break openstack-neutron-dhcp-agent-2015.1.2~a0~dev65-1.1.noarch by ignoring some of its dependencies

Choose from above solutions by number or cancel [1/2/3/c] (c):
Comment 1 Stephan Kulow 2015-09-28 07:54:25 UTC
you need to remove patterns-openSUSE-minimal_base-conflicts to mark your installation as no longer minimal
Comment 2 Tony Su 2015-09-28 17:03:27 UTC
Thank you.
Indeed, removing patterns-openSUSE-minimal_base-conflicts solved the problem.

First time I've run into this package, considering how often I deploy openSUSE in text mode I'm now looking for info about this package that appears to block "possible conflicts." Inspecting the package contents itself wasn't informative although a Google search suggests it's known to many package maintainers.
Comment 3 Dominique Leuenberger 2015-10-02 11:26:55 UTC
So in essence, there is 'nothing wrong' and the setup works as expected.

I suggest to add a Note to Release Notes, along the line:

###
* Base System installation *
If you install a new setup as 'minimal base system', the installed system will try to maintain this level and often run into dependency conflicts when you try to install more software.

To avoid this, uninstall the package "patterns-openSUSE-minimal_base-conflicts", instructing the system that you no longer want to maintain a minimal installation.
###
Comment 4 Tony Su 2015-10-02 15:59:48 UTC
(In reply to Dominique Leuenberger from comment #3)
> So in essence, there is 'nothing wrong' and the setup works as expected.
> 
> I suggest to add a Note to Release Notes, along the line:
> 
> ###
> * Base System installation *
> If you install a new setup as 'minimal base system', the installed system
> will try to maintain this level and often run into dependency conflicts when
> you try to install more software.
> 
> To avoid this, uninstall the package
> "patterns-openSUSE-minimal_base-conflicts", instructing the system that you
> no longer want to maintain a minimal installation.
> ###

When I get some time,
I will also propose an addition to the Documentation
Comment 5 Karl Eichwalder 2015-10-12 15:18:44 UTC
(In reply to Dominique Leuenberger from comment #3)
> So in essence, there is 'nothing wrong' and the setup works as expected.
> 
> I suggest to add a Note to Release Notes, along the line:
> 
> ###
> * Base System installation *
> If you install a new setup as 'minimal base system', the installed system
> will try to maintain this level and often run into dependency conflicts when
> you try to install more software.
> 
> To avoid this, uninstall the package
> "patterns-openSUSE-minimal_base-conflicts", instructing the system that you
> no longer want to maintain a minimal installation.
> ###

Ok, I'm going to push this:

  <section>
   <!-- https://bugzilla.suse.com/show_bug.cgi?id=947712 -->
   <title>Base System Installation</title>
   <para>
    If you install a new system as <quote>minimal base system</quote>,
    the installed system will try to maintain this level and often run
    into dependency conflicts when you try to install more software.
   </para>
   <para>
    To avoid this, uninstall the package
    <literal>patterns-openSUSE-minimal_base-conflicts</literal>,
    instructing the system that you no longer want to maintain a minimal
    installation (<quote>minimal base system</quote>).
   </para>
  </section>
Comment 6 Tony Su 2015-10-12 17:11:16 UTC
Hello,
I'd like to recommend some modifications (you can still submit) based on how the User would encounter this scenario...

ie.
Although technically correct, the User isn't likely going to think of his install as a "minimal base system" but how the Install describes, as a "Text Only Server" install configuration, and also affects the "Minimal X" install configuration. So, I might suggest the following code

BTW - I've never tried to use Sphynx syntax before, am guessing at the syntax used to highlight the zypper command since I'm finding it hard to find a relevant example.

<section>
<!-- https://bugzilla.suse.com/show_bug.cgi?id=947712 -->
<title>Base System Installation</title>
<para>
For those who are installing on a "Text-only Server" or "Minimal X" system, your system includes the Minimal Base System Conflicts pattern which needs to be removed before you can install additional capability.

</para>
<para>
To address this issue, run the following command which removes the conflicting pattern so that OpenStack functionality can be installed
</para>
.. highlight:: c
zypper rm patterns-openSUSE-minimal_base-conflicts 


</section>











(In reply to Karl Eichwalder from comment #5)
> (In reply to Dominique Leuenberger from comment #3)
> > So in essence, there is 'nothing wrong' and the setup works as expected.
> > 
> > I suggest to add a Note to Release Notes, along the line:
> > 
> > ###
> > * Base System installation *
> > If you install a new setup as 'minimal base system', the installed system
> > will try to maintain this level and often run into dependency conflicts when
> > you try to install more software.
> > 
> > To avoid this, uninstall the package
> > "patterns-openSUSE-minimal_base-conflicts", instructing the system that you
> > no longer want to maintain a minimal installation.
> > ###
> 
> Ok, I'm going to push this:
> 
>   <section>
>    <!-- https://bugzilla.suse.com/show_bug.cgi?id=947712 -->
>    <title>Base System Installation</title>
>    <para>
>     If you install a new system as <quote>minimal base system</quote>,
>     the installed system will try to maintain this level and often run
>     into dependency conflicts when you try to install more software.
>    </para>
>    <para>
>     To avoid this, uninstall the package
>     <literal>patterns-openSUSE-minimal_base-conflicts</literal>,
>     instructing the system that you no longer want to maintain a minimal
>     installation (<quote>minimal base system</quote>).
>    </para>
>   </section>