| 148 | |
| 149 | |
| 150 | def _get_parser(): |
| 151 | |
| 152 | def list_str(values): |
| 153 | return values.split(",") |
| 154 | |
| 155 | parser = argparse.ArgumentParser( |
| 156 | description=ASCII_BANNER, |
| 157 | formatter_class=argparse.RawDescriptionHelpFormatter |
| 158 | ) |
| 159 | parser.add_argument( |
| 160 | "-E", |
| 161 | "--environment", |
| 162 | required=False, |
| 163 | default="local", |
| 164 | help="Select an env. file to use", |
| 165 | ) |
| 166 | parser.add_argument( |
| 167 | "-l", |
| 168 | "--log", |
| 169 | dest="logLevel", |
| 170 | choices=["DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL"], |
| 171 | help="Set the logging level", |
| 172 | default="INFO", |
| 173 | ) |
| 174 | parser.add_argument( |
| 175 | "--fresh", |
| 176 | action="store_true", |
| 177 | required=False, |
| 178 | default=False, |
| 179 | help="remove object_store on start", |
| 180 | ) |
| 181 | parser.add_argument( |
| 182 | "-P", |
| 183 | "--plugins", |
| 184 | required=False, |
| 185 | default=os.listdir("plugins"), |
| 186 | help="Start up with a single plugin", |
| 187 | type=list_str, |
| 188 | ) |
| 189 | parser.add_argument( |
| 190 | "--insecure", |
| 191 | action="store_true", |
| 192 | required=False, |
| 193 | default=False, |
| 194 | help='Start caldera with insecure default config values. Equivalent to "-E default".', |
| 195 | ) |
| 196 | parser.add_argument( |
| 197 | "--uidev", |
| 198 | dest="uiDevHost", |
| 199 | help="Start VueJS dev server for front-end alongside the caldera server. Provide hostname, i.e. localhost.", |
| 200 | ) |
| 201 | parser.add_argument( |
| 202 | "--build", |
| 203 | action="store_true", |
| 204 | required=False, |
| 205 | default=False, |
| 206 | help="Build the VueJS front-end to serve it from the caldera server.", |
| 207 | ) |