diff --git a/pelican/__init__.py b/pelican/__init__.py index 96849bae2..2e2b735d6 100644 --- a/pelican/__init__.py +++ b/pelican/__init__.py @@ -547,12 +547,16 @@ def get_config(args): def get_instance(args): - config_file = args.settings - if config_file is None and os.path.isfile(DEFAULT_CONFIG_NAME): - config_file = DEFAULT_CONFIG_NAME - args.settings = DEFAULT_CONFIG_NAME + config_settings_file = args.settings + if config_settings_file is None: + if os.path.isfile(DEFAULT_CONFIG_NAME): + config_settings_file = DEFAULT_CONFIG_NAME + args.settings = DEFAULT_CONFIG_NAME + else: + config_settings_file = "pelicanconf.py" + args.settings = "pelicanconf.py" - settings = read_settings(config_file, override=get_config(args)) + settings = read_settings(config_settings_file, override=get_config(args)) cls = settings["PELICAN_CLASS"] if isinstance(cls, str): diff --git a/pelican/tests/test_pelican.py b/pelican/tests/test_pelican.py index a43afa3ec..39f6fef68 100644 --- a/pelican/tests/test_pelican.py +++ b/pelican/tests/test_pelican.py @@ -295,13 +295,14 @@ def test_main_help(self): def test_main_on_content(self): """Invoke main on simple_content directory.""" + content_subdir = "pelican/tests/simple_content" out, err = io.StringIO(), io.StringIO() with contextlib.redirect_stdout(out), contextlib.redirect_stderr(err): with TemporaryDirectory() as temp_dir: # Don't highlight anything. # See https://rich.readthedocs.io/en/stable/highlighting.html with patch("pelican.console", new=Console(highlight=False)): - main(["-o", temp_dir, "pelican/tests/simple_content"]) + main(["-o", temp_dir, content_subdir]) self.assertIn("Processed 1 article", out.getvalue()) self.assertEqual("", err.getvalue())