gecko-dev/config/printconfigsetting.py
Justin Wood baa089903e Bug 1559975 - Make config/ lint with 'py2' and 'py3' r=catlee
Depends on D36091

Differential Revision: https://phabricator.services.mozilla.com/D36092

--HG--
extra : moz-landing-system : lando
2019-07-08 17:30:34 +00:00

34 lines
846 B
Python

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
from __future__ import absolute_import
from __future__ import print_function
import configobj
import sys
import re
from StringIO import StringIO
try:
(file, section, key) = sys.argv[1:]
except ValueError:
print("Usage: printconfigsetting.py <file> <section> <setting>")
sys.exit(1)
with open(file) as fh:
content = re.sub('^\s*;', '#', fh.read(), flags=re.M)
c = configobj.ConfigObj(StringIO(content))
try:
s = c[section]
except KeyError:
print >>sys.stderr, "Section [%s] not found." % section
sys.exit(1)
try:
print(s[key])
except KeyError:
print >>sys.stderr, "Key %s not found." % key
sys.exit(1)