def serve_forever(self, host="0.0.0.0", port=8000): echo.info("Start server at http://%s:%s", host, port) try: make_server(host, int(port), self.wsgi).serve_forever() except KeyboardInterrupt: sys.exit()
def build(self): echo.info("start, output to %s", self._site_dir) self._build_assets() echo.info("parsing pickys...") pickys = self._parse_pickys() echo.info("parsing posts...") posts, tags = self._parse_posts() echo.info("building pickys...") self._build_pickys(pickys) echo.info("building posts...") self._build_posts(posts) echo.info("building tags...") self._build_tags(tags) # home echo.info("building index...") template = self._jinja.get_template("home.html") home_posts = filter(lambda post: post.slug not in self._privacies, posts[:self.HomePosts]) html = template.render(posts=home_posts) write_file(os.path.join(self._site_dir, "index.html"), html) # feed echo.info("building feed...") template = self._jinja.get_template("feed.xml") xml = template.render(posts=posts[:self.FeedPosts]) write_file(os.path.join(self._page_dir, "feed.xml"), xml) # 404 echo.info("building 404...") template = self._jinja.get_template("e404.html") html = template.render() write_file(os.path.join(self._page_dir, "e404.html"), html)
def build(self): echo.info("start, output to %s", self._site_dir) self._build_assets() echo.info("parsing pickys...") pickys = self._parse_pickys() echo.info("parsing posts...") posts, tags = self._parse_posts() echo.info("building pickys...") self._build_pickys(pickys) echo.info("building posts...") self._build_posts(posts) echo.info("building tags...") self._build_tags(list(tags)) # home echo.info("building index...") template = self._jinja.get_template("home.html") home_posts = filter( lambda post: post.slug not in self._privacies, posts[:self.HOME_POSTS] ) html = template.render(posts=home_posts) write_file(os.path.join(self._site_dir, "index.html"), html) # feed echo.info("building feed...") template = self._jinja.get_template("feed.xml") xml = template.render(posts=posts[:self.FEED_POSTS]) write_file(os.path.join(self._page_dir, "feed.xml"), xml) # 404 echo.info("building 404...") template = self._jinja.get_template("e404.html") html = template.render() write_file(os.path.join(self._page_dir, "e404.html"), html)