Solved

Need a hand on the split command in Chef / Ruby or a regex...

Posted on 2016-08-09
5
46 Views
Last Modified: 2016-08-15
I am using Chef / Ruby and I am using two environments 0001 and 0002..I have 2 log files that I want to lay down on two nodes on in each environment, so hope I make sense here.  I need to hopefully use split in Ruby to parse the 0001 / 0002 and determine which log file to lay down - one in 0001 and 0002 for the other, here is what I have in the configure.rb file:

environment_id = node[:chef_environment].split()

Log file names:

cwis_sdlc_0001.log

cwis_sdlc_0002.log

If I didn't give enough detail pls let me know.
0
Comment
Question by:Harper McDonald
  • 4
5 Comments
 
LVL 4

Author Comment

by:Harper McDonald
ID: 41749511
UPDATE:

the node[:chef_environment].split()

should only return 0001 or 0002 and of course be put into environment_id
0
 
LVL 4

Author Comment

by:Harper McDonald
ID: 41749544
Getting this now:

irb(main):006:0> log3.split("gryphon_cwis_sdlc_")
=> ["", "0002"]

Just need to remove the [ " and ,  --- any ideas?
0
 
LVL 34

Expert Comment

by:Dan Craciun
ID: 41750278
Can you please provide the values of "node[:chef_environment]" and "$" ?

From the manual:
split(pattern=$;, [limit]) → anArray
Divides str into substrings based on a delimiter, returning an array of these substrings.

If pattern is omitted, the value of $; is used. If $; is nil (which is the default), str is split on whitespace as if ` ‘ were specified.
0
 
LVL 4

Accepted Solution

by:
Harper McDonald earned 0 total points
ID: 41750452
nitro_environment_id = node[:chef_environment].split(//).last(4).join

I think I just found it out...
0
 
LVL 4

Author Closing Comment

by:Harper McDonald
ID: 41756116
Found out experimenting
0

Featured Post

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Build an array called $myWeek which will hold the array elements Today, Yesterday and then builds up the rest of the week by the name of the day going back 1 week.   (CODE) (CODE) Then you just need to pass your date to the function. If i…
This is about my first experience with programming Arduino.
The viewer will learn how to count occurrences of each item in an array.
With the power of JIRA, there's an unlimited number of ways you can customize it, use it and benefit from it. With that in mind, there's bound to be things that I wasn't able to cover in this course. With this summary we'll look at some places to go…

785 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question