@@ -59,70 +59,87 @@ jobs:
5959
6060 self :
6161 name : Self Check
62- runs-on : ubuntu-latest
62+ strategy :
63+ matrix :
64+ os : [ubuntu-latest]
65+ include :
66+ - os : ubuntu-latest
67+ target : x86_64-unknown-linux-musl
68+ runs-on : ${{ matrix.os }}
69+ env :
70+ TARGET : x86_64-unknown-linux-musl
6371 steps :
6472 - uses : actions/checkout@v1
6573 - uses : actions-rs/toolchain@v1
6674 with :
6775 toolchain : stable
6876 override : true
77+ target : ${{ matrix.target }}
78+ - name : Install musl tools
79+ if : matrix.os == 'ubuntu-latest'
80+ run : |
81+ sudo apt-get install -y musl-tools
6982 - name : cargo fetch
7083 uses : actions-rs/cargo@v1
7184 with :
7285 command : fetch
86+ args : --target ${{ matrix.target }}
7387 - name : cargo install
7488 uses : actions-rs/cargo@v1
7589 with :
7690 command : install
7791 # Install in debug mode since this part is sloooooow and
7892 # release doesn't really matter much for runtime
79- args : --path . --debug
93+ # Also, build and run with musl, this lets us ensure that
94+ # musl still works, which is important for the linux binaries
95+ # we release, but wasn't exercised until now
96+ args : --path . --debug --target ${{ matrix.target }}
8097 - name : self check
8198 uses : actions-rs/cargo@v1
8299 with :
83100 command : deny
84101 args : -L debug check
85102
86- publish-check :
87- name : Publish Check
88- runs-on : ubuntu-latest
89- steps :
90- - uses : actions/checkout@v1
91- - uses : actions-rs/toolchain@v1
92- with :
93- toolchain : stable
94- override : true
95- - name : cargo fetch
96- uses : actions-rs/cargo@v1
97- with :
98- command : fetch
99- - name : cargo publish
100- uses : actions-rs/cargo@v1
101- with :
102- command : publish
103- args : --dry-run
103+ # publish-check:
104+ # name: Publish Check
105+ # runs-on: ubuntu-latest
106+ # steps:
107+ # - uses: actions/checkout@v1
108+ # - uses: actions-rs/toolchain@v1
109+ # with:
110+ # toolchain: stable
111+ # override: true
112+ # - name: cargo fetch
113+ # uses: actions-rs/cargo@v1
114+ # with:
115+ # command: fetch
116+ # - name: cargo publish
117+ # uses: actions-rs/cargo@v1
118+ # with:
119+ # command: publish
120+ # args: --dry-run
104121
105- publish :
106- name : Publish
107- needs : [test, self, publish-check]
108- runs-on : ubuntu-latest
109- if : startsWith(github.ref, 'refs/tags/')
110- steps :
111- - uses : actions/checkout@v1
112- - uses : actions-rs/toolchain@v1
113- with :
114- toolchain : stable
115- override : true
116- - name : cargo fetch
117- uses : actions-rs/cargo@v1
118- with :
119- command : fetch
120- - name : cargo publish
121- uses : actions-rs/cargo@v1
122- env :
123- CARGO_REGISTRY_TOKEN : ${{ secrets.CRATES_IO_TOKEN }}
124- with :
125- command : publish
122+ # publish:
123+ # name: Publish
124+ # needs: [test, self, publish-check]
125+ # runs-on: ubuntu-latest
126+ # if: startsWith(github.ref, 'refs/tags/')
127+ # steps:
128+ # - uses: actions/checkout@v1
129+ # - uses: actions-rs/toolchain@v1
130+ # with:
131+ # toolchain: stable
132+ # override: true
133+ # - name: cargo fetch
134+ # uses: actions-rs/cargo@v1
135+ # with:
136+ # command: fetch
137+ # - name: cargo publish
138+ # uses: actions-rs/cargo@v1
139+ # env:
140+ # CARGO_REGISTRY_TOKEN: ${{ secrets.CRATES_IO_TOKEN }}
141+ # with:
142+ # command: publish
126143
127144 release :
128145 name : Release
0 commit comments