mirror of
https://github.com/getpelican/pelican.git
synced 2025-10-15 20:28:56 +02:00
Static site generator that supports Markdown and reST syntax. Powered by Python.
- Python 85.3%
- CSS 8.7%
- Jinja 6%
Combine `build.yml` and `github_pages.yml` into a single workflow file. Having `build.yml` be a separate workflow file that `github_pages.yml` calls has two problems: 1. All the inputs (and their types, descriptions, defaults) have to be duplicated in the two workflow files. 2. The reference to `@main` in `uses: "getpelican/pelican/.github/workflows/build.yml@main"` in the `github_pages.yml` workflow makes development and testing awkward. For example let's say you want to send a pull request that contains changes to `build.yml` and that also requires changes to `github_pages.yml` at the same time. The problem is that the `github_pages.yml` on your PR branch will still contain the reference to `build.yml` `@main` so if you try to test the branch's version of `github_pages.yml` it'll call the version of `build.yml` from `main` not from the PR branch and will fail. This commit move the build job from `build.yml` into `github_pages.yml` but makes the deploy job optional: it adds a `deploy` input and will only run the deploy job if `deploy = true` is passed. Previously a user could test their build without deploying it by calling the separate `build.yml` workflow. Now they can do it by calling the `github_pages.yml` workflow and passing `deploy=false`. This commit also moves the `concurrency` stuff from the workflow level to the deploy level: it's okay to have multiple build jobs running concurrently, just not multiple deploy jobs. |
||
|---|---|---|
| .github | ||
| docs | ||
| pelican | ||
| requirements | ||
| samples | ||
| .coveragerc | ||
| .editorconfig | ||
| .git-blame-ignore-revs | ||
| .gitattributes | ||
| .gitignore | ||
| .mailmap | ||
| .pre-commit-config.yaml | ||
| .readthedocs.yaml | ||
| .vale.ini | ||
| CONTRIBUTING.rst | ||
| LICENSE | ||
| pyproject.toml | ||
| README.rst | ||
| tasks.py | ||
| THANKS | ||
| tox.ini | ||
Pelican |build-status| |pypi-version| |downloads| |repology| ============================================================ Pelican is a static site generator, written in Python_, that allows you to create web sites by composing text files in formats such as Markdown, reStructuredText, and HTML. With Pelican, you can create web sites without worrying about databases or server-side programming. Pelican generates static sites that can be served via any web server or hosting service. You can perform the following functions with Pelican: * Compose content in Markdown_ or reStructuredText_ using your editor of choice * Simple command-line tool (re)generates HTML, CSS, and JS from your source content * Easy to interface with version control systems and web hooks * Completely static output is simple to host anywhere Features -------- Pelican’s feature highlights include: * Chronological content (e.g., articles, blog posts) as well as static pages * Integration with external services * Site themes (created using Jinja2_ templates) * Publication of articles in multiple languages * Generation of Atom and RSS feeds * Code syntax highlighting via Pygments_ * Import existing content from WordPress, Dotclear, or RSS feeds * Fast rebuild times due to content caching and selective output writing * Extensible via a rich plugin ecosystem: `Pelican Plugins`_ Check out the `Pelican documentation`_ for further information. How to get help, contribute, or provide feedback ------------------------------------------------ See our `contribution submission and feedback guidelines <CONTRIBUTING.rst>`_. Source code ----------- Pelican’s source code is `hosted on GitHub`_. For information on how it works, have a look at `Pelican's internals`_. Why the name “Pelican”? ----------------------- “Pelican” is an anagram of *calepin*, which means “notebook” in French. .. Links .. _Python: https://www.python.org/ .. _reStructuredText: http://docutils.sourceforge.net/rst.html .. _Markdown: https://daringfireball.net/projects/markdown/ .. _Jinja2: https://palletsprojects.com/p/jinja/ .. _Pygments: https://pygments.org/ .. _`Pelican Plugins`: https://github.com/pelican-plugins .. _`Pelican documentation`: https://docs.getpelican.com/ .. _`Pelican's internals`: https://docs.getpelican.com/en/latest/internals.html .. _`hosted on GitHub`: https://github.com/getpelican/pelican .. |build-status| image:: https://img.shields.io/github/actions/workflow/status/getpelican/pelican/main.yml?branch=main :target: https://github.com/getpelican/pelican/actions/workflows/main.yml?query=branch%3Amain :alt: GitHub Actions CI: continuous integration status .. |pypi-version| image:: https://img.shields.io/pypi/v/pelican.svg :target: https://pypi.org/project/pelican/ :alt: PyPI: the Python Package Index .. |downloads| image:: https://img.shields.io/pypi/dm/pelican.svg :target: https://pypi.org/project/pelican/ :alt: Monthly Downloads from PyPI .. |repology| image:: https://repology.org/badge/tiny-repos/pelican.svg :target: https://repology.org/project/pelican/versions :alt: Repology: the packaging hub