Skip to content

Commit 66cba03

Browse files
committed
actions
1 parent 4aa9db1 commit 66cba03

3 files changed

Lines changed: 102 additions & 0 deletions

File tree

.github/dependabot.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "github-actions"
4+
directory: "/"
5+
schedule:
6+
interval: "daily"

.github/workflows/publish.yml

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
name: publish
2+
3+
on:
4+
push:
5+
tags:
6+
- release-*.*.*
7+
branches:
8+
- main
9+
- master
10+
11+
permissions:
12+
contents: write
13+
14+
jobs:
15+
publish:
16+
name: ${{ matrix.name }}
17+
18+
runs-on: ${{ matrix.os }}
19+
20+
strategy:
21+
matrix:
22+
os: [macos-latest, windows-latest]
23+
include:
24+
- os: macos-latest
25+
name: MacOS Binary 64-Bit
26+
target: x86_64-apple-darwin
27+
target2: aarch64-apple-darwin
28+
env:
29+
MACOSX_DEPLOYMENT_TARGET: 10.7
30+
31+
- os: windows-latest
32+
name: Windows Binary 64-Bit
33+
target: x86_64-pc-windows-msvc
34+
35+
steps:
36+
- name: Check out repository
37+
uses: actions/checkout@v4
38+
39+
- name: Add rustup default target
40+
run: rustup target add ${{ matrix.target }}
41+
42+
- name: Add rustup Apple ARM64 target
43+
if: ${{ matrix.os == 'macos-latest' }}
44+
run: rustup target add ${{ matrix.target2 }}
45+
46+
- name: Build default target in release mode
47+
run: cargo build --release --target ${{ matrix.target }} --locked
48+
49+
- name: Build Apple ARM64 target in release mode
50+
if: ${{ matrix.os == 'macos-latest' }}
51+
run: cargo build --release --target ${{ matrix.target2 }} --locked
52+
53+
- name: Create zip file on Windows
54+
if: ${{ matrix.os == 'windows-latest' }}
55+
run: |
56+
choco install zip
57+
cd target/${{ matrix.target }}/release
58+
zip lc-0.1.0-${{ matrix.target }}.zip lc.exe
59+
cd ../../..
60+
61+
- name: Create tar.gz file on macOS
62+
if: ${{ matrix.os == 'macos-latest' }}
63+
run: |
64+
chmod +x target/${{ matrix.target }}/release/lc
65+
tar -zcf target/${{ matrix.target }}/release/lc-0.1.0-${{ matrix.target }}.tar.gz -C target/${{ matrix.target }}/release lc
66+
chmod +x target/${{ matrix.target2 }}/release/lc
67+
tar -zcf target/${{ matrix.target2 }}/release/lc-0.1.0-${{ matrix.target2 }}.tar.gz -C target/${{ matrix.target2 }}/release lc
68+
69+
- name: Upload release and assets to GitHub
70+
uses: svenstaro/upload-release-action@v2
71+
with:
72+
repo_token: ${{ secrets.GITHUB_TOKEN }}
73+
tag: "release-0.1.0-${{ github.run_number }}"
74+
release_name: lc 0.1.0
75+
file_glob: true
76+
file: target/*/release/lc-0.1.0-*.{zip,tar.gz}

.github/workflows/pull_request.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: Rust
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
8+
env:
9+
CARGO_TERM_COLOR: always
10+
11+
jobs:
12+
build:
13+
runs-on: ubuntu-latest
14+
15+
steps:
16+
- uses: actions/checkout@v4
17+
- name: Build
18+
run: cargo build --verbose
19+
- name: Run tests
20+
run: cargo test --verbose

0 commit comments

Comments
 (0)