Simple LaTeX CI/CD Template

This page summarizes the projects mentioned and recommended in the original post on /r/LaTeX

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • latex-docker

    :whale: Docker Image of TeXLive

  • The main reason of utilizing Cheng Xu's latex-action is that we are utilizing GitHub Actions, and I believe this is best option, in terms of ease of configurability and usability, for compiling LaTeX documents with GitHub Actions. The action pulls the docker image created by Xu as well, and I believe this is the part that you have issue with. However, best of my knowledge, there is not an "Official Docker Image" on DockerHub, nor an official GitHub Action that compiles LaTeX projects. Please share the ones that you refer as "official ones", I would be happy to integrate them.

  • latex-action

    :octocat: GitHub Action to compile LaTeX documents

  • The main purpose of this template is not to automate the compilation process, as you've said it would be too slow, and there are tools that provides this service, if needed, such as Cheng Xu's latex-action. It provides an automation for creating milestones in your LaTeX project. For example, you have completed an iteration of the project, say v01, you tag the last commit and push to GitHub remote. That state of the project is saved as a release, and the PDF file generated from those source files are also added to that release.

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • latex-ci-template

    Template for writing CI enabled, tag-versioned LaTeX documents.

  • I created a simple LaTeX CI/CD Template on GitHub that we started using daily with our research group. When a git-tagged commit is pushed, the LaTeX project is automatically compiled, and a GitHub Release is created that stores the current state of the project, along with the output PDF.

  • starter-workflows

    Accelerating new GitHub Actions workflows

  • Due to the way the GitHub Actions is set up, you need to initialize the node that is assigned to you, so that you can compile LaTeX projects. As far as I understand, the best way to do so is by utilizing docker images. Cheng Xu's latex-action provides an easy configuration for any type of project hierarchy, and it is the most starred GitHub Action that automates compilation of a LaTeX project.

  • action-gh-release

    📦 :octocat: GitHub Action for creating GitHub Releases

  • Alternatively, if you do not want to use the LaTeX compilation process on GitHub Actions, you can omit the building process and track the locally generated PDF file as well. Usually binary files, PDF files in this case, are not tracked. You can remove the Compile LaTeX Document step in the .github/workflows/release.yml file, and start tracking the output PDF in your repository. By this way, you can move the compilation process to local. However, if you follow this path, by default, you will not have your output PDF listed under releases. It is possible to achieve this by editing the Release step in the workflow (see action-gh-release for more information).

  • images

  • Yup, the (more) official or canonical images are provided by Island of TeX (also available on docker.io): https://gitlab.com/islandoftex/images/texlive

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts