Foreman 1.7 + Staypuft 0.5.1 on EL6.6 error: undefined method `mac' for nil:NilClass

Hi,

Congrats with the 1.7 release. I just installed
foreman-installer-staypuft (0.5.1) on CentOS 6.6 with the Foreman 1.7
repo and foreman-plugins nightly enabled (and EPEL, SCL, Puppet repos).
The installation with /usr/sbin/staypuft-installer goes fine. When I
login to the web interface I add 2 subnets and then add a new OpenStack
deployment. After dragging Tenant and External each to their own subnet
and click next I get this error:

Warning!

undefined method `mac' for nil:NilClass

NoMethodError
undefined method mac' for nil:NilClass app/models/nic/base.rb:81:inblock in uniq_with_hosts'
app/models/nic/base.rb:78:in each' app/models/nic/base.rb:78:inuniq_with_hosts'
app/models/concerns/orchestration.rb:47:in valid?' app/models/concerns/foreman/thread_session.rb:33:inclear_thread'
lib/middleware/catch_json_parse_errors.rb:9:in `call'

Anyone know how to fix this?

Thanks,
Patrick

Hello,

I don't believe Staypuft is supported with newer versions of Foreman.
You need to stick with the version it was designed for.

Anyone knows the correct combination of versions?

LZ

··· On Wed, Dec 03, 2014 at 03:09:26PM +0100, Patrick Foreman-ML wrote: > Hi, > > Congrats with the 1.7 release. I just installed foreman-installer-staypuft > (0.5.1) on CentOS 6.6 with the Foreman 1.7 repo and foreman-plugins nightly > enabled (and EPEL, SCL, Puppet repos). The installation with > /usr/sbin/staypuft-installer goes fine. When I login to the web interface I > add 2 subnets and then add a new OpenStack deployment. After dragging Tenant > and External each to their own subnet and click next I get this error: > > Warning! > > undefined method `mac' for nil:NilClass > > NoMethodError > undefined method `mac' for nil:NilClass > app/models/nic/base.rb:81:in `block in uniq_with_hosts' > app/models/nic/base.rb:78:in `each' > app/models/nic/base.rb:78:in `uniq_with_hosts' > app/models/concerns/orchestration.rb:47:in `valid?' > app/models/concerns/foreman/thread_session.rb:33:in `clear_thread' > lib/middleware/catch_json_parse_errors.rb:9:in `call' > > Anyone know how to fix this? > > Thanks, > Patrick > > -- > You received this message because you are subscribed to the Google Groups "Foreman users" group. > To unsubscribe from this group and stop receiving emails from it, send an email to foreman-users+unsubscribe@googlegroups.com. > To post to this group, send email to foreman-users@googlegroups.com. > Visit this group at http://groups.google.com/group/foreman-users. > For more options, visit https://groups.google.com/d/optout.


Later,
Lukas #lzap Zapletal

> Hello,
>
> I don't believe Staypuft is supported with newer versions of Foreman.
> You need to stick with the version it was designed for.
>
> Anyone knows the correct combination of versions?
>

Yes, correct versions would be nice to know…

Thanks,

– Pasi

··· On Thu, Dec 04, 2014 at 10:59:56AM +0100, Lukas Zapletal wrote:

LZ

On Wed, Dec 03, 2014 at 03:09:26PM +0100, Patrick Foreman-ML wrote:

Hi,

Congrats with the 1.7 release. I just installed foreman-installer-staypuft
(0.5.1) on CentOS 6.6 with the Foreman 1.7 repo and foreman-plugins nightly
enabled (and EPEL, SCL, Puppet repos). The installation with
/usr/sbin/staypuft-installer goes fine. When I login to the web interface I
add 2 subnets and then add a new OpenStack deployment. After dragging Tenant
and External each to their own subnet and click next I get this error:

Warning!

undefined method `mac’ for nil:NilClass

NoMethodError
undefined method mac' for nil:NilClass app/models/nic/base.rb:81:inblock in uniq_with_hosts’
app/models/nic/base.rb:78:in each' app/models/nic/base.rb:78:inuniq_with_hosts’
app/models/concerns/orchestration.rb:47:in valid?' app/models/concerns/foreman/thread_session.rb:33:inclear_thread’
lib/middleware/catch_json_parse_errors.rb:9:in `call’

Anyone know how to fix this?

Thanks,
Patrick


You received this message because you are subscribed to the Google Groups “Foreman users” group.
To unsubscribe from this group and stop receiving emails from it, send an email to foreman-users+unsubscribe@googlegroups.com.
To post to this group, send email to foreman-users@googlegroups.com.
Visit this group at http://groups.google.com/group/foreman-users.
For more options, visit https://groups.google.com/d/optout.


Later,
Lukas #lzap Zapletal


You received this message because you are subscribed to the Google Groups “Foreman users” group.
To unsubscribe from this group and stop receiving emails from it, send an email to foreman-users+unsubscribe@googlegroups.com.
To post to this group, send email to foreman-users@googlegroups.com.
Visit this group at http://groups.google.com/group/foreman-users.
For more options, visit https://groups.google.com/d/optout.

> > Anyone knows the correct combination of versions?
> >
>
> Yes, correct versions would be nice to know…

So I have been told you need nightly snapshot.

Folks will update the README as well. I hope it helps.

··· -- Later, Lukas #lzap Zapletal

> > > Anyone knows the correct combination of versions?
> > >
> >
> > Yes, correct versions would be nice to know…
>
> So I have been told you need nightly snapshot.
>
> Folks will update the README as well. I hope it helps.
>

Thanks for the confirmation. I'll give it a try soon.

– Pasi

··· On Tue, Dec 09, 2014 at 02:11:48PM +0100, Lukas Zapletal wrote:


Later,
Lukas #lzap Zapletal


You received this message because you are subscribed to the Google Groups “Foreman users” group.
To unsubscribe from this group and stop receiving emails from it, send an email to foreman-users+unsubscribe@googlegroups.com.
To post to this group, send email to foreman-users@googlegroups.com.
Visit this group at http://groups.google.com/group/foreman-users.
For more options, visit https://groups.google.com/d/optout.

Hello All,

I am also having same issue with foreman-1.7.2-1.el6 and
foreman-installer-staypuft-0.5.5-1.el6, do we know what is the right
combination of the packages we have to use.

Please find the error I am getting

NoMethodError
*undefined method mac' for nil:NilClass* app/models/nic/base.rb:81:inblock in uniq_with_hosts'
app/models/nic/base.rb:78:in each' app/models/nic/base.rb:78:inuniq_with_hosts'
app/models/concerns/orchestration.rb:47:in valid?' app/models/concerns/foreman/thread_session.rb:33:inclear_thread'
lib/middleware/catch_json_parse_errors.rb:9:in `call'

Thanks
Anil

··· On Wednesday, December 10, 2014 at 4:53:44 PM UTC-5, Pasi Kärkkäinen wrote: > > On Tue, Dec 09, 2014 at 02:11:48PM +0100, Lukas Zapletal wrote: > > > > Anyone knows the correct combination of versions? > > > > > > > > > > Yes, correct versions would be nice to know.. > > > > So I have been told you need nightly snapshot. > > > > Folks will update the README as well. I hope it helps. > > > > Thanks for the confirmation. I'll give it a try soon. > > > -- Pasi > > > -- > > Later, > > Lukas #lzap Zapletal > > > > -- > > You received this message because you are subscribed to the Google > Groups "Foreman users" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to foreman-user...@googlegroups.com . > > To post to this group, send email to forema...@googlegroups.com > . > > Visit this group at http://groups.google.com/group/foreman-users. > > For more options, visit https://groups.google.com/d/optout. >

It appears that is a bug related to virtual deployments.

One of the solutions is here:
https://bugzilla.redhat.com/show_bug.cgi?id=1190550

But didn't work in my case so I had to replace at the beginig:

This:
validates :mac, :uniqueness => {:scope => :virtual}, :unless =>
:virtual?

with this:
validates :mac, :uniqueness => false, :unless => :virtual?

And then
service foreman restart
service foreman-proxy restart

··· On Sunday, February 8, 2015 at 1:59:04 PM UTC-5, Anil Reddy wrote: > > Hello All, > > I am also having same issue with foreman-1.7.2-1.el6 and > foreman-installer-staypuft-0.5.5-1.el6, do we know what is the right > combination of the packages we have to use. > > Please find the error I am getting > > *NoMethodError* > *undefined method `mac' for nil:NilClass* > app/models/nic/base.rb:81:in `block in uniq_with_hosts' > app/models/nic/base.rb:78:in `each' > app/models/nic/base.rb:78:in `uniq_with_hosts' > app/models/concerns/orchestration.rb:47:in `valid?' > app/models/concerns/foreman/thread_session.rb:33:in `clear_thread' > lib/middleware/catch_json_parse_errors.rb:9:in `call' > > Thanks > Anil > > On Wednesday, December 10, 2014 at 4:53:44 PM UTC-5, Pasi Kärkkäinen wrote: >> >> On Tue, Dec 09, 2014 at 02:11:48PM +0100, Lukas Zapletal wrote: >> > > > Anyone knows the correct combination of versions? >> > > > >> > > >> > > Yes, correct versions would be nice to know.. >> > >> > So I have been told you need nightly snapshot. >> > >> > Folks will update the README as well. I hope it helps. >> > >> >> Thanks for the confirmation. I'll give it a try soon. >> >> >> -- Pasi >> >> > -- >> > Later, >> > Lukas #lzap Zapletal >> > >> > -- >> > You received this message because you are subscribed to the Google >> Groups "Foreman users" group. >> > To unsubscribe from this group and stop receiving emails from it, send >> an email to foreman-user...@googlegroups.com. >> > To post to this group, send email to forema...@googlegroups.com. >> > Visit this group at http://groups.google.com/group/foreman-users. >> > For more options, visit https://groups.google.com/d/optout. >> >