-
Notifications
You must be signed in to change notification settings - Fork 1
143 lines (122 loc) · 4.17 KB
/
main.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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
on:
workflow_dispatch:
push:
branches:
- 'main'
pull_request:
branches:
- 'main'
env:
SOURCE_DIR: ${{ github.workspace }}
QT_VERSION: 5.9.9
ARTIFACT: build-assets
name: Create Release
jobs:
build:
runs-on: windows-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: 3.11
- name: Install dependencies
working-directory: "${{ env.SOURCE_DIR }}/src/gui"
run: |
pip install cx-Freeze
pip install -r requirements.txt
- name: Freeze the application
working-directory: "${{ env.SOURCE_DIR }}/src/gui"
run: python setup.py build
- name: Upload Artifact
uses: actions/upload-artifact@v2
with:
name: windows-app
path: "${{ env.SOURCE_DIR }}/src/gui/build/exe.win-amd64-3.11"
release:
name: Release
runs-on: ubuntu-latest
needs: [build]
steps:
- name: Checkout repo
uses: actions/checkout@v2
with:
submodules: false
lfs: true
- id: download-nifskope-converter
uses: robinraju/[email protected]
with:
repository: "terry-haire/nifskope"
latest: true
out-file-path: "${{ env.SOURCE_DIR }}/build/nifskope_converter/release/"
extract: true
- id: download-xedit-converter
uses: robinraju/[email protected]
with:
repository: "terry-haire/TES5Edit"
latest: true
out-file-path: "${{ env.SOURCE_DIR }}/build/xedit_converter/"
extract: true
- name: Download windows-app artifact
uses: actions/download-artifact@v2
with:
name: windows-app
path: ${{ runner.temp }}/windows-app
- name: Zip Folder
shell: bash
working-directory: ${{ env.SOURCE_DIR }}
run: |
rm "${{ fromJson(steps.download-nifskope-converter.outputs.downloaded_files)[0] }}"
rm "${{ fromJson(steps.download-xedit-converter.outputs.downloaded_files)[0] }}"
mkdir ${{ runner.temp }}/assets
cd ${{ runner.temp }}/windows-app
zip -r ${{ runner.temp }}/assets/${{ env.ARTIFACT }}.zip ./*
cd ${{ env.SOURCE_DIR }}
zip -r ${{ runner.temp }}/assets/${{ env.ARTIFACT }}.zip \
./build/nifskope_converter/release/ \
./build/xedit_converter/ \
./src/models-and-animations/elric/ \
./src/convert.ps1 \
./src/data/ \
./src/plugins/xEdit/ \
./src/gui/templates.json \
./convert.bat \
./README.md \
./images/ \
./bin/
- name: Save build artifact
uses: actions/upload-artifact@v3
with:
name: ${{ env.ARTIFACT }}
path: |
${{ runner.temp }}/assets/${{ env.ARTIFACT }}.zip
# - name: Conventional Changelog Action
# uses: TriPSs/conventional-changelog-action@v3
# with:
# github-token: ${{ secrets.github_token }}
- name: Create Release
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
id: create-release
uses: actions/create-release@v1
# if: ${{ steps.changelog.outputs.skipped == 'false' }}
env:
GITHUB_TOKEN: ${{ secrets.github_token }}
with:
# tag_name: ${{ steps.changelog.outputs.tag }}
# release_name: ${{ steps.changelog.outputs.tag }}
# body: ${{ steps.changelog.outputs.clean_changelog }}
tag_name: v${{ github.run_number }}
release_name: v${{ github.run_number }}
draft: false
prerelease: true
- name: Upload Release Asset
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create-release.outputs.upload_url }}
asset_path: ${{ runner.temp }}/assets/${{ env.ARTIFACT }}.zip
asset_name: fnv-to-fo4-v${{ github.run_number }}.zip
asset_content_type: application/zip