Skip to content
This repository was archived by the owner on Feb 10, 2026. It is now read-only.

Commit 7253afc

Browse files
authored
feat: rework and add apple m1 (#65)
This reworks the application to be faster and more responsive. Further, some commands are removed since they were very biased. BREAKING CHANGE: This removes some commands from the previous version. Right now, only "context" and "namespace" are supported. If other commands are necessary, they will be added as seen fit.
1 parent c8e751a commit 7253afc

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+1808
-1716
lines changed
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"branches": ["master"],
3+
"plugins": ["@semantic-release/commit-analyzer", "@semantic-release/release-notes-generator"]
4+
}

.github/workflows/dotnet-release.yml

Lines changed: 0 additions & 22 deletions
This file was deleted.

.github/workflows/dotnet-test.yml

Lines changed: 0 additions & 24 deletions
This file was deleted.

.github/workflows/release.yml

Lines changed: 182 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,182 @@
1+
name: Release Binary
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
8+
jobs:
9+
get_next_version:
10+
runs-on: ubuntu-latest
11+
name: Fetch next version number
12+
steps:
13+
- uses: actions/checkout@v2
14+
- name: semantic release
15+
id: semantic
16+
uses: cycjimmy/semantic-release-action@v2
17+
with:
18+
dry_run: true
19+
working_directory: .github/fetch_version
20+
- run: echo ${{ steps.semantic.outputs.new_release_version }}
21+
- run: echo ${{ steps.semantic.outputs.new_release_published }}
22+
outputs:
23+
create_release: ${{ steps.semantic.outputs.new_release_published }}
24+
new_version: ${{ steps.semantic.outputs.new_release_version }}
25+
26+
build_windows:
27+
needs: get_next_version
28+
if: needs.get_next_version.outputs.create_release == 'true'
29+
strategy:
30+
fail-fast: true
31+
matrix:
32+
include:
33+
- target: x86_64-pc-windows-msvc
34+
openssl_target: openssl:x64-windows-static-md
35+
name: Build ${{ matrix.target }} on windows
36+
runs-on: windows-latest
37+
steps:
38+
- uses: actions/checkout@v2
39+
40+
- name: set new version number (${{ needs.get_next_version.outputs.new_version }})
41+
run: (get-content -Path .\Cargo.toml) | %{$_ -replace "version = \`"0.0.0-development\`"","version = `"${{ needs.get_next_version.outputs.new_version }}`""} | set-content -Path .\Cargo.toml
42+
43+
- name: install and setup vcpkg
44+
uses: lukka/run-vcpkg@v10.1
45+
with:
46+
vcpkgGitCommitId: b196dacc2f63f37bb75504c36c349042336749cb
47+
48+
- name: setup openssl
49+
run: vcpkg install ${{ matrix.openssl_target }}
50+
51+
- name: setup rust
52+
uses: actions-rs/toolchain@v1
53+
with:
54+
toolchain: stable
55+
target: ${{ matrix.target }}
56+
override: true
57+
58+
- name: Build
59+
uses: actions-rs/cargo@v1
60+
with:
61+
command: build
62+
args: --release --target ${{ matrix.target }}
63+
64+
- name: upload artifacts
65+
uses: actions/upload-artifact@v2
66+
with:
67+
name: ${{ matrix.target }}
68+
path: |
69+
target/${{ matrix.target }}/release/kuby.exe
70+
71+
build_unix:
72+
needs: get_next_version
73+
if: needs.get_next_version.outputs.create_release == 'true'
74+
strategy:
75+
fail-fast: true
76+
matrix:
77+
include:
78+
- os: ubuntu-latest
79+
target: x86_64-unknown-linux-gnu
80+
name: Build ${{ matrix.target }} on ubuntu
81+
runs-on: ubuntu-latest
82+
steps:
83+
- uses: actions/checkout@v2
84+
85+
- name: set new version number (${{ needs.get_next_version.outputs.new_version }})
86+
run: sed -i -e 's/^version = .*/version = "${{ needs.get_next_version.outputs.new_version }}"/' Cargo.toml
87+
88+
- name: setup rust
89+
uses: actions-rs/toolchain@v1
90+
with:
91+
toolchain: stable
92+
target: ${{ matrix.target }}
93+
override: true
94+
95+
- name: Build
96+
uses: actions-rs/cargo@v1
97+
with:
98+
command: build
99+
args: --release --target ${{ matrix.target }}
100+
101+
- name: upload artifacts
102+
uses: actions/upload-artifact@v2
103+
with:
104+
name: ${{ matrix.target }}
105+
path: |
106+
target/${{ matrix.target }}/release/kuby
107+
108+
build_macos:
109+
needs: get_next_version
110+
if: needs.get_next_version.outputs.create_release == 'true'
111+
strategy:
112+
fail-fast: false
113+
matrix:
114+
include:
115+
- target: aarch64-apple-darwin
116+
- target: x86_64-apple-darwin
117+
name: Build ${{ matrix.target }} on macos
118+
runs-on: macos-latest
119+
steps:
120+
- uses: actions/checkout@v2
121+
122+
- name: set new version number (${{ needs.get_next_version.outputs.new_version }})
123+
run: sed -i -e 's/^version = .*/version = "${{ needs.get_next_version.outputs.new_version }}"/' Cargo.toml
124+
125+
- name: setup rust
126+
uses: actions-rs/toolchain@v1
127+
with:
128+
toolchain: stable
129+
target: ${{ matrix.target }}
130+
override: true
131+
132+
- name: Build
133+
uses: actions-rs/cargo@v1
134+
with:
135+
command: build
136+
use-cross: true
137+
args: --release --target ${{ matrix.target }}
138+
139+
- name: upload artifacts
140+
uses: actions/upload-artifact@v2
141+
with:
142+
name: ${{ matrix.target }}
143+
path: |
144+
target/${{ matrix.target }}/release/kuby
145+
146+
create_release:
147+
needs:
148+
- build_windows
149+
- build_unix
150+
- build_macos
151+
if: needs.get_next_version.outputs.create_release == 'true'
152+
name: Create release
153+
runs-on: ubuntu-latest
154+
steps:
155+
- uses: actions/checkout@v2
156+
- uses: actions/download-artifact@v3
157+
158+
- name: package m1 apple
159+
uses: papeloto/action-zip@v1
160+
with:
161+
files: aarch64-apple-darwin/
162+
dest: aarch64-apple-darwin.zip
163+
- name: package intel apple
164+
uses: papeloto/action-zip@v1
165+
with:
166+
files: x86_64-apple-darwin/
167+
dest: x86_64-apple-darwin.zip
168+
- name: package windows x64
169+
uses: papeloto/action-zip@v1
170+
with:
171+
files: x86_64-pc-windows-msvc/
172+
dest: x86_64-pc-windows-msvc.zip
173+
- name: package unix
174+
uses: papeloto/action-zip@v1
175+
with:
176+
files: x86_64-unknown-linux-gnu/
177+
dest: x86_64-unknown-linux-gnu.zip
178+
179+
- name: create release
180+
uses: cycjimmy/semantic-release-action@v2
181+
env:
182+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.gitignore

Lines changed: 1 addition & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1 @@
1-
# User-specific files
2-
*.suo
3-
*.user
4-
*.userosscache
5-
*.sln.docstates
6-
7-
# Ci things
8-
node_modules/
9-
tools/
10-
nuget/
11-
artifacts/
12-
coverage/
13-
.tmp/
14-
15-
# Build results
16-
[Dd]ebug/
17-
[Dd]ebugPublic/
18-
[Rr]elease/
19-
[Rr]eleases/
20-
x64/
21-
x86/
22-
bld/
23-
[Bb]in/
24-
[Oo]bj/
25-
[Oo]ut/
26-
27-
# Testing results
28-
coverage.json
29-
coverage.info
1+
/target

.nuke

Lines changed: 0 additions & 1 deletion
This file was deleted.

.releaserc.json

Lines changed: 17 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,17 @@
1-
{
2-
"verifyConditions": ["@semantic-release/github"],
3-
"addChannel": ["@semantic-release/github"],
4-
"prepare": [
5-
[
6-
"@semantic-release/exec",
7-
{
8-
"prepareCmd": "./build.sh --no-logo --version ${nextRelease.version} --target Publish"
9-
}
10-
]
11-
],
12-
"publish": [
13-
[
14-
"@semantic-release/github",
15-
{
16-
"assets": [
17-
{
18-
"path": "artifacts/linux-x64/kuby",
19-
"name": "kuby-linux-x64",
20-
"label": "Kuby for linux x64 (${nextRelease.gitTag})"
21-
},
22-
{
23-
"path": "artifacts/osx-x64/kuby",
24-
"name": "kuby-osx-x64",
25-
"label": "Kuby for macOS / OSX x64 (${nextRelease.gitTag})"
26-
},
27-
{
28-
"path": "artifacts/win-x64/kuby.exe",
29-
"name": "kuby-win-x64.exe",
30-
"label": "Kuby for windows x64 (${nextRelease.gitTag})"
31-
}
32-
]
33-
}
34-
]
35-
]
36-
}
1+
{
2+
"branches": ["master"],
3+
"plugins": [
4+
"@semantic-release/commit-analyzer",
5+
"@semantic-release/release-notes-generator",
6+
[
7+
"@semantic-release/github",
8+
{
9+
"assets": [
10+
{
11+
"path": "./*.zip"
12+
}
13+
]
14+
}
15+
]
16+
]
17+
}

0 commit comments

Comments
 (0)