@@ -3,7 +3,7 @@ name: Build
33on : [push, pull_request]
44
55jobs :
6- binaries :
6+ embedded- binaries :
77 runs-on : ubuntu-latest
88 strategy :
99 matrix :
2525 ./target/${{ matrix.target }}/release/neotron-os
2626 ./target/${{ matrix.target }}/release/neotron-os.bin
2727 ./target/${{ matrix.target }}/release/romfs.bin
28- linux-library :
28+ x64_64-unknown- linux-gnu -library :
2929 runs-on : ubuntu-latest
3030 steps :
3131 - uses : actions/checkout@v4
@@ -35,11 +35,11 @@ jobs:
3535 - uses : actions/upload-artifact@v4
3636 if : ${{success()}}
3737 with :
38- name : linux-library
38+ name : x64_64-unknown- linux-gnu -library
3939 if-no-files-found : error
4040 path : |
4141 ./target/release/libneotron_os.so
42- windows-library :
42+ x86_64-pc- windows-msvc -library :
4343 runs-on : windows-latest
4444 steps :
4545 - uses : actions/checkout@v4
@@ -49,27 +49,61 @@ jobs:
4949 - uses : actions/upload-artifact@v4
5050 if : ${{success()}}
5151 with :
52- name : windows-library
52+ name : x86_64-pc- windows-msvc -library
5353 if-no-files-found : error
5454 path : |
5555 ./target/release/neotron_os.dll
56+ ./target/release/neotron_os.dll.exp
57+ ./target/release/neotron_os.dll.lib
58+ ./target/release/neotron_os.pdb
59+ aarch64-apple-darwin-library :
60+ runs-on : macos-latest
61+ steps :
62+ - uses : actions/checkout@v4
63+ with :
64+ submodules : true
65+ - run : cargo nbuild library
66+ - uses : actions/upload-artifact@v4
67+ if : ${{success()}}
68+ with :
69+ name : aarch64-apple-darwin-library
70+ if-no-files-found : error
71+ path : |
72+ ./target/release/libneotron_os.dylib
5673 run-tests :
5774 runs-on : ubuntu-latest
5875 steps :
5976 - uses : actions/checkout@v4
6077 with :
6178 submodules : true
6279 - run : cargo nbuild test
80+ preview-release :
81+ runs-on : ubuntu-latest
82+ needs : [embedded-binaries, x64_64-unknown-linux-gnu-library, x86_64-pc-windows-msvc-library, aarch64-apple-darwin-library, run-tests]
83+ steps :
84+ - run : mkdir ./release
85+ - uses : actions/download-artifact@v4
86+ with :
87+ path : ./release-${{ github.ref_name }}
88+ - run : ls -lR ./release-${{ github.ref_name }}
89+ - run : zip -r ./release-${{ github.ref_name }}.zip ./release-${{ github.ref_name }}
90+ - uses : actions/upload-artifact@v4
91+ if : ${{success()}}
92+ with :
93+ name : release
94+ if-no-files-found : error
95+ path : |
96+ ./release-${{ github.ref_name }}.zip
6397 release :
6498 runs-on : ubuntu-latest
65- needs : [binaries, linux-library, windows-library, run-tests ]
99+ needs : [preview-release ]
66100 if : github.event_name == 'push' && startswith(github.ref, 'refs/tags/')
67101 steps :
68- - run : mkdir ./release
69102 - uses : actions/download-artifact@v4
70103 with :
71- path : ./release
104+ name : release
105+ path : .
72106 - uses : softprops/action-gh-release@v1
73107 with :
74108 files : |
75- ./release/*
109+ ./release-${{ github.ref_name }}.zip
0 commit comments