MarkdownをLatexにしてPDFにして、GithubのReleaseからダウンロードできるアクションを作る
pandocとxu-cheng/latex-action
を使ってMarkdonwを Latexを経由してPDFにしてReleaseする
こんな感じ
注意点
Releaseのタグネームを github.sha
にしたらうまくいかなかったので暫定的にgithub.ref
にしている
原因はgithub.sha
で取れる文字列が41文字だからな気がする
→毎回新しいタグ打てばいい気がする
- name: Create Release
id: create_release
uses: actions/create-release@v1.0.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
draft: false
prerelease: false
リポジトリ
https://github.com/nozo-moto/latex-to-pdf.try
actionコード
name: CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: docker://pandoc/latex:2.6
with:
args: -sN -f markdown -t latex README.md -o README.tex
- name: Compile LaTeX document
uses: xu-cheng/latex-action@master
with:
name: get compiled tex file
path: README.tex
root_file: README.tex
- name: Create Release
id: create_release
uses: actions/create-release@v1.0.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
draft: false
prerelease: false
- name: Upload Release Asset
id: upload-release-asset
uses: actions/upload-release-asset@v1.0.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./README.pdf
asset_name: README.pdf
asset_content_type: application/pdf
感想
Github Actionsのsteps
間のファイルの受け渡しが謎
→うまく行かないときはwith.path
を使えばなんかうまくいく