-
Notifications
You must be signed in to change notification settings - Fork 52
/
action.yml
61 lines (61 loc) · 2.35 KB
/
action.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
name: 'Publish Quarto project'
author: 'Carlos Scheidegger'
description: 'This action will publish an existing quarto project'
inputs:
to:
description: 'Service to publish to. If unspecified, use the default value derived from _publish.yml'
required: false
target:
description: 'Alias for `to`. If unspecified, use the default value derived from _publish.yml'
required: false
CONNECT_SERVER:
description: 'RStudio Connect server. If unspecified, use the default value derived from _publish.yml'
required: false
CONNECT_API_KEY:
description: 'RStudio Connect API key. (Use with github actions secrets: see documentation and examples for details)'
required: false
NETLIFY_AUTH_TOKEN:
description: 'Netlify Auth Token. (Use with github actions secrets: see documentation and examples for details)'
required: false
QUARTO_PUB_AUTH_TOKEN:
description: 'Quarto Pub Auth Token. (Use with github actions secrets: see documentation and examples for details)'
required: false
GITHUB_EMAIL:
description: 'Email to be used on gh-pages commit'
required: false
default: [email protected]
GITHUB_USERNAME:
description: 'User name to be used on gh-pages commit'
required: false
default: Quarto GHA Workflow Runner
path:
description: 'Subdirectory containing the quarto project to be published'
required: false
default: "."
render:
description: 'If not true, do not render project before publishing'
required: false
default: "true"
runs:
using: 'composite'
steps:
- name: 'Publish'
shell: bash
env:
QUARTO_PRINT_STACK: true
CONNECT_SERVER: ${{ inputs.CONNECT_SERVER }}
CONNECT_API_KEY: ${{ inputs.CONNECT_API_KEY }}
NETLIFY_AUTH_TOKEN: ${{ inputs.NETLIFY_AUTH_TOKEN }}
QUARTO_PUB_AUTH_TOKEN: ${{ inputs.QUARTO_PUB_AUTH_TOKEN }}
run: |
git config --global user.email "${{ inputs.GITHUB_EMAIL }}"
git config --global user.name "${{ inputs.GITHUB_USERNAME }}"
TARGET="${{ inputs.to }}"
if [ "$TARGET" == "" ]; then
TARGET="${{ inputs.target }}"
fi
if [ "${{ inputs.render }}" != "true" ]; then
quarto publish $TARGET ${{ inputs.path }} --no-render --no-browser
else
quarto publish $TARGET ${{ inputs.path }} --no-browser
fi