-
Notifications
You must be signed in to change notification settings - Fork 0
103 lines (89 loc) · 2.88 KB
/
Copy pathrelease.yml
File metadata and controls
103 lines (89 loc) · 2.88 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
permissions:
contents: write
name: release.yml
on:
push:
tags:
- 'v**'
jobs:
build-macos:
runs-on: macos-15
steps:
- name: Checkout
uses: 'actions/checkout@v5'
with:
lfs: 'true'
- name: Set up Go
uses: 'actions/setup-go@v5'
with:
go-version: '1.25.5'
- name: Install dependencies
run: brew tap slp/krun && brew install golangci-lint libarchive e2fsprogs virglrenderer libepoxy molten-vk bzip2 zlib
- name: Codesign binaries
run: |
echo $MACOS_CERTIFICATE | base64 --decode > certificate.p12
security create-keychain -p action build.keychain
security default-keychain -s build.keychain
security unlock-keychain -p action build.keychain
security import certificate.p12 -k build.keychain -P $MACOS_CERTIFICATE_PWD -T /usr/bin/codesign
security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k action build.keychain
env:
MACOS_CERTIFICATE: ${{ secrets.MACOS_CERTIFICATE }}
MACOS_CERTIFICATE_PWD: ${{ secrets.MACOS_CERTIFICATE_PWD }}
MACOS_CODESIGN_IDENTITY: ${{ secrets.MACOS_CODESIGN_IDENTITY }}
- name: Build
run: go run scripts/build.go
env:
MACOS_CODESIGN_IDENTITY: ${{ secrets.MACOS_CODESIGN_IDENTITY }}
- name: Upload artifact
uses: 'actions/upload-artifact@v4'
with:
name: ovm-darwin
path: |
ovm-*.tar.gz
if-no-files-found: error
overwrite: true
build-linux:
runs-on: ubuntu-24.04-arm
steps:
- name: Checkout
uses: 'actions/checkout@v5'
with:
lfs: 'true'
- name: Set up Go
uses: 'actions/setup-go@v5'
with:
go-version: '1.25.5'
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y wget patchelf libarchive-tools libarchive-dev libext2fs-dev libblkid-dev uuid-dev zstd
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/HEAD/install.sh | sudo sh -s -- -b /usr/local/bin
- name: Build
run: go run scripts/build.go
- name: Upload artifact
uses: 'actions/upload-artifact@v4'
with:
name: ovm-linux
path: |
ovm-*.tar.gz
if-no-files-found: error
overwrite: true
release:
needs: [ build-macos, build-linux ]
runs-on: ubuntu-latest
steps:
- name: Download all artifacts
uses: 'actions/download-artifact@v4'
with:
pattern: ovm-*
merge-multiple: true
- name: Release
uses: softprops/action-gh-release@v2
with:
generate_release_notes: true
files: ovm-*.tar.gz
append_body: true
draft: false
prerelease: false
make_latest: true