Giter VIP home page Giter VIP logo

Comments (12)

robbkidd avatar robbkidd commented on September 22, 2024

@jorhett What version of the supermarket package was being installed? On what platform? I'm trying to replicate.

from supermarket-omnibus-cookbook.

robbkidd avatar robbkidd commented on September 22, 2024

So far, I've been unable to replicate the error with the test-kitchen config for this cookbook. But I still suspect there is a problem given that I had to set HOME in the service startup scripts after upgrading some components in the omnibus install.

from supermarket-omnibus-cookbook.

irvingpop avatar irvingpop commented on September 22, 2024

Initial analysis is that it isn't a bug in this cookbook, but points to the omnibus-supermarket::database recipe embedded in the omnibus here and possibly deeper to that rake task.

from supermarket-omnibus-cookbook.

robbkidd avatar robbkidd commented on September 22, 2024

Yes, true. The problem probably lay in the cookbooks internal to the omnibus install. I've been trying to replicate the problem from up on high in this cookbook however.

from supermarket-omnibus-cookbook.

jorhett avatar jorhett commented on September 22, 2024

supermarket 2.7.4-1 on Ubuntu 14.04. I can send you the entire log in chef-success slack if you like...

from supermarket-omnibus-cookbook.

nellshamrell avatar nellshamrell commented on September 22, 2024

Looking into this now.

from supermarket-omnibus-cookbook.

nellshamrell avatar nellshamrell commented on September 22, 2024

Steps I've currently take to replicate this (this is based on how we currently spin up supermarket nodes in Chef):

  1. Spun up new Ubuntu 14.04 node in AWS
  2. Bootstrap new node with knife bootstrap
$ (my-workstation) knife node bootstrap node_public_ip -i my_ssh_key_path -N supermarket-node2 -x ubuntu --sudo
  1. Add the default recipe of our Supermarket wrapper cookbook to the node run list
$ (my-workstation) knife node run list add supermarket-node2 'recipe[supermarket-wrapper::default]'
  1. SSH'd into the new node
$  (my-workstation) ssh -i my_aws_key ubuntu@node_ip
  1. Ran chef client on the node
$  (supermarket-node2) sudo chef-client

It configured successfully and installed supermarket 2.7.4
6) Tried running chef-client again

$  (supermarket-node2) sudo chef-client
  1. Ran successfully

@jorhett could you detail the steps you took to install Supermarket? And I would love to see the log, you can send it to me on Chef Success Slack @nshamrell

from supermarket-omnibus-cookbook.

nellshamrell avatar nellshamrell commented on September 22, 2024

Hi @jorhett! Closing this for now because we haven't heard back from you. If this is still a problem, feel free to re-open this with some more detailed steps about when you see this error, this will help us replicate it. Thanks!

from supermarket-omnibus-cookbook.

jorhett avatar jorhett commented on September 22, 2024

Sorry, I provided all the information in the chef-success slack channel as mentioned above, as some internal corporate details were in the data. Could you tell me what else you were looking for?

from supermarket-omnibus-cookbook.

jorhett avatar jorhett commented on September 22, 2024

@nellshamrell And your test case was invalid, for the reasons I specified in the first sentence of the problem report. If you run Chef by hand then the process is provided with a HOME environment variable and succeeds. This error occurs when the node boots and runs Chef as a daemon without a human being involved (you know, automation...)

from supermarket-omnibus-cookbook.

irvingpop avatar irvingpop commented on September 22, 2024

@jorhett Please remember that you're commenting on a community-supported Open Source project, and snarky comments (or those interpreted as such) don't elicit generosity in those who are in a position to help you. Please take a look at the Chef Community Guidelines as a reference.

Despite that, we want to make sure you're successful. I dug into the issue and here's what I found:

  • The error comes from a Ruby library (rb-readline) which assumes a $HOME environment variable is set. This has been an open issue since 2013: ConnorAtherton/rb-readline#8
  • We've worked around it in ChefDK on Windows (where we wouldn't expect $HOME to be set) but appears to be invokable manually

The issue you're hitting is one that I've personally dealt with, as will likely most people who automate. Running CI agent that don't set a HOME for jobs will cause you endless problems, and you should consider:

As this isn't a problem with this cookbook, nor the Supermarket omnibus package, I have to agree with Nell that this isn't the right place to report the issue (and is also an invalid issue because the issue goes way below any software that Chef maintains)

from supermarket-omnibus-cookbook.

jorhett avatar jorhett commented on September 22, 2024

I'm honestly sorry. That wasn't intended as snark, although (in retrospect) I see why you thought it that way. It was more tired self-amusement if anything, meant in a "you know" way.

I disagree with your assessment, however, in that I am using a Chef-supported and maintained cookbook and process which is intended to be a black box for us. I am using the cookbook and setting attributes as documented. The only way to fix this problem is to abandon your provided cookbook, or to retroactively modify resources in your cookbook. Is that not a bug?

The bug is that your supported cookbook is failing to set the HOME environment when calling that process. My bug report is that you are failing to use your own advice above. Again, I've no attempt or desire to be snarky here. I'm being entirely serious and straightforward.

from supermarket-omnibus-cookbook.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.