diff --git a/Dockerfile b/Dockerfile index 62bfa61..a414319 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,8 @@ -FROM docker:stable +FROM docker:stable AS docker-cli -WORKDIR /src -COPY entrypoint.sh ./ +FROM alpine + +COPY --from=docker-cli /usr/local/bin/docker /usr/local/bin/docker + +COPY entrypoint.sh /src/ ENTRYPOINT /src/entrypoint.sh diff --git a/README.md b/README.md index e2504aa..bc7a9c7 100644 --- a/README.md +++ b/README.md @@ -1 +1,43 @@ -# action-latexmk \ No newline at end of file +# action-latexmk + +このアクションは指定されたファイルを`latexmk`コマンドでコンパイルします。 +DooD(Docker outside of Docker)を使っているため、任意Dockerイメージが利用可能です。 + +## Inputs + +### `docker-image` + +**必須** `latexmk`コマンドを実行するためのレジストリで公開されている Docker イメージ + +### `build-files` + +**必須** 1行ごとに区切られたビルドするファイルリスト +(`host-workspace`からの相対パス) +デフォルトは`actions/checkout`でチェックアウトされるパスです。 + +### `host-workspace` + +**任意** ビルドするファイルのディレクトリ +(ホストVMの絶対パス) +このパスがDockerコンテナにマウントされます。 + +### `container-workdir` + +**任意** コンテナ内のワークディレクトリ +このパスへDockerコンテナにマウントされます。 + +### `latexmk-options` +**任意** `latexmk`コマンド実行時のオプション + +## 使用例 + +```yaml +- name: Build LaTeX files + uses: satackey/action-latexmk@v1 + with: + docker-image: paperist/alpine-texlive-ja + build-files: | + hoge/main.tex + fuga/main.tex + piyo/main.tex +``` diff --git a/action.yml b/action.yml index 997f2f0..31d7314 100644 --- a/action.yml +++ b/action.yml @@ -6,6 +6,10 @@ inputs: description: 'Docker image to execute latexmk command' required: true + build-files: + description: 'List of TeX files separated by lines to build' + required: true + host-workspace: description: 'Location of directory to build' required: false @@ -15,10 +19,6 @@ inputs: required: false default: /work - build-files: - description: 'List of TeX files separated by lines to build' - required: true - latexmk-options: required: false @@ -27,8 +27,8 @@ branding: color: green runs: - using: 'docker' - image: 'Dockerfile' + using: docker + image: docker://satackey/action-latexmk:v1.0.0 env: BUILD_IMAGE: ${{ inputs.docker-image }} HOST_WORKSPACE: ${{ inputs.host-workspace }}