forked from xmake-io/xmake
-
Notifications
You must be signed in to change notification settings - Fork 0
136 lines (122 loc) · 4.29 KB
/
macos.yml
File metadata and controls
136 lines (122 loc) · 4.29 KB
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
name: macOS
on:
pull_request:
push:
release:
types: [published]
jobs:
build:
runs-on: macos-latest
concurrency:
group: ${{ github.ref }}-${{ github.base_ref }}-${{ github.head_ref }}-macOS
cancel-in-progress: true
steps:
- uses: actions/checkout@v2
with:
# WyriHaximus/github-action-get-previous-tag@master need it
fetch-depth: 0
submodules: true
- name: Prepare local xmake
run: cp -rf . ../xmake-source
- uses: xmake-io/github-action-setup-xmake@v1
with:
xmake-version: local#../xmake-source
- uses: little-core-labs/get-git-tag@v3.0.2
id: tagName
- name: Installation
run: |
brew install dmd
- name: Tests
run: |
xmake lua -v -D tests/run.lua
xrepo --version
- name: Artifact
run: |
brew install gnu-tar
gem install --no-document fpm
scripts/makepkg osxpkg
scripts/archive-all
scripts/makeself/build-runfile.sh
- uses: actions/upload-artifact@v2
with:
name: xmake-latest.macosx.pkg
path: artifacts/xmake.pkg
- uses: actions/upload-artifact@v2
with:
name: xmake-latest.gz.run
path: artifacts/xmake.gz.run
- uses: actions/upload-artifact@v2
with:
name: xmake-latest.xz.run
path: artifacts/xmake.xz.run
- uses: actions/upload-artifact@v2
with:
name: xmake-latest.tar.gz
path: artifacts/xmake.tar.gz
- uses: actions/upload-artifact@v2
with:
name: xmake-latest.zip
path: artifacts/xmake.zip
# upload artifacts to latest release
- name: Get Previous tag
id: previoustag
uses: WyriHaximus/github-action-get-previous-tag@master
- name: Upload artifacts to lastest release
if: github.ref == 'refs/heads/master'
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: artifacts/xmake.zip
asset_name: xmake-master.zip
tag: ${{ steps.previoustag.outputs.tag }}
overwrite: true
- name: Publish package
if: github.event.action == 'published'
uses: actions/upload-release-asset@v1.0.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: artifacts/xmake.pkg
asset_name: xmake-${{ steps.tagName.outputs.tag }}.macosx.pkg
asset_content_type: application/zip
- name: Publish gz runfile
if: github.event.action == 'published'
uses: actions/upload-release-asset@v1.0.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: artifacts/xmake.gz.run
asset_name: xmake-${{ steps.tagName.outputs.tag }}.gz.run
asset_content_type: application/zip
- name: Publish xz runfile
if: github.event.action == 'published'
uses: actions/upload-release-asset@v1.0.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: artifacts/xmake.xz.run
asset_name: xmake-${{ steps.tagName.outputs.tag }}.xz.run
asset_content_type: application/zip
- name: Publish gz archive
if: github.event.action == 'published'
uses: actions/upload-release-asset@v1.0.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: artifacts/xmake.tar.gz
asset_name: xmake-${{ steps.tagName.outputs.tag }}.tar.gz
asset_content_type: application/zip
- name: Publish zip archive
if: github.event.action == 'published'
uses: actions/upload-release-asset@v1.0.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: artifacts/xmake.zip
asset_name: xmake-${{ steps.tagName.outputs.tag }}.zip
asset_content_type: application/zip