CI/CD
TexOps supports headless builds in CI pipelines. Commit your .texops.yaml to the repository, create an API token, and set it as an environment variable.
Create an API token
tx token create --name "GitHub Actions" --expires-in 90d
warning
The token is displayed once and cannot be retrieved again.
Copy it to your CI provider's secret storage.
The --expires-in flag accepts a positive integer followed by d (days) or y (years), up to 10 years. Use --no-expiry for tokens that don't expire. In non-interactive mode, one of --expires-in or --no-expiry is required.
Set TX_API_TOKEN
The TX_API_TOKEN environment variable takes priority over all other credential sources (keyring and credentials file). Set it to your API token in your CI configuration.
GitHub Actions
.github/workflows/build.yml
name: Build LaTeX
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install tx
run: curl -fsSL https://raw.githubusercontent.com/texops/tx/main/scripts/install.sh | sh
- name: Build paper
env:
TX_API_TOKEN: ${{ secrets.TEXOPS_TOKEN }}
run: tx build
Other install methods:
- Download binary to the current directory (no install):
curl -fsSL https://raw.githubusercontent.com/texops/tx/main/scripts/download.sh | sh - From source (requires Go):
go install github.com/texops/tx/cmd/tx@latest
Manage tokens
List all tokens with their prefix, expiry, and last-used date:
tx token list
Delete a token by name:
tx token delete "GitHub Actions"