Beispiel #1
0
 def run_pelican(self, settings):
     implicit_settings = {
         # Contains just stuff that isn't required by the m.css theme itself,
         # but is needed to have the test setup working correctly
         'RELATIVE_URLS': True,
         'TIMEZONE': 'UTC',
         'READERS': {'html': None},
         'SITEURL': '.',
         'PATH': os.path.join(self.path),
         'OUTPUT_PATH': os.path.join(self.path, 'output'),
         'PAGE_PATHS': [''],
         'PAGE_SAVE_AS': '{slug}.html',
         'PAGE_URL': '{slug}.html',
         'PAGE_EXCLUDES': ['output'],
         'ARTICLE_PATHS': ['articles'], # does not exist
         'FEED_ALL_ATOM': None, # Don't render feeds, we're not testing them *ever*
         'THEME': '../pelican-theme',
         'PLUGIN_PATHS': ['.'],
         'THEME_STATIC_DIR': 'static',
         'M_CSS_FILES': ['https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,600i',
            'static/m-dark.css'],
         'M_FINE_PRINT': None,
         'M_DISABLE_SOCIAL_META_TAGS': True,
         'DIRECT_TEMPLATES': [],
         'SLUGIFY_SOURCE': 'basename'
     }
     implicit_settings.update(settings)
     settings = read_settings(path=None, override=implicit_settings)
     pelican = Pelican(settings=settings)
     pelican.run()
Beispiel #2
0
def main():

    args = parse_arguments()
    settings = read_settings(args.settings)

    user = settings['PELICANGIT_USER']
    change_user(user)

    setup_logging()

    source_repo = GitRepo(settings['PELICANGIT_SOURCE_REPO'],
                          settings['PELICANGIT_SOURCE_REMOTE'],
                          settings['PELICANGIT_SOURCE_BRANCH'])

    deploy_repo = GitRepo(settings['PELICANGIT_DEPLOY_REPO'],
                          settings['PELICANGIT_DEPLOY_REMOTE'],
                          settings['PELICANGIT_DEPLOY_BRANCH'],
                          settings['PELICANGIT_DEPLOY_IS_LOCAL_DIR'])

    whitelisted_files = settings['PELICANGIT_WHITELISTED_FILES']

    port = settings['PELICANGIT_PORT']

    httpd = GitHookServer(('', port), GitHookRequestHandler, source_repo,
                          deploy_repo, whitelisted_files)
    logger.info("PelicanGit listening on port " + str(port))
    httpd.serve_forever()
Beispiel #3
0
def main():
    
    args = parse_arguments()
    settings = read_settings(args.settings)
   
    user = settings['PELICANGIT_USER']
    change_user(user)
    
    setup_logging()
    
    source_repo = GitRepo(
        settings['PELICANGIT_SOURCE_REPO'],
        settings['PELICANGIT_SOURCE_REMOTE'],
        settings['PELICANGIT_SOURCE_BRANCH']
    )

    deploy_repo = GitRepo(
        settings['PELICANGIT_DEPLOY_REPO'],
        settings['PELICANGIT_DEPLOY_REMOTE'],
        settings['PELICANGIT_DEPLOY_BRANCH']
    )

    whitelisted_files = settings['PELICANGIT_WHITELISTED_FILES']

    port = settings['PELICANGIT_PORT']

    httpd = GitHookServer(('', port), GitHookRequestHandler, source_repo, deploy_repo, whitelisted_files)
    logger.info("PelicanGit listening on port " + str(port))
    httpd.serve_forever()
Beispiel #4
0
 def run_pelican(self, settings):
     implicit_settings = {
         # Contains just stuff that isn't required by the m.css theme itself,
         # but is needed to have the test setup working correctly
         'RELATIVE_URLS': True,
         'TIMEZONE': 'UTC',
         'READERS': {'html': None},
         'SITEURL': '.',
         'PATH': os.path.join(self.path),
         'OUTPUT_PATH': os.path.join(self.path, 'output'),
         'PAGE_PATHS': [''],
         'PAGE_SAVE_AS': '{slug}.html',
         'PAGE_URL': '{slug}.html',
         'PAGE_EXCLUDES': ['output'],
         'ARTICLE_PATHS': ['articles'], # does not exist
         # Don't render feeds, we don't want to test them all the time
         'FEED_ALL_ATOM': None,
         'CATEGORY_FEED_ATOM': None,
         'THEME': '../pelican-theme',
         'PLUGIN_PATHS': ['.'],
         'THEME_STATIC_DIR': 'static',
         'M_CSS_FILES': ['https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,600i',
            'static/m-dark.css'],
         'M_FINE_PRINT': None,
         'M_DISABLE_SOCIAL_META_TAGS': True,
         'DIRECT_TEMPLATES': [],
         'SLUGIFY_SOURCE': 'basename'
     }
     implicit_settings.update(settings)
     settings = read_settings(path=None, override=implicit_settings)
     pelican = Pelican(settings=settings)
     pelican.run()
    def setUp(self):
        """create a pelican instance"""
        here = os.path.abspath(os.path.dirname(__file__))
        self.settings = read_settings(
            os.path.join(here, 'pelican.conf'),
            override={'PATH': os.path.join(here, 'content')})

        cls = self.settings['PELICAN_CLASS']
        if isinstance(cls, six.string_types):
            module, cls_name = cls.rsplit('.', 1)
            module = __import__(module)
            cls = getattr(module, cls_name)
        self.pelican = cls(self.settings)
Beispiel #6
0
 def run_pelican(self, settings):
     implicit_settings = {
         # Contains just stuff that isn't required by the m.css theme itself,
         # but is needed to have the test setup working correctly
         'RELATIVE_URLS': True,
         'TIMEZONE': 'UTC',
         'READERS': {'html': None},
         'SITEURL': '.',
         'PATH': os.path.join(self.path),
         'OUTPUT_PATH': os.path.join(self.path, 'output'),
         'PAGE_EXCLUDES': [os.path.join(self.path, 'output')],
         'ARTICLE_EXCLUDES': [os.path.join(self.path, 'output')],
         'FEED_ALL_ATOM': None, # Don't render feeds, we're not testing them *ever*
     }
     implicit_settings.update(settings)
     settings = read_settings(path=None, override=implicit_settings)
     pelican = Pelican(settings=settings)
     pelican.run()
Beispiel #7
0
    def run_pelican(self, settings):
        implicit_settings = {
            # Enable this to get proper backtraces
            #'DEBUG': True,

            # Contains just stuff that isn't required by the m.css theme itself,
            # but is needed to have the test setup working correctly
            'RELATIVE_URLS': True,
            'TIMEZONE': 'UTC',
            'READERS': {'html': None},
            'SITEURL': '.',
            'PATH': os.path.join(self.path),
            'OUTPUT_PATH': os.path.join(self.path, 'output'),
            'PAGE_PATHS': [''],
            'PAGE_SAVE_AS': '{slug}.html',
            'PAGE_URL': '{slug}.html',
            'PAGE_EXCLUDES': ['output'],
            'ARTICLE_PATHS': ['articles'], # does not exist
            # Don't render feeds, we don't want to test them all the time
            'FEED_ALL_ATOM': None,
            'CATEGORY_FEED_ATOM': None,
            'THEME': '../pelican-theme',
            'PLUGIN_PATHS': ['.'],
            'THEME_STATIC_DIR': 'static',
            'M_CSS_FILES': ['https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,600i',
               'static/m-dark.css'],
            'M_FINE_PRINT': None,
            'M_DISABLE_SOCIAL_META_TAGS': True,
            'DIRECT_TEMPLATES': [],
            'SLUGIFY_SOURCE': 'basename',

            'DOCUTILS_SETTINGS': {
                # Default changed to '%' in 0.18, keep the old setting to
                # have consistent output across versions
                # TODO maybe change this to '%' everywhere instead?
                'auto_id_prefix': 'id'
            }
        }
        implicit_settings.update(settings)
        settings = read_settings(path=None, override=implicit_settings)
        pelican = Pelican(settings=settings)
        pelican.run()
Beispiel #8
0
 def run_pelican(self, settings):
     implicit_settings = {
         # Contains just stuff that isn't required by the m.css theme itself,
         # but is needed to have the test setup working correctly
         'RELATIVE_URLS': True,
         'TIMEZONE': 'UTC',
         'READERS': {'html': None},
         'SITEURL': '.',
         'PATH': os.path.join(self.path),
         'OUTPUT_PATH': os.path.join(self.path, 'output'),
         'PAGE_EXCLUDES': [os.path.join(self.path, 'output')],
         'ARTICLE_EXCLUDES': [os.path.join(self.path, 'output')],
         # Don't render feeds, we don't want to test them all the time
         'FEED_ALL_ATOM': None,
         'CATEGORY_FEED_ATOM': None
     }
     implicit_settings.update(settings)
     settings = read_settings(path=None, override=implicit_settings)
     pelican = Pelican(settings=settings)
     pelican.run()