diff options
author | Mike Crute <mike@crute.us> | 2017-06-18 18:13:33 -0700 |
---|---|---|
committer | Mike Crute <mike@crute.us> | 2017-06-18 18:13:33 -0700 |
commit | 1d5ab590662037438d14cf842e744683eb210b3b (patch) | |
tree | af32a98ab26746382e54ce0007edc175712ce6bb | |
parent | 0b550bdaf4c7bc4bd176c5ee7aae112deb1cc211 (diff) | |
download | pydora-1d5ab590662037438d14cf842e744683eb210b3b.tar.bz2 pydora-1d5ab590662037438d14cf842e744683eb210b3b.tar.xz pydora-1d5ab590662037438d14cf842e744683eb210b3b.zip |
Configurator freshens keys if config exists
-rw-r--r-- | pydora/configure.py | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/pydora/configure.py b/pydora/configure.py index 824ab03..01de8df 100644 --- a/pydora/configure.py +++ b/pydora/configure.py | |||
@@ -108,8 +108,12 @@ class Configurator(object): | |||
108 | self.builder = PydoraConfigFileBuilder() | 108 | self.builder = PydoraConfigFileBuilder() |
109 | 109 | ||
110 | self.cfg = ConfigParser() | 110 | self.cfg = ConfigParser() |
111 | self.cfg.add_section("user") | 111 | |
112 | self.cfg.add_section("api") | 112 | if self.builder.file_exists: |
113 | self.read_config() | ||
114 | else: | ||
115 | self.cfg.add_section("user") | ||
116 | self.cfg.add_section("api") | ||
113 | 117 | ||
114 | def fail(self, message): | 118 | def fail(self, message): |
115 | print(Screen.print_error(message)) | 119 | print(Screen.print_error(message)) |
@@ -124,7 +128,7 @@ class Configurator(object): | |||
124 | 128 | ||
125 | def get_partner_config(self): | 129 | def get_partner_config(self): |
126 | try: | 130 | try: |
127 | return PandoraKeysConfigParser().load()["ios"] | 131 | return PandoraKeysConfigParser().load()["android"] |
128 | except: | 132 | except: |
129 | self.fail("Error loading config file. Unable to continue.") | 133 | self.fail("Error loading config file. Unable to continue.") |
130 | 134 | ||
@@ -141,13 +145,20 @@ class Configurator(object): | |||
141 | for key, value in config.items(): | 145 | for key, value in config.items(): |
142 | self.cfg.set("api", key, value) | 146 | self.cfg.set("api", key, value) |
143 | 147 | ||
148 | def read_config(self): | ||
149 | with open(self.builder.path) as file: | ||
150 | self.cfg.read_file(file) | ||
151 | |||
144 | def write_config(self): | 152 | def write_config(self): |
145 | with Umask(0o077), open(self.builder.path, "w") as file: | 153 | with Umask(0o077), open(self.builder.path, "w") as file: |
146 | self.cfg.write(file) | 154 | self.cfg.write(file) |
147 | 155 | ||
148 | def configure(self): | 156 | def configure(self): |
149 | if self.builder.file_exists: | 157 | if self.builder.file_exists: |
150 | self.finished("You already have a pydora config!") | 158 | self.print_message("You already have a pydora config.") |
159 | self.add_partner_config(self.get_partner_config()) | ||
160 | self.write_config() | ||
161 | self.finished("Freshened your API keys!") | ||
151 | 162 | ||
152 | self.print_message("Welcome to Pydora, let's configure a few things") | 163 | self.print_message("Welcome to Pydora, let's configure a few things") |
153 | self.add_partner_config(self.get_partner_config()) | 164 | self.add_partner_config(self.get_partner_config()) |