-
Notifications
You must be signed in to change notification settings - Fork 55
82 lines (74 loc) · 2.21 KB
/
push.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
name: Push
on:
push:
branches:
- master
- development
workflow_dispatch:
workflow_call:
secrets:
WWISE_EMAIL:
required: true
WWISE_PASSWORD:
required: true
GH_TOKEN:
required: true
WEBHOOK_URL:
required: true
permissions:
actions: read
contents: write
jobs:
filter:
name: Filter
runs-on: ubuntu-latest
outputs:
build-mod: ${{ steps.filter.outputs.mod }}
build-tools: ${{ steps.filter.outputs.tools }}
generate-docs: ${{ steps.filter.outputs.gen-docs }}
steps:
- uses: actions/checkout@v4
- uses: dorny/paths-filter@v3
id: filter
with:
filters: |
mod:
- ".github/workflows/build.yml"
- "FicsItNetworks.uplugin"
- "Content/**"
- "Source/**"
- "ThirdParty/**"
gen-docs:
- ".github/workflows/gen-docs.yml"
update-draft:
- ".github/workflows/update-release-draft.yml"
tools:
- ".github/workflows/build-tools.yml"
- "Tools/DocumentationCLI"
update-docs:
- ".github/workflows/update-docs.yml"
build:
needs: filter
if: needs.filter.outputs.build-mod == 'true'
uses: ./.github/workflows/build.yml
secrets:
WWISE_EMAIL: ${{ secrets.WWISE_EMAIL }}
WWISE_PASSWORD: ${{ secrets.WWISE_PASSWORD }}
GH_TOKEN: ${{ secrets.GH_TOKEN }}
WEBHOOK_URL: ${{ secrets.WEBHOOK_URL }}
update-draft:
needs: build
if: always() && (needs.build.result == 'success' || needs.filter.outputs.update-draft == 'true')
uses: ./.github/workflows/update-release-draft.yml
generate-docs:
needs: [filter, build]
if: always() && (needs.build.result == 'success' || needs.filter.outputs.generate-docs == 'true')
uses: ./.github/workflows/gen-docs.yml
tools:
needs: filter
if: needs.filter.outputs.build-tools
uses: ./.github/workflows/build-tools.yml
update-docs:
needs: [filter, generate-docs, tools]
if: always() && (needs.generate-docs.result == 'success' || needs.tools.result == 'success' || needs.filter.outputs.update-docs == 'true')
uses: ./.github/workflows/update-docs.yml