def loadFile
"
mod 'testmod1',
:git => 'git@testing.com:reaktor/testmod1.git',
:ref => 'RELEASE_1.0.0'
mod 'testmod2',
:git => 'git@testing.com:reaktor/myproject-testmod2.git',
:ref => 'RELEASE_2.0.10'
mod 'testmod3',
:git => 'git@testing.com:reaktor/testmod3.git',
:tag => 'RELEASE_10.2.3'
"
end
def get_module_name_a(repo_name)
input_string = loadFile
regex = /mod ["'](\w*)["'],\s*$\n+(\s*):git\s*=>\s*["'].*#{repo_name}\.git["'],$\n+(\s*):ref\s*=>\s*['"](\w+|\w+\.\d+\.\d+)['"]$/
result = regex.match(input_string)
result[1]
end
def get_module_name_b(repo_name)
input_string = loadFile
regex = /mod[ ]["'](\w*)["'],\s*$\n+
(\s*):git\s*=>\s*["'].*#{repo_name}.git["'],$\n+
(\s*):ref\s*=>\s*['"](\w+|\w+\.\d+\.\d+)['"]
$/x
result = regex.match(input_string)
result[1]
end
puts get_module_name_a('myproject-testmod2')
puts get_module_name_b('myproject-testmod2')
CmRlZiBsb2FkRmlsZQogICIKbW9kICd0ZXN0bW9kMScsCiAgOmdpdCA9PiAnZ2l0QHRlc3RpbmcuY29tOnJlYWt0b3IvdGVzdG1vZDEuZ2l0JywKICA6cmVmID0+ICdSRUxFQVNFXzEuMC4wJwoKbW9kICd0ZXN0bW9kMicsCiAgOmdpdCA9PiAnZ2l0QHRlc3RpbmcuY29tOnJlYWt0b3IvbXlwcm9qZWN0LXRlc3Rtb2QyLmdpdCcsCiAgOnJlZiA9PiAnUkVMRUFTRV8yLjAuMTAnCgptb2QgJ3Rlc3Rtb2QzJywKICA6Z2l0ID0+ICdnaXRAdGVzdGluZy5jb206cmVha3Rvci90ZXN0bW9kMy5naXQnLAogIDp0YWcgPT4gJ1JFTEVBU0VfMTAuMi4zJwoKICAiCmVuZAoKZGVmIGdldF9tb2R1bGVfbmFtZV9hKHJlcG9fbmFtZSkKICBpbnB1dF9zdHJpbmcgPSBsb2FkRmlsZQogIHJlZ2V4ID0gL21vZCBbIiddKFx3KilbIiddLFxzKiRcbisoXHMqKTpnaXRccyo9PlxzKlsiJ10uKiN7cmVwb19uYW1lfVwuZ2l0WyInXSwkXG4rKFxzKik6cmVmXHMqPT5ccypbJyJdKFx3K3xcdytcLlxkK1wuXGQrKVsnIl0kLwogIHJlc3VsdCA9IHJlZ2V4Lm1hdGNoKGlucHV0X3N0cmluZykKICByZXN1bHRbMV0KZW5kCgpkZWYgZ2V0X21vZHVsZV9uYW1lX2IocmVwb19uYW1lKQogIGlucHV0X3N0cmluZyA9IGxvYWRGaWxlCiAgcmVnZXggPSAvbW9kWyBdWyInXShcdyopWyInXSxccyokXG4rCiAgICAoXHMqKTpnaXRccyo9PlxzKlsiJ10uKiN7cmVwb19uYW1lfS5naXRbIiddLCRcbisKICAgIChccyopOnJlZlxzKj0+XHMqWyciXShcdyt8XHcrXC5cZCtcLlxkKylbJyJdCiAgICAkL3gKICByZXN1bHQgPSByZWdleC5tYXRjaChpbnB1dF9zdHJpbmcpCiAgcmVzdWx0WzFdCmVuZAoKcHV0cyBnZXRfbW9kdWxlX25hbWVfYSgnbXlwcm9qZWN0LXRlc3Rtb2QyJykKcHV0cyBnZXRfbW9kdWxlX25hbWVfYignbXlwcm9qZWN0LXRlc3Rtb2QyJyk=