You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

27 lines
577B

  1. use std::env;
  2. use errors::Result;
  3. use site::Site;
  4. use crate::console;
  5. pub fn build(
  6. config_file: &str,
  7. base_url: Option<&str>,
  8. output_dir: &str,
  9. include_drafts: bool,
  10. ) -> Result<()> {
  11. let mut site = Site::new(env::current_dir().unwrap(), config_file)?;
  12. site.set_output_path(output_dir);
  13. if let Some(b) = base_url {
  14. site.set_base_url(b.to_string());
  15. }
  16. if include_drafts {
  17. site.include_drafts();
  18. }
  19. site.load()?;
  20. console::notify_site_size(&site);
  21. console::warn_about_ignored_pages(&site);
  22. site.build()
  23. }