-
Notifications
You must be signed in to change notification settings - Fork 9
138 lines (126 loc) · 4.55 KB
/
dev.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
name: Advene dev testing workflow
on:
push:
branches:
- dev
jobs:
windows:
runs-on: windows-latest
strategy:
fail-fast: true
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
# Note: we are using fetch-depth: 0 here to fetch the whole
# history and especially tags, since we use git describe
# afterwards to generate the installer filename.
fetch-depth: 0
- name: setup-msys2
uses: msys2/setup-msys2@v2
with:
msystem: MINGW64
update: true
install: >-
git
dos2unix
mingw-w64-x86_64-gettext
mingw-w64-x86_64-gdk-pixbuf2
mingw-w64-x86_64-librsvg
mingw-w64-x86_64-gtk3
mingw-w64-x86_64-libsoup3
mingw-w64-x86_64-gstreamer
mingw-w64-x86_64-gst-plugins-base
mingw-w64-x86_64-gst-plugins-good
mingw-w64-x86_64-gst-plugins-bad
mingw-w64-x86_64-gst-libav
mingw-w64-x86_64-gst-plugins-ugly
mingw-w64-x86_64-python
mingw-w64-x86_64-cc
mingw-w64-x86_64-pkgconf
mingw-w64-x86_64-gobject-introspection
mingw-w64-x86_64-appstream
- name: Build Installer
env:
BUILD_REF: ${{ github.event.inputs.ref }}
shell: msys2 {0}
run: |
if [[ -z "$BUILD_REF" ]]; then
BUILD_REF="$(git rev-parse --abbrev-ref HEAD)"
fi
cd dev/win_installer
./bootstrap.sh
./build.sh "$BUILD_REF"
cd ../..
ARTIFACT_PATHNAME=$(ls dev/win_installer/advene-*-installer.exe | head -n 1)
ARTIFACT_NAME=$(basename $ARTIFACT_PATHNAME)
echo "ARTIFACT_PATHNAME=${ARTIFACT_PATHNAME}" >> $GITHUB_ENV
echo "ARTIFACT_NAME=${ARTIFACT_NAME}" >> $GITHUB_ENV
- name: Upload Results
uses: actions/upload-artifact@v4
with:
name: Windows installer
path: dev/win_installer/*.exe
macos:
runs-on: macos-latest
env:
ACTIONS_STEP_DEBUG: true
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
# Note: we are using fetch-depth: 0 here to fetch the whole
# history and especially tags, since we use git describe
# afterwards to generate the installer filename.
fetch-depth: 0
- name: Install JHBuild
run: |
cd dev/osx_bundle
./bootstrap.sh
- name: Build dependencies
run: |
cd dev/osx_bundle
./build.sh
- name: Create bundle
run: |
cd dev/osx_bundle
./bundle.sh
cd ../..
ARTIFACT_PATHNAME=$(ls dev/osx_bundle/_build/*.dmg | head -n 1)
ARTIFACT_NAME=$(basename $ARTIFACT_PATHNAME)
echo "ARTIFACT_PATHNAME=${ARTIFACT_PATHNAME}" >> $GITHUB_ENV
echo "ARTIFACT_NAME=${ARTIFACT_NAME}" >> $GITHUB_ENV
- name: "Upload binary as artifact"
uses: actions/upload-artifact@v4
with:
name: MacOSX dmg image
path: dev/osx_bundle/_build/*.dmg
# - name: "Create Release"
# id: create_release
# uses: actions/create-release@v1
# # Do not execute step if we do not have a tag.
# # If we invoke by event trigger, then it
# # will create a refs/heads/master tag which will make a
# # mess. See
# # https://github.com/actions/create-release/issues/13#issuecomment-629741295
# # for more details.
# if: startsWith(github.ref, 'refs/tags/')
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# with:
# tag_name: ${{ github.ref }}
# release_name: Release ${{ github.ref }}
# draft: false
# prerelease: false
#
# - name: "Upload Release Asset"
# id: upload-release-asset
# uses: actions/[email protected]
# if: startsWith(github.ref, 'refs/tags/')
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# with:
# upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps
# asset_path: ${{ env.ARTIFACT_PATHNAME }}
# asset_name: ${{ env.ARTIFACT_NAME }}
# asset_content_type: application/octet-stream