-
Notifications
You must be signed in to change notification settings - Fork 62
119 lines (103 loc) · 4.58 KB
/
docs.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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
name: Collection Docs
concurrency:
group: docs-pr-${{ github.head_ref }}
cancel-in-progress: true
on:
pull_request_target:
types: [opened, synchronize, reopened, closed]
env:
SURGE_PR_SITE: community-hashi-vault-pr${{ github.event.number }}.surge.sh
SURGE_MAIN_SITE: community-hashi-vault-main.surge.sh
GHP_BASE_URL: https://${{ github.repository_owner }}.github.io/${{ github.event.repository.name }}
jobs:
# this job builds with the most strict options to ensure full compliance
# does not use the collection's committed sphinx-init output
validate-docs:
permissions:
contents: read
name: Validate Ansible Docs
if: github.event.action != 'closed'
uses: ansible-community/github-docs-build/.github/workflows/_shared-docs-build-push.yml@main
with:
artifact-upload: false
init-lenient: false
init-fail-on-error: true
build-ref: refs/pull/${{ github.event.number }}/merge
# this job builds for the PR comparison and publish, so use the most lenient options
# to give the best possibility of producing a publishable build; the strict build will
# still result in a failure for the PR as a whole, but for review a partial docsite is
# better than none.
# This uses the committed sphinx-init output which already has the lenient options.
build-docs:
permissions:
contents: read
name: Build Ansible Docs
uses: ansible-community/github-docs-build/.github/workflows/_shared-docs-build-pr.yml@main
with:
init-dest-dir: docs/preview
render-file-line: '> * `$<status>` [$<path_tail>](https://${{ github.repository_owner }}.github.io/${{ github.event.repository.name }}/pr/${{ github.event.number }}/$<path_tail>)'
# publish-docs-surge:
# # for now we won't run this on forks
# if: github.repository == 'ansible-collections/community.hashi_vault'
# permissions:
# contents: read
# needs: [build-docs]
# name: Publish Ansible Docs
# uses: ansible-community/github-docs-build/.github/workflows/_shared-docs-build-publish-surge.yml@main
# with:
# artifact-name: ${{ needs.build-docs.outputs.artifact-name }}
# surge-site-name: community-hashi-vault-pr${{ github.event.number }}.surge.sh
# action: ${{ (github.event.action == 'closed' || needs.build-docs.outputs.changed != 'true') && 'teardown' || 'publish' }}
# secrets:
# SURGE_TOKEN: ${{ secrets.SURGE_TOKEN }}
publish-docs-gh-pages:
# for now we won't run this on forks
if: github.repository == 'ansible-collections/community.hashi_vault'
permissions:
contents: write
pages: write
id-token: write
needs: [build-docs]
name: Publish Ansible Docs
uses: ansible-community/github-docs-build/.github/workflows/_shared-docs-build-publish-gh-pages.yml@main
with:
artifact-name: ${{ needs.build-docs.outputs.artifact-name }}
action: ${{ (github.event.action == 'closed' || needs.build-docs.outputs.changed != 'true') && 'teardown' || 'publish' }}
secrets:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
comment:
permissions:
pull-requests: write
runs-on: ubuntu-latest
needs: [build-docs, publish-docs-gh-pages]
name: PR comments
steps:
- name: PR comment
env:
PR_SITE_URL: https://${{ env.SURGE_PR_SITE }}
MAIN_SITE_URL: https://${{ env.SURGE_MAIN_SITE }}
uses: ansible-community/github-docs-build/actions/ansible-docs-build-comment@main
with:
body-includes: '## Docs Build'
reactions: heart
action: ${{ needs.build-docs.outputs.changed != 'true' && 'remove' || '' }}
on-closed-body: |
## Docs Build 📝
This PR is closed and any previously published docsite has been unpublished.
on-merged-body: |
## Docs Build 📝
Thank you for contribution!✨
This PR has been merged and the docs are now incorporated into `main`:
${{ env.GHP_BASE_URL }}/branch/main
body: |
## Docs Build 📝
Thank you for contribution!✨
The docs for **this PR** have been published here:
${{ env.GHP_BASE_URL }}/pr/${{ github.event.number }}
You can compare to the docs for the `main` branch here:
${{ env.GHP_BASE_URL }}/branch/main
The docsite for **this PR** is also available for download as an artifact from this run:
${{ needs.build-docs.outputs.artifact-url }}
File changes:
${{ needs.build-docs.outputs.diff-files-rendered }}
${{ needs.build-docs.outputs.diff-rendered }}