blob: 54a2abe5ca57f80aac17d8b10516b067810cf580 (
plain)
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
|
name: Release candidate
on: workflow_dispatch
permissions:
contents: read
jobs:
windows:
runs-on: windows-2022
strategy:
fail-fast: true
matrix:
versions:
- osarch: "windows-x86_64"
arch: "x64"
cabal_opts: '-fembed_data_files -fserver -flua'
steps:
- uses: actions/checkout@v6
- name: Install ghc
run: |
ghcup install ghc --set 9.10
ghcup install cabal --set 3.14
- name: Install dependencies
run: |
cabal update
cabal build ${{ matrix.versions.cabal_opts }} --dependencies-only pandoc-cli
- name: Create windows package
shell: cmd
run: |
for /f %%a in ('powershell -Command "Get-Date -format yyyy-MM-dd"') do set THEDATE=%%a
cabal build ${{ matrix.versions.cabal_opts }} pandoc-cli
for /f "delims=" %%a in ('cabal list-bin ${{ matrix.versions.cabal_opts }} pandoc-cli') do set BINPATH=%%a
echo BINPATH is %BINPATH%
for /f "tokens=1-2 delims= " %%a in ('cabal run ${{ matrix.versions.cabal_opts }} pandoc-cli -- --version') do (
@set VERSION=%%b
goto :next
)
:next
if "%VERSION%" == "" (
echo Error: could not determine version number.
exit /b 1
)
echo Detected version %VERSION%
@set WINDOWS=%CD%\windows
@set RELEASE=%WINDOWS%\pandoc-%VERSION%
mkdir %RELEASE%
copy %BINPATH% %RELEASE%
%BINPATH% -s --toc MANUAL.txt -o %RELEASE%\MANUAL.html
%BINPATH% -s COPYING.md -t rtf -o %RELEASE%\COPYING.rtf
copy %RELEASE%\COPYING.rtf %WINDOWS%
copy COPYRIGHT %RELEASE%\COPYRIGHT.txt
cd windows
echo Creating msi...
dir
@set WIXBIN="c:\Program Files (x86)\WiX Toolset v3.14\bin"
@set WORKDIR=%CD%
echo Running candle...
%WIXBIN%\candle -arch ${{ matrix.versions.arch }} -dVERSION=%VERSION% -dBINPATH=%RELEASE% *.wxs -out wixobj\
if %errorlevel% neq 0 exit /b %errorlevel%
echo Running light...
%WIXBIN%\light -sw1076 -ext WixUIExtension -ext WixUtilExtension -cultures:en-us -loc Pandoc-en-us.wxl -out %WORKDIR%\pandoc-%VERSION%-${{ matrix.versions.osarch }}-UNSIGNED.msi wixobj\*.wixobj
7z a "pandoc-%VERSION%-${{ matrix.versions.osarch }}.zip" pandoc-%VERSION%
cd ..
mkdir windows-release-candidate
copy windows\pandoc-%VERSION%-${{ matrix.versions.osarch }}-UNSIGNED.msi windows-release-candidate
copy windows\pandoc-%VERSION%-${{ matrix.versions.osarch }}.zip windows-release-candidate
copy windows\Makefile windows-release-candidate
- uses: actions/upload-artifact@v6
with:
name: windows-release-candidate
path: windows-release-candidate
- uses: signpath/github-action-submit-signing-request@v2
with:
api-token: '${{ secrets.SIGNPATH_API_TOKEN }}'
organization-id: 'd330f023-29aa-44e4-b90b-ae1c570f4a25'
project-slug: 'pandoc'
signing-policy-slug: 'test-signing'
github-artifact-id: '${{ steps.upload-unsigned-artifact.outputs.artifact-id }}'
wait-for-completion: true
output-artifact-directory: 'windows-release-candidate-signed'
macos:
runs-on: macos-15-intel
steps:
- uses: actions/checkout@v6
- name: Install ghcup
run: |
brew install ghcup
- name: Install ghc and cabal
run: |
ghcup install ghc --set 9.10
ghcup install cabal --set 3.14
echo "$HOME/.ghcup/bin" >> "${GITHUB_PATH}"
- name: Create release
run: |
sh macos/make_macos_release.sh
- uses: actions/upload-artifact@v6
with:
name: macos-x86_64
path: macos-x86_64
# linux:
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v6
# - name: Create linux package
# run: |
# make debpkg
# mkdir linux-release-candidate
# cp linux/artifacts/*.deb linux-release-candidate/
# cp linux/artifacts/*.tar.gz linux-release-candidate/
# - uses: actions/upload-artifact@v6
# with:
# name: linux-release-candidate
# path: linux-release-candidate
|