diff options
author | vnugent <public@vaughnnugent.com> | 2024-05-15 17:46:36 -0400 |
---|---|---|
committer | vnugent <public@vaughnnugent.com> | 2024-05-15 17:46:36 -0400 |
commit | 28e67e58208a13bd5f9afb19b6a2e57f904eec80 (patch) | |
tree | 9f7957272b0f016fd6b3f272edc8b26de6fac1e0 /ci/taskfile.yaml | |
parent | 96ae7b0f718302a4d3b749a90e161cfbf142ad13 (diff) |
Squashed commit of the following:v0.1.5
commit e6b4e605622f2b323fd3fe0aa01000f3986e3bba
Author: vnugent <public@vaughnnugent.com>
Date: Wed May 15 16:35:06 2024 -0400
build: Fix ssl container dir, and certificate automation
commit a710553aa5c0484b6934b8a5d4d16b1eb3ff2a88
Author: vnugent <public@vaughnnugent.com>
Date: Wed May 15 15:37:53 2024 -0400
ci: Admin form clear, polish build and release taskfiels
commit 372eb6a32a9891afb5035caa0805e8ed878416d8
Author: vnugent <public@vaughnnugent.com>
Date: Tue May 14 22:27:10 2024 -0400
default read secret pepper from file for bare-metal builds
commit 1b7270b40b65ef089bf40a14065227f742b8507e
Author: vnugent <public@vaughnnugent.com>
Date: Tue May 14 21:52:03 2024 -0400
chore: make container slightly easier to setup
commit 2deda50a167286bc93fd3871a1fd6dbf9f43c81f
Merge: 28f0f77 96ae7b0
Author: vnugent <public@vaughnnugent.com>
Date: Sun Apr 28 10:54:09 2024 -0400
Merge branch 'master' into develop
commit 28f0f774da975c04271445761b2de31aecf969ff
Author: vnugent <public@vaughnnugent.com>
Date: Sat Apr 27 23:11:48 2024 -0400
Add --no-cache arg to build image args
commit 22a1f5d374ec1a487944c6303066d0f15617cb12
Author: vnugent <public@vaughnnugent.com>
Date: Sat Apr 27 18:47:25 2024 -0400
fix: Upstream patch missing ! in middlware
commit f40ca2d4c26f81276d58760152592a918bf3cd87
Author: vnugent <public@vaughnnugent.com>
Date: Sat Apr 27 18:36:01 2024 -0400
chore: package updates
commit d7a3c957467e65ea7176170fba3c280ac18ac17e
Author: vnugent <public@vaughnnugent.com>
Date: Sun Apr 21 12:02:57 2024 -0400
chore: Package updates and minor QOL patches
commit 97a5bded5122708cf39d0e86bc24a5f31755bdd1
Merge: 56e0a38 5877c86
Author: vnugent <public@vaughnnugent.com>
Date: Tue Apr 9 17:38:02 2024 -0400
Merge branch 'master' into develop
commit 56e0a38b2ca246e8beeaef3c6c4b9c0ce7d0f09b
Author: vnugent <public@vaughnnugent.com>
Date: Tue Apr 9 17:35:13 2024 -0400
chore(app): Update deps, login spinner, curl msg, view prep
commit 0945210c0492dd8a8de99ccd8e5e66cf05e3a1c1
Merge: 24fac82 3c15d54
Author: vnugent <public@vaughnnugent.com>
Date: Tue Apr 2 14:58:59 2024 -0400
Merge branch 'master' into develop
commit 24fac82efe9e5c18e86ed535678640e7401472db
Author: vnugent <public@vaughnnugent.com>
Date: Tue Apr 2 14:54:20 2024 -0400
ci: Configure manual dep versions
commit d2ae31ec919d72e66d8b40db8394b55efd6ea6d3
Author: vnugent <public@vaughnnugent.com>
Date: Sun Mar 31 22:19:53 2024 -0400
ci: Native compression support for win
commit fa7fdef79c6d468022b77f81314ac129fe0cdc32
Merge: 308092d a01220a
Author: vnugent <public@vaughnnugent.com>
Date: Wed Mar 13 21:26:55 2024 -0400
Merge branch 'master' into develop
commit 308092d6d743d0ba8f7ca86fd77e9c837dc46e88
Merge: 48637a8 9134093
Author: vnugent <public@vaughnnugent.com>
Date: Wed Mar 13 21:01:02 2024 -0400
Merge branch 'master' into develop
commit 48637a8781fc951c307216f604fc1610e68691c3
Merge: 1e08c6d e326736
Author: vnugent <public@vaughnnugent.com>
Date: Wed Mar 13 16:20:35 2024 -0400
Merge branch 'master' into develop
commit 1e08c6d2112459dc02a0ab873123c4a363b01d21
Author: vnugent <public@vaughnnugent.com>
Date: Wed Mar 13 16:17:58 2024 -0400
ci: verified container build ready for next release
commit 85a1e5b7cc5c99e97a2d4e99bbceb0d2139742ff
Author: vnugent <public@vaughnnugent.com>
Date: Tue Mar 12 22:05:16 2024 -0400
ci: exciting bare-metal build process, os support, smaller packages
commit 748cdbf4880d830fd794e92856e8c35a46e4f884
Author: vnugent <public@vaughnnugent.com>
Date: Mon Mar 11 21:21:18 2024 -0400
feat(app): #1 update libs & add curl support
Diffstat (limited to 'ci/taskfile.yaml')
-rw-r--r-- | ci/taskfile.yaml | 114 |
1 files changed, 80 insertions, 34 deletions
diff --git a/ci/taskfile.yaml b/ci/taskfile.yaml index c35b226..0267dec 100644 --- a/ci/taskfile.yaml +++ b/ci/taskfile.yaml @@ -36,7 +36,11 @@ tasks: ignore_error: true - task: plugins:all + #remove runtime-shared libs before they are copied + - task: prune-plugin-libs - task: install-webserver + + #runtimes must be pruned for specific targets - task: prune-runtimes #run container build last @@ -59,20 +63,27 @@ tasks: #remove the executable since its not needed - cmd: cd webserver/ && powershell -Command "rm VNlib.WebServer" - - for: [ windows-x86_64, linux-x86_64, osx-x86_64, windows-arm, linux-arm, osx-arm ] - task: create-env - vars: - TARGET_OS: '{{.ITEM}}' + - task: parallel-envs + + parallel-envs: + deps: + - task: create-env + vars: { TARGET_OS: 'windows-x86_64' } + - task: create-env + vars: { TARGET_OS: 'linux-x86_64' } + - task: create-env + vars: { TARGET_OS: 'osx-x86_64' } + - task: create-env + vars: { TARGET_OS: 'windows-arm' } + - task: create-env + vars: { TARGET_OS: 'linux-arm' } + - task: create-env + vars: { TARGET_OS: 'osx-arm' } postbuild_success: cmds: - #make bin dir - cmd: powershell -Command "mkdir bin -Force" - ignore_error: true - - for: [ windows-x86_64, linux-x86_64, osx-x86_64, windows-arm, linux-arm, osx-arm ] - task: pack - vars: - TARGET_OS: '{{.ITEM}}' + - task: pb-parallel #cleanup unnecessary build files that clog up the pipeline - for: [ build, plugins, dist, lib, webserver ] @@ -80,11 +91,25 @@ tasks: ignore_error: true - task: container:postbuild_success - - build-container: + + pb-parallel: + internal: true + deps: + - task: pack + vars: { TARGET_OS: 'windows-x86_64' } + - task: pack + vars: { TARGET_OS: 'linux-x86_64' } + - task: pack + vars: { TARGET_OS: 'osx-x86_64' } + - task: pack + vars: { TARGET_OS: 'windows-arm' } + - task: pack + vars: { TARGET_OS: 'linux-arm' } + - task: pack + vars: { TARGET_OS: 'osx-arm' } cmds: - - task: container:build - + - echo "Packing complete" + create-env: vars: BUILD_DIR: './build/{{.TARGET_OS}}' @@ -107,38 +132,59 @@ tasks: ignore_error: true - cd build/{{.TARGET_OS}} && tar -czf ../../bin/{{.TARGET_OS}}-release.tgz . - prune-runtimes: + prune-plugin-libs: cmds: + - for: ['vnlib.utils.dll' , 'vnlib.net.http.dll', 'VNLib.Hashing.Portable.dll', 'VNLib.Plugins.Essentials.dll', 'VNLib.Plugins.dll', 'Serilog.dll', 'Serilog.Sinks.Console.dll', 'Serilog.Sinks.File.dll'] + cmd: cd plugins && powershell 'Get-ChildItem -Path . -Recurse -File -Filter "{{.ITEM}}" | Remove-Item -Force' + + prune-runtimes: + deps: #prune sqlite runtime native libraries that Im not targeting #windows - - for: ['browser-wasm', 'linux-arm', 'linux-arm64', 'linux-armel', 'linux-mips64', 'linux-musl-arm', 'linux-musl-arm64', 'linux-musl-x64', 'linux-ppc64le', 'linux-s390x', 'linux-x64', 'linux-x86', 'maccatalyst-arm64', 'maccatalyst-x64', 'osx-arm64', 'osx-x64', 'win-arm', 'win-arm64' ] - cmd: cd build/windows-x86_64/{{.SQLITE_OUT_DIR}}/runtimes && powershell -Command "rm {{.ITEM}} -Recurse -Force" - ignore_error: true - + - task: prune-files + vars: + ITEMS: 'browser-wasm,linux-arm,linux-arm64,linux-armel,linux-mips64,linux-musl-arm,linux-musl-arm64,linux-musl-x64,linux-ppc64le,linux-s390x,linux-x64,linux-x86,maccatalyst-arm64,maccatalyst-x64,osx-arm64,osx-x64,win-arm,win-arm64' + DIR: 'windows-x86_64' + #windows arm - - for: ['browser-wasm', 'linux-arm', 'linux-arm64', 'linux-armel', 'linux-mips64', 'linux-musl-arm', 'linux-musl-arm64', 'linux-musl-x64', 'linux-ppc64le', 'linux-s390x', 'linux-x64', 'linux-x86', 'maccatalyst-arm64', 'maccatalyst-x64', 'osx-arm64', 'osx-x64', 'win-x86', 'win-x64' ] - cmd: cd build/windows-arm/{{.SQLITE_OUT_DIR}}/runtimes && powershell -Command "rm {{.ITEM}} -Recurse -Force" - ignore_error: true + - task: prune-files + vars: + ITEMS: 'browser-wasm,linux-arm,linux-arm64,linux-armel,linux-mips64,linux-musl-arm,linux-musl-arm64,linux-musl-x64,linux-ppc64le,linux-s390x,linux-x64,linux-x86,maccatalyst-arm64,maccatalyst-x64,osx-arm64,osx-x64,win-x86,win-x64' + DIR: 'windows-arm' #linux x64 - - for: ['browser-wasm', 'linux-arm', 'linux-arm64', 'linux-armel', 'linux-musl-arm', 'linux-musl-arm64', 'maccatalyst-arm64', 'maccatalyst-x64', 'osx-arm64', 'osx-x64', 'win-arm', 'win-arm64', 'win-x86', 'win-x64' ] - cmd: cd build/linux-x86_64/{{.SQLITE_OUT_DIR}}/runtimes && powershell -Command "rm {{.ITEM}} -Recurse -Force" - ignore_error: true + - task: prune-files + vars: + ITEMS: 'browser-wasm,linux-arm,linux-arm64,linux-armel,linux-musl-arm,linux-musl-arm64,maccatalyst-arm64,maccatalyst-x64,osx-arm64,osx-x64,win-arm,win-arm64,win-x86,win-x64' + DIR: 'linux-x86_64' #linux arm - - for: ['browser-wasm', 'linux-mips64', 'linux-musl-x64', 'linux-ppc64le', 'linux-s390x', 'linux-x64', 'linux-x86', 'maccatalyst-arm64', 'maccatalyst-x64', 'osx-arm64', 'osx-x64', 'win-arm', 'win-arm64', 'win-x86', 'win-x64' ] - cmd: cd build/linux-arm/{{.SQLITE_OUT_DIR}}/runtimes && powershell -Command "rm {{.ITEM}} -Recurse -Force" - ignore_error: true + - task: prune-files + vars: + ITEMS: 'browser-wasm,linux-mips64,linux-musl-x64,linux-ppc64le,linux-s390x,linux-x64,linux-x86,maccatalyst-arm64,maccatalyst-x64,osx-arm64,osx-x64,win-arm,win-arm64,win-x86,win-x64' + DIR: 'linux-arm' #osx x64 - - for: ['browser-wasm', 'linux-arm', 'linux-arm64', 'linux-armel', 'linux-mips64', 'linux-musl-arm', 'linux-musl-arm64', 'linux-musl-x64', 'linux-ppc64le', 'linux-s390x', 'linux-x64', 'linux-x86', 'maccatalyst-arm64', 'win-arm', 'win-arm64', 'win-x86', 'win-x64' ] - cmd: cd build/osx-x86_64/{{.SQLITE_OUT_DIR}}/runtimes && powershell -Command "rm {{.ITEM}} -Recurse -Force" - ignore_error: true + - task: prune-files + vars: + ITEMS: 'browser-wasm,linux-arm,linux-arm64,linux-armel,linux-mips64,linux-musl-arm,linux-musl-arm64,linux-musl-x64,linux-ppc64le,linux-s390x,linux-x64,linux-x86,maccatalyst-arm64,win-arm,win-arm64,win-x86,win-x64' + DIR: 'osx-x86_64' #osx arm - - for: ['browser-wasm', 'linux-arm', 'linux-arm64', 'linux-armel', 'linux-mips64', 'linux-musl-arm', 'linux-musl-arm64', 'linux-musl-x64', 'linux-ppc64le', 'linux-s390x', 'linux-x64', 'linux-x86', 'maccatalyst-x64', 'osx-x64', 'win-arm', 'win-arm64', 'win-x86', 'win-x64' ] - cmd: cd build/osx-arm/{{.SQLITE_OUT_DIR}}/runtimes && powershell -Command "rm {{.ITEM}} -Recurse -Force" - ignore_error: true + - task: prune-files + vars: + ITEMS: 'browser-wasm,linux-arm,linux-arm64,linux-armel,linux-mips64,linux-musl-arm,linux-musl-arm64,linux-musl-x64,linux-ppc64le,linux-s390x,linux-x64,linux-x86,maccatalyst-x64,osx-x64,win-arm,win-arm64,win-x86,win-x64' + DIR: 'osx-arm' + + cmds: + - echo "Pruning runtime files" + + prune-files: + internal: true + cmds: + - for: { var: ITEMS, split: ','} + cmd: cd build/{{.DIR}}/{{.SQLITE_OUT_DIR}}/runtimes && powershell -Command "rm {{.ITEM}} -Recurse -Force" + ignore_error: true clean: ignore_error: true |