diff options
author | vnugent <public@vaughnnugent.com> | 2024-01-21 21:57:54 -0500 |
---|---|---|
committer | vnugent <public@vaughnnugent.com> | 2024-01-21 21:57:54 -0500 |
commit | a44f7b7dc089776a7817cf077b3f3ae3db7fc22e (patch) | |
tree | 089bfa7e9eba560f9ae596568d6d981939e597f3 /ci/plugins.taskfile.yaml | |
parent | 6cb7da37824d02a1898d08d0f9495c77fde4dd1d (diff) |
configure ci, patch totp, and bookmarks context
Diffstat (limited to 'ci/plugins.taskfile.yaml')
-rw-r--r-- | ci/plugins.taskfile.yaml | 157 |
1 files changed, 157 insertions, 0 deletions
diff --git a/ci/plugins.taskfile.yaml b/ci/plugins.taskfile.yaml new file mode 100644 index 0000000..66641ab --- /dev/null +++ b/ci/plugins.taskfile.yaml @@ -0,0 +1,157 @@ +# https://taskfile.dev + +#Called by the vnbuild system to produce builds for my website +#https://www.vaughnnugent.com/resources/software + +version: "3" + +vars: + +tasks: + + all: + cmds: + - echo "Installing and configuring plugins and UI" + - task: install-accounts + - task: install-router + - task: install-sessions + - task: install-vncache + - task: install-vncache-sessions + - task: install-users + - task: install-argon2-lib + - task: install-compression + - task: install-compressor-lib + - task: build-bookmarks + + build-bookmarks: + cmds: + #build front-end + - cd ../front-end && npm install && npm run build + #move dist files to web root + - cmd: powershell -Command "cp -Recurse -Force ../front-end/dist {{.USER_WORKING_DIR}}" + + #build the plugin + - cmd: cd ../back-end/src && task build + - powershell -Command "mkdir plugins/SimpleBookmark -Force" + #copy the plugin output + - powershell -Command "cp -Recurse -Force ../back-end/src/bin/release/net8.0/publish/* plugins/SimpleBookmark/" + + install-accounts: + cmds: + #install accounts plugin + - task: install-plugin + vars: + PROJECT_NAME: 'VNLib.Plugins.Essentials.Accounts' + MODULE_NAME: "Plugins.Essentials" + FILE_NAME: "release.tgz" + DIR: './plugins/Essentials.Accounts' + + install-router: + cmds: + #install router plugin + - task: install-plugin + vars: + PROJECT_NAME: 'VNLib.Plugins.Essentials.Content.Routing' + MODULE_NAME: "Plugins.Essentials" + FILE_NAME: "release.tgz" + DIR: './plugins/PageRouter' + + install-sessions: + cmds: + #install sessions plugin + - task: install-plugin + vars: + PROJECT_NAME: 'SessionProvider' + MODULE_NAME: "VNLib.Plugins.Sessions" + FILE_NAME: "release.tgz" + DIR: './plugins/SessionProvider' + + install-users: + cmds: + #install users plugin + - task: install-plugin + vars: + PROJECT_NAME: 'VNLib.Plugins.Essentials.Users' + MODULE_NAME: "VNLib.Plugins.Essentials.Users" + FILE_NAME: "release.tgz" + DIR: './plugins/assets/VNLib.Plugins.Essentials.Users' + + install-vncache: + cmds: + #install vncache global cache provider plugin + - task: install-plugin + vars: + PROJECT_NAME: 'VNLib.Data.Caching.Providers.VNCache' + MODULE_NAME: "VNLib.Data.Caching" + FILE_NAME: "release.tgz" + DIR: './plugins/assets/VNLib.Data.Caching.Providers.VNCache' + + install-vncache-sessions: + cmds: + #install vncache-web-sessions plugin + - task: install-plugin + vars: + PROJECT_NAME: 'VNLib.Plugins.Sessions.VNCache' + MODULE_NAME: "VNLib.Plugins.Sessions" + FILE_NAME: "release.tgz" + DIR: './plugins/assets/VNLib.Plugins.Sessions.VNCache' + + install-compression: + cmds: + #install compression plugin + - task: install-plugin + vars: + PROJECT_NAME: 'VNLib.Net.Compression' + MODULE_NAME: "VNLib.Core" + FILE_NAME: "release.tgz" + DIR: './lib/vnlib.net.compression' + + install-compressor-lib: + cmds: + #install compressor plugin + - task: install-plugin + vars: + PROJECT_NAME: 'vnlib_compress' + MODULE_NAME: "VNLib.Core" + FILE_NAME: "src.tgz" + DIR: './lib/vnlib_compress' + + install-argon2-lib: + cmds: + #install the argon2 binary for Windows + - task: install-plugin + vars: + PROJECT_NAME: 'phc-winner-argon2' + MODULE_NAME: "VNLib.Core" + FILE_NAME: "win-x64-release-Argon2.tgz" + DIR: './lib/argon2' + + #install the argon2 source code package for Linux and Mac + - task: install-plugin + vars: + PROJECT_NAME: 'phc-winner-argon2' + MODULE_NAME: "VNLib.Core" + FILE_NAME: "src.tgz" + DIR: './lib/argon2' + + #remove unneeded files + - cmd: powershell -Command "rm ./lib/argon2/man -Recurse" + ignore_error: true + - cmd: powershell -Command "rm ./lib/argon2/latex -Recurse" + ignore_error: true + - cmd: powershell -Command "rm ./lib/argon2/kats -Recurse" + ignore_error: true + - cmd: powershell -Command "rm ./lib/argon2/argon2-specs.pdf" + ignore_error: true + - cmd: powershell -Command "rm ./lib/argon2/package.json" + ignore_error: true + + install-plugin: + cmds: + #make the plugin directory + - cmd: powershell -Command "mkdir {{.DIR}} -Force" + ignore_error: true + - cd {{.DIR}} && powershell "{{.USER_WORKING_DIR}}/install.ps1" -BaseUrl {{.BUILDS_URL}} -ModuleName {{.MODULE_NAME}} -ProjectName {{.PROJECT_NAME}} -FileName {{.FILE_NAME}} + - cd {{.DIR}} && tar -xzf {{.FILE_NAME}} + #remove the archive file + - cd {{.DIR}} && powershell -Command "rm {{.FILE_NAME}}"
\ No newline at end of file |