Skip to content

Commit

Permalink
feat: rewrite kuby. (#26)
Browse files Browse the repository at this point in the history
Closes #7.
Closes #5.

This essentially is a complete rewrite of
kuby in F# instead of typescript. F# provides
faster runtime and nicer language features and
it was a nice project to try the F# language.

Also, the direct need of `kubectl` is removed.
For the one part of the package that needs kubectl
(`deploy`) a bundled version of kubectl is used.

BREAKING CHANGE: The command `cleanup` is
removed. It was a highly destructive action
and therefore was removed.

BREAKING CHANGE: The command `kubectl` is
removed. The `kubectl` executable is included
in the compiled project and will be used from
there when necessary. To manage your local
`kubectl` versions, you can use
https://github.com/buehler/kubectl-version-manager

BREAKING CHANGE: The command `preview-deploy`
is removed. This was a command that was highly
opinionated and created more problems than it solved
It is removed in favor to CI-themed preview deployments.

BREAKING CHANGE: The commands `deploy`, `apply`,
and `prepare` are restructured. Instead of creating
three different commands, kuby now only knows `deploy`.
To create the same behaviour as in earlier versions,
deploy can be used with flags to output the prepared
yaml to a folder and use a dry-run flag to prevent
effective action on the cluster.

Signed-off-by: Christoph Bühler <christoph@smartive.ch>
  • Loading branch information
buehler authored Dec 2, 2020
1 parent d3cff4e commit 02bce8d
Show file tree
Hide file tree
Showing 137 changed files with 1,719 additions and 18,911 deletions.
11 changes: 0 additions & 11 deletions .dockerignore

This file was deleted.

13 changes: 0 additions & 13 deletions .editorconfig

This file was deleted.

22 changes: 22 additions & 0 deletions .github/workflows/dotnet-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: .Net Release

on: [workflow_dispatch]

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup .Net
uses: actions/setup-dotnet@v1
with:
dotnet-version: 5.0.100
- name: Create Executables
run: ./build.sh --target Publish --no-logo
- name: Semantic Release
uses: cycjimmy/semantic-release-action@v2
with:
extra_plugins: |
@semantic-release/exec
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
24 changes: 24 additions & 0 deletions .github/workflows/dotnet-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: .Net Testing

on:
push:
branches:
- '**'
- '!master'

pull_request:
branches:
- '**'

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Setup .Net
uses: actions/setup-dotnet@v1
with:
dotnet-version: 5.0.100
- name: Test
run: ./build.sh --target Compile --no-logo
26 changes: 0 additions & 26 deletions .github/workflows/execute-node-tests.yml

This file was deleted.

37 changes: 27 additions & 10 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,12 +1,29 @@
# Logs
logs
*.log
npm-debug.log*
# User-specific files
*.suo
*.user
*.userosscache
*.sln.docstates

# Dependency directory
node_modules
# Ci things
node_modules/
tools/
nuget/
artifacts/
coverage/
.tmp/

# Typescript stuff
build
coverage
out
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
bld/
[Bb]in/
[Oo]bj/
[Oo]ut/

# Testing results
coverage.json
coverage.info
63 changes: 0 additions & 63 deletions .gitlab-ci.yml

This file was deleted.

3 changes: 0 additions & 3 deletions .kubyrc.json

This file was deleted.

27 changes: 0 additions & 27 deletions .npmignore

This file was deleted.

1 change: 1 addition & 0 deletions .nuke
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Kuby.sln
1 change: 0 additions & 1 deletion .nvmrc

This file was deleted.

40 changes: 40 additions & 0 deletions .releaserc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
{
"verifyConditions": [
"@semantic-release/github"
],
"addChannel": [
"@semantic-release/github"
],
"prepare": [
[
"@semantic-release/exec",
{
"prepareCmd": "./build.sh --no-logo --version ${nextRelease.version} --target Publish"
}
]
],
"publish": [
[
"@semantic-release/github",
{
"assets": [
{
"path": "artifacts/linux-x64/kuby",
"name": "kuby-linux-x64",
"label": "Kuby for linux x64 (${nextRelease.gitTag})"
},
{
"path": "artifacts/osx-x64/kuby",
"name": "kuby-osx-x64",
"label": "Kuby for macOS / OSX x64 (${nextRelease.gitTag})"
},
{
"path": "artifacts/win-x64/kuby.exe",
"name": "kuby-win-x64.exe",
"label": "Kuby for windows x64 (${nextRelease.gitTag})"
}
]
}
]
]
}
36 changes: 0 additions & 36 deletions Dockerfile

This file was deleted.

28 changes: 28 additions & 0 deletions Kuby.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@

Microsoft Visual Studio Solution File, Format Version 12.00
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{5F749BCF-7099-4989-8C5D-B42A288A9401}"
EndProject
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "Kuby", "src\Kuby\Kuby.fsproj", "{7D166352-7A64-4F57-8FF0-1010443F3A90}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "_build", "build\_build.csproj", "{6096BE1B-F368-4338-AD7D-1C6098BF41AF}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{F4315FC3-2F26-41B4-92A6-DFECBB23C345}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{6096BE1B-F368-4338-AD7D-1C6098BF41AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6096BE1B-F368-4338-AD7D-1C6098BF41AF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7D166352-7A64-4F57-8FF0-1010443F3A90}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7D166352-7A64-4F57-8FF0-1010443F3A90}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7D166352-7A64-4F57-8FF0-1010443F3A90}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7D166352-7A64-4F57-8FF0-1010443F3A90}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{7D166352-7A64-4F57-8FF0-1010443F3A90} = {5F749BCF-7099-4989-8C5D-B42A288A9401}
{6096BE1B-F368-4338-AD7D-1C6098BF41AF} = {F4315FC3-2F26-41B4-92A6-DFECBB23C345}
EndGlobalSection
EndGlobal
21 changes: 0 additions & 21 deletions LICENSE

This file was deleted.

Loading

0 comments on commit 02bce8d

Please sign in to comment.