diff --git a/_generator/default/project/definitions/goblueprint/.well-known/README.md b/_generator/default/project/definitions/goblueprint/.well-known/README.md new file mode 100644 index 0000000..047a784 --- /dev/null +++ b/_generator/default/project/definitions/goblueprint/.well-known/README.md @@ -0,0 +1,4 @@ +# .well-known folder + +This folder contains configuration files in a *well-known* location + diff --git a/_generator/default/project/definitions/goblueprint/.well-known/devops.json b/_generator/default/project/definitions/goblueprint/.well-known/devops.json new file mode 100644 index 0000000..1c77731 --- /dev/null +++ b/_generator/default/project/definitions/goblueprint/.well-known/devops.json @@ -0,0 +1,206 @@ +{ + "apis": [ + { + "api": { + "category": "API", + "id": "", + "name": "OpenAPI", + "url": "" + }, + "format": "OpenAPI", + "guide": "", + "name": "CHANGE.ME", + "release_id": "", + "service_id": "OpenAPI CHANGE.ME", + "url": "^/specs/openapi.json" + }, + { + "api": { + "category": "API", + "id": "", + "name": "AsyncAPI", + "url": "" + }, + "format": "AsyncAPI", + "guide": "", + "name": "CHANGE.ME", + "release_id": "", + "service_id": "AsyncAPI CHANGE.ME", + "url": "^/specs/asyncapi.json" + } + ], + "asset": { + "id": "__asset_id__", + "name": "", + "url": "" + }, + "build": [ + { + "activity": { + "category": "BUILD", + "id": "make", + "name": "Make command", + "url": "" + }, + "config": "", + "guide": "", + "id": "make:build", + "platform": "windows", + "script": "--file Makefile build" + }, + { + "activity": { + "category": "BUILD", + "id": "", + "name": "Lint", + "url": "" + }, + "config": "", + "guide": "", + "id": "", + "platform": "windows", + "script": "" + }, + { + "activity": { + "category": "BUILD", + "id": "", + "name": "pwsh-script", + "url": "" + }, + "config": "", + "guide": "", + "id": "", + "platform": "windows", + "script": "" + } + ], + "created_on": "2025-08-07T13:13:03.2467916Z", + "dependency": { + "apis": [ + { + "api": { + "category": "API", + "id": "", + "name": "OpenAPI", + "url": "" + }, + "format": "OpenAPI", + "guide": "", + "name": "replace me", + "release_id": "", + "service_id": "replace me", + "url": "" + } + ], + "guide": "", + "tools": [ + { + "activity": { + "category": "COMMAND", + "id": "qaskx-cli", + "name": "qaskx-cli", + "url": "https://qaskx.one/" + }, + "guide": "https://docs.qaskx.one/qaskx-cli/", + "id": "d81d3293-1795-4f89-8760-acc9a33365a8", + "name": "qaskx-cli", + "platform": "", + "post": [], + "pre": [] + }, + { + "activity": { + "category": "TOOL", + "id": "no-command", + "name": "No command" + }, + "config": ".", + "id": "IDE", + "name": "Microsoft Visual Code", + "platform": "windows", + "script": "code" + } + ] + }, + "deploy": [ + { + "activity": { + "category": "DEPLOY", + "id": "", + "name": "rpm", + "url": "" + }, + "guide": "", + "id": "", + "post": [], + "pre": [] + } + ], + "governance": { + "availability_rating": 5, + "cyber_rating": 5, + "data_classification": "PII-1", + "resiliency_rating": 5 + }, + "name": "__app_name___", + "organisation": "Qaskx One", + "owner": { + "contacts": [ + { + "address": "qaskx.example.qaskx.one", + "name": "SLACK" + }, + { + "address": "@qaskx:example.qaskx.one", + "name": "MATRIX" + } + ], + "email": "do_not_reply@example.qaskx.one", + "name": "replace owner contact ", + "web": "https://example.qaskx.one" + }, + "repository": { + "source": { + "category": "SOURCE", + "id": "gitea", + "name": "gitea", + "url": "" + } + }, + "schema": { + "link": "", + "name": "", + "version": "0.0.1" + }, + "test": [ + { + "activity": { + "category": "TEST", + "id": "make", + "name": "Make command", + "url": "" + }, + "config": "", + "guide": "", + "id": "make:test", + "platform": "windows", + "script": "--file Makefile test" + }, + { + "activity": { + "category": "TEST", + "id": "", + "name": "", + "url": "" + }, + "config": "", + "guide": "", + "id": "", + "platform": "windows", + "script": "" + } + ], + "unique_id": "__unique_id___", + "updated_on": "2025-08-07T13:13:03.2467916Z" +} \ No newline at end of file diff --git a/_generator/default/project/definitions/goblueprint/.well-known/qaskx-config.yaml b/_generator/default/project/definitions/goblueprint/.well-known/qaskx-config.yaml new file mode 100644 index 0000000..9e4bcc4 --- /dev/null +++ b/_generator/default/project/definitions/goblueprint/.well-known/qaskx-config.yaml @@ -0,0 +1,439 @@ +app: + name: "__app_name___" + version: "0.0.1" +rediops: + depend: "" +generator_handlers: + generators: {} +run: + container: + engine: docker +templates: + cache_off: false + fall_back: null + root_folder: "" + groups: {} +logger: + provider: "" + log_level_base: "" + log_level: 2 + log_writer: "" + log_path: "" + log_cmd_count: 0 +vault_file: "" +file_format: + left_quote: "" + right_quote: "" + separator: "" + escape_match: "" + escape_value: "" +lock_modify: false +validation: + default_level: INFO +scan: + options: + skip_file: "" + regex_file: "" + skip_files: [] + regex: [] +activities: + engines: + - category: BUILD + osEnvironment: windows + id: "make" + name: Make command + command: "make.exe" + option: "" + - category: BUILD + osEnvironment: windows + id: '*default' + name: Default Windows engine + command: pwsh.exe + option: -Command + - category: BUILD + osEnvironment: windows + id: pwsh-command + name: "" + command: pwsh.exe + option: -Command + - category: BUILD + osEnvironment: windows + id: pwsh-script + name: "" + command: pwsh.exe + option: -File + - category: BUILD + osEnvironment: windows + id: cmd-command + name: "" + command: cmd.exe + option: "" + - category: BUILD + osEnvironment: windows + id: no-command + name: "" + command: '*null' + option: "" + - category: BUILD + osEnvironment: linux + id: '*default' + name: Default Linux engine + command: /bin/sh + option: -c + - category: BUILD + osEnvironment: linux + id: pwsh-command + name: "" + command: pwsh + option: -Command + - category: BUILD + osEnvironment: linux + id: pwsh-script + name: "" + command: pwsh + option: -File + - category: BUILD + osEnvironment: darwin + id: '*default' + name: "" + command: /bin/sh + option: -c + - category: TEST + osEnvironment: windows + id: "make" + name: Make command + command: "make.exe" + option: "" + - category: TEST + osEnvironment: windows + id: '*default' + name: Default Windows engine + command: pwsh.exe + option: -Command + - category: TEST + osEnvironment: windows + id: pwsh-command + name: "" + command: pwsh.exe + option: -Command + - category: TEST + osEnvironment: windows + id: pwsh-script + name: "" + command: pwsh.exe + option: -File + - osEnvironment: windows + category: TEST + id: cmd-command + name: "" + command: cmd.exe + option: "" + - osEnvironment: windows + category: TEST + id: no-command + name: "" + command: '*null' + option: "" + - osEnvironment: linux + category: TEST + id: '*default' + name: Default Linux engine + command: /bin/sh + option: -c + - osEnvironment: linux + category: TEST + id: pwsh-command + name: "" + command: pwsh + option: -Command + - osEnvironment: linux + category: TEST + id: pwsh-script + name: "" + command: pwsh + option: -File + - osEnvironment: darwin + category: TEST + id: '*default' + name: "" + command: /bin/sh + option: -c + - osEnvironment: windows + category: DEPLOY + id: '*default' + name: Default Windows engine + command: pwsh.exe + option: -Command + - osEnvironment: windows + category: DEPLOY + id: pwsh-command + name: "" + command: pwsh.exe + option: -Command + - osEnvironment: windows + category: DEPLOY + id: pwsh-script + name: "" + command: pwsh.exe + option: -File + - osEnvironment: windows + category: DEPLOY + id: cmd-command + name: "" + command: cmd.exe + option: "" + - osEnvironment: windows + category: DEPLOY + id: no-command + name: "" + command: '*null' + option: "" + - osEnvironment: linux + category: DEPLOY + id: '*default' + name: Default Linux engine + command: /bin/sh + option: -c + - osEnvironment: linux + category: DEPLOY + id: pwsh-command + name: "" + command: pwsh + option: -Command + - osEnvironment: linux + category: DEPLOY + id: pwsh-script + name: "" + command: pwsh + option: -File + - osEnvironment: darwin + category: DEPLOY + id: '*default' + name: "" + command: /bin/sh + option: -c + - osEnvironment: windows + category: SOURCE + id: '*default' + name: Default Windows engine + command: pwsh.exe + option: -Command + - osEnvironment: windows + category: SOURCE + id: pwsh-command + name: "" + command: pwsh.exe + option: -Command + - osEnvironment: windows + category: SOURCE + id: pwsh-script + name: "" + command: pwsh.exe + option: -File + - osEnvironment: windows + category: SOURCE + id: cmd-command + name: "" + command: cmd.exe + option: "" + - osEnvironment: windows + category: SOURCE + id: no-command + name: "" + command: '*null' + option: "" + - osEnvironment: linux + category: SOURCE + id: '*default' + name: Default Linux engine + command: /bin/sh + option: -c + - osEnvironment: linux + category: SOURCE + id: pwsh-command + name: "" + command: pwsh + option: -Command + - osEnvironment: linux + category: SOURCE + id: pwsh-script + name: "" + command: pwsh + option: -File + - osEnvironment: darwin + category: SOURCE + id: '*default' + name: "" + command: /bin/sh + option: -c + - osEnvironment: windows + category: RELEASE + id: '*default' + name: Default Windows engine + command: pwsh.exe + option: -Command + - osEnvironment: windows + category: RELEASE + id: pwsh-command + name: "" + command: pwsh.exe + option: -Command + - osEnvironment: windows + category: RELEASE + id: pwsh-script + name: "" + command: pwsh.exe + option: -File + - osEnvironment: windows + category: RELEASE + id: cmd-command + name: "" + command: cmd.exe + option: "" + - osEnvironment: windows + category: RELEASE + id: no-command + name: "" + command: '*null' + option: "" + - osEnvironment: linux + category: RELEASE + id: '*default' + name: Default Linux engine + command: /bin/sh + option: -c + - osEnvironment: linux + category: RELEASE + id: pwsh-command + name: "" + command: pwsh + option: -Command + - osEnvironment: linux + category: RELEASE + id: pwsh-script + name: "" + command: pwsh + option: -File + - osEnvironment: darwin + category: RELEASE + id: '*default' + name: "" + command: /bin/sh + option: -c + - osEnvironment: windows + category: TOOL + id: '*default' + name: Default Windows engine + command: pwsh.exe + option: -Command + - osEnvironment: windows + category: TOOL + id: pwsh-command + name: "" + command: pwsh.exe + option: -Command + - osEnvironment: windows + category: TOOL + id: pwsh-script + name: "" + command: pwsh.exe + option: -File + - osEnvironment: windows + category: TOOL + id: cmd-command + name: "" + command: cmd.exe + option: "" + - osEnvironment: windows + category: TOOL + id: no-command + name: "" + command: '*null' + option: "" + - osEnvironment: linux + category: TOOL + id: '*default' + name: Default Linux engine + command: /bin/sh + option: -c + - osEnvironment: linux + category: TOOL + id: pwsh-command + name: "" + command: pwsh + option: -Command + - osEnvironment: linux + category: TOOL + id: pwsh-script + name: "" + command: pwsh + option: -File + - osEnvironment: darwin + category: TOOL + id: '*default' + name: "" + command: /bin/sh + option: -c + - osEnvironment: windows + category: REFRESH + id: '*default' + name: Default Windows engine + command: pwsh.exe + option: -Command + - osEnvironment: windows + category: REFRESH + id: pwsh-command + name: "" + command: pwsh.exe + option: -Command + - osEnvironment: windows + category: REFRESH + id: pwsh-script + name: "" + command: pwsh.exe + option: -File + - osEnvironment: windows + category: REFRESH + id: cmd-command + name: "" + command: cmd.exe + option: "" + - osEnvironment: windows + category: REFRESH + id: no-command + name: "" + command: '*null' + option: "" + - osEnvironment: linux + category: REFRESH + id: '*default' + name: Default Linux engine + command: /bin/sh + option: -c + - osEnvironment: linux + category: REFRESH + id: pwsh-command + name: "" + command: pwsh + option: -Command + - osEnvironment: linux + category: REFRESH + id: pwsh-script + name: "" + command: pwsh + option: -File + - osEnvironment: darwin + category: REFRESH + id: '*default' + name: "" + command: /bin/sh + option: -c +git_info: + GitProvider: __provider___ + GitHost: https://change.me.example.com + GitApi: https://change.me.example.com/api/v1 + GitOrg: __git_org__ + GitRepoUser: __git_user__ + GitBranch: main + GitUserEmail: "" + git_embedded: false diff --git a/_generator/default/project/definitions/golang/README_QX.md b/_generator/default/project/definitions/goblueprint/README_QX.md similarity index 100% rename from _generator/default/project/definitions/golang/README_QX.md rename to _generator/default/project/definitions/goblueprint/README_QX.md diff --git a/_generator/default/project/definitions/goblueprint/build/deploy-remote.ps1 b/_generator/default/project/definitions/goblueprint/build/deploy-remote.ps1 new file mode 100644 index 0000000..c657211 --- /dev/null +++ b/_generator/default/project/definitions/goblueprint/build/deploy-remote.ps1 @@ -0,0 +1,15 @@ +param ( + [string] $buildVersion = "latest", + [string] $dockerRepo = "{ {.Repository.ImageName[docker]}}" +) + +# This PowerShell command is for deploying the Qaskx-cli site + +Write-Host "Pulling latest image at remote" +$cmd = "docker pull $dockerRepo/{ {.Repository.ImageName[docker]}}:$buildVersion" +ssh username@example.com $cmd + +Write-Host "Restarting { {.RediOps.Name}} at remote" +ssh username@example.com 'cd /opt/docker/up && docker compose --env-file .env --file ./{ {.RediOps.Name }}/docker-compose.yml up -d --force-recreate' + +Write-Host "Remote deployment completed. Please check logs" -ForegroundColor Yellow \ No newline at end of file diff --git a/_generator/default/project/definitions/goblueprint/src/README.md b/_generator/default/project/definitions/goblueprint/src/README.md new file mode 100644 index 0000000..ce1f5cf --- /dev/null +++ b/_generator/default/project/definitions/goblueprint/src/README.md @@ -0,0 +1,3 @@ +# Source folder + +This folder will hold the source code for the project diff --git a/_generator/default/project/definitions/golang/README.md b/_generator/default/project/definitions/golang/README.md new file mode 100644 index 0000000..00a09b4 --- /dev/null +++ b/_generator/default/project/definitions/golang/README.md @@ -0,0 +1,20 @@ +# Project {{.Name}} + +One Paragraph of {{.Name}} project description goes here + +## Getting Started + +These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system. + +## Prerequisites + +The assumption is that you have the following commands in your execution path: + +1. qaskx-cli - The qaskx tool +2. code - Microsoft Visual Code + +Run the test suite: + +```bash +qaskx-cli run -t make:test +``` diff --git a/_generator/default/project/goblueprint.json b/_generator/default/project/goblueprint.json index dba23e4..e2eda45 100644 --- a/_generator/default/project/goblueprint.json +++ b/_generator/default/project/goblueprint.json @@ -4,6 +4,7 @@ "description": "golang blueprint", "subtype": "", "action": "", + "template_engine": "Template", "templates": [ { "engine": "", @@ -25,7 +26,7 @@ { "engine": "", "section": "", - "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/golang/build", + "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/goblueprint/build", "file_name": "*", "output_folder": "^/build", "output_name": "*" @@ -33,7 +34,7 @@ { "engine": "", "section": "", - "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/golang", + "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/goblueprint", "file_name": "*", "output_folder": "^/", "output_name": "*" @@ -41,7 +42,7 @@ { "engine": "", "section": "", - "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/golang/.well-known", + "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/goblueprint/.well-known", "file_name": "*", "output_folder": "^/.well-known", "output_name": "*" diff --git a/_generator/default/project/gobp001.json b/_generator/default/project/gobp001.json index 7a63a60..be10229 100644 --- a/_generator/default/project/gobp001.json +++ b/_generator/default/project/gobp001.json @@ -4,6 +4,7 @@ "description": "golang blueprint with Echo, sqlite and docker", "subtype": "", "action": "", + "template_engine": "Template", "templates": [ { "engine": "", @@ -25,7 +26,7 @@ { "engine": "", "section": "", - "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/golang/build", + "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/goblueprint/build", "file_name": "*", "output_folder": "^/build", "output_name": "*" @@ -33,7 +34,7 @@ { "engine": "", "section": "", - "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/golang", + "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/goblueprint", "file_name": "*", "output_folder": "^/", "output_name": "*" @@ -41,7 +42,7 @@ { "engine": "", "section": "", - "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/golang/.well-known", + "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/goblueprint/.well-known", "file_name": "*", "output_folder": "^/.well-known", "output_name": "*" diff --git a/_generator/default/project/gobp002.json b/_generator/default/project/gobp002.json index 5858a9c..21c864c 100644 --- a/_generator/default/project/gobp002.json +++ b/_generator/default/project/gobp002.json @@ -4,6 +4,7 @@ "description": "golang blueprint for CLI with docker", "subtype": "", "action": "", + "template_engine": "Template", "templates": [ { "engine": "", @@ -25,7 +26,7 @@ { "engine": "", "section": "", - "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/golang/build", + "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/goblueprint/build", "file_name": "*", "output_folder": "^/build", "output_name": "*" @@ -33,7 +34,7 @@ { "engine": "", "section": "", - "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/golang", + "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/goblueprint", "file_name": "*", "output_folder": "^/", "output_name": "*" @@ -41,7 +42,7 @@ { "engine": "", "section": "", - "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/golang/.well-known", + "folder": "{{.TemplateDefinition.SelfFolder}}/definitions/goblueprint/.well-known", "file_name": "*", "output_folder": "^/.well-known", "output_name": "*" diff --git a/_generator/default/project/golang.json b/_generator/default/project/golang.json index decc4d4..086e9ff 100644 --- a/_generator/default/project/golang.json +++ b/_generator/default/project/golang.json @@ -1,7 +1,8 @@ { "name": "golang", "guide": "{{.SelfFolder}}/golang.md", - "description": "golang project template", + "description": "Basic Golang project", + "template_engine": "Template", "templates": [ { "engine": "", diff --git a/_generator/default/project/java.json b/_generator/default/project/java.json index 8acd1c0..0eee959 100644 --- a/_generator/default/project/java.json +++ b/_generator/default/project/java.json @@ -1,7 +1,8 @@ { "name": "java", "guide": "{{.SelfFolder}}/java.md", - "description": "java project template", + "description": "Basic Java project", + "template_engine": "Template", "templates": [ { "engine": "", diff --git a/_generator/default/project/python.json b/_generator/default/project/python.json index 979d2ef..9776699 100644 --- a/_generator/default/project/python.json +++ b/_generator/default/project/python.json @@ -1,7 +1,8 @@ { "name": "python", "guide": "{{.SelfFolder}}/python.md", - "description": "python project template", + "description": "Basic python project", + "template_engine": "Template", "templates": [ { "engine": "", diff --git a/_generator/default/project/rust.json b/_generator/default/project/rust.json new file mode 100644 index 0000000..2987011 --- /dev/null +++ b/_generator/default/project/rust.json @@ -0,0 +1,15 @@ +{ + "name": "rust", + "guide": "{{.SelfFolder}}/python.md", + "description": "Basic rust project", + "template_engine": "Template", + "templates": [ + { + "engine": "", + "folder": "{{.SelfFolder}}/definitions/{{.TemplateName}}", + "file_name": "*", + "output_folder": "^/srcr", + "output_name": "*" + } + ] +} \ No newline at end of file diff --git a/execute/default/activities/source.json b/execute/default/activities/source.json index 16d2b6f..2f0256c 100644 --- a/execute/default/activities/source.json +++ b/execute/default/activities/source.json @@ -1,4 +1,4 @@ { "name": "source", - "description": "perform an activty on the source, e.g. lint" + "description": "perform an activity on the source, e.g. lint" } \ No newline at end of file diff --git a/rediops/default/sections/build.json b/rediops/default/sections/build.json new file mode 100644 index 0000000..55e58fb --- /dev/null +++ b/rediops/default/sections/build.json @@ -0,0 +1,4 @@ +{ + "name": "build", + "description": "retrieve build definitions from rediOps" +} diff --git a/rediops/default/sections/dependency.json b/rediops/default/sections/dependency.json new file mode 100644 index 0000000..b0acf6a --- /dev/null +++ b/rediops/default/sections/dependency.json @@ -0,0 +1,4 @@ +{ + "name": "dependency", + "description": "retrieve dependency definitions from rediOps" +} \ No newline at end of file diff --git a/rediops/default/sections/deploy.json b/rediops/default/sections/deploy.json new file mode 100644 index 0000000..5617ede --- /dev/null +++ b/rediops/default/sections/deploy.json @@ -0,0 +1,4 @@ +{ + "name": "deploy", + "description": "retrieve deploy definitions from rediOps" +} \ No newline at end of file diff --git a/rediops/default/sections/release.json b/rediops/default/sections/release.json new file mode 100644 index 0000000..9353412 --- /dev/null +++ b/rediops/default/sections/release.json @@ -0,0 +1,4 @@ +{ + "name": "release", + "description": "release the resource" +} \ No newline at end of file diff --git a/rediops/default/sections/source.json b/rediops/default/sections/source.json new file mode 100644 index 0000000..2407e1a --- /dev/null +++ b/rediops/default/sections/source.json @@ -0,0 +1,4 @@ +{ + "name": "source", + "description": "retrieve source definitions from rediOps" +} \ No newline at end of file diff --git a/rediops/default/sections/test.json b/rediops/default/sections/test.json new file mode 100644 index 0000000..a0e8d2c --- /dev/null +++ b/rediops/default/sections/test.json @@ -0,0 +1,4 @@ +{ + "name": "test", + "description": "retrieve test definitions from rediOps" +} \ No newline at end of file diff --git a/rediops/default/sections/tool.json b/rediops/default/sections/tool.json new file mode 100644 index 0000000..62aeea9 --- /dev/null +++ b/rediops/default/sections/tool.json @@ -0,0 +1,4 @@ +{ + "name": "tool", + "description": "retrieve tool definitions from rediOps" +} \ No newline at end of file