Пример #1
0
 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()
Пример #2
0
    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)
Пример #3
0
    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)
Пример #4
0
 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()