Compare commits

..
6 Commits
Author SHA1 Message Date
khwezi 9f6d0ccaa0 Merge pull request 'Populated README' (#14) from develop into master
Reviewed-on: #14
2026-05-10 09:48:35 +02:00
Khwezi Mngoma 275befc258 Populated README
continuous-integration/drone/pr Build is passing
2026-05-10 09:48:12 +02:00
khwezi 1acbc4d213 Merge pull request 'fixed git repo naming' (#13) from develop into master
Reviewed-on: #13
2026-05-10 09:22:37 +02:00
Khwezi Mngoma 193496bbf9 fixed git repo naming
continuous-integration/drone/pr Build is passing
2026-05-10 09:22:09 +02:00
khwezi 8c99668fac Merge pull request 'Added tag and release step after publish' (#12) from develop into master
Reviewed-on: #12
2026-05-10 09:19:33 +02:00
Khwezi Mngoma a015801423 Added tag and release step after publish
continuous-integration/drone/pr Build is failing
2026-05-10 09:18:54 +02:00
2 changed files with 51 additions and 5 deletions
+28 -4
View File
@@ -13,8 +13,7 @@ steps:
- name: pack-and-publish
image: mcr.microsoft.com/dotnet/sdk:10.0
environment:
NEXUS_KEY:
from_secret: nexus_api_key
NEXUS_KEY: { from_secret: nexus_api_key }
NEXUS_URL: https://nexus.khongisa.co.za/repository/nuget-hosted/
VERSION: 1.${DRONE_BUILD_NUMBER}.0
commands:
@@ -42,6 +41,31 @@ steps:
- dotnet pack LiteCharms.Entities/LiteCharms.Entities.csproj -c Release -p:PackageVersion=$VERSION -o dist/
- dotnet nuget push dist/LiteCharms.Entities.$VERSION.nupkg --api-key $NEXUS_KEY --source $NEXUS_URL
- name: gitea-tag-release
image: alpine/git
environment:
GITEA_TOKEN: { from_secret: git_token }
GITEA_USER: { from_secret: git_username }
GITEA_PASS: { from_secret: git_password }
VERSION: 1.${DRONE_BUILD_NUMBER}.0
commands:
- apk add --no-cache curl
- git remote set-url origin https://$${GITEA_USER}:$${GITEA_PASS}@gitea.khongisa.co.za/litecharms/components.git
- git tag $VERSION
- git push origin $VERSION
- |
curl -X POST "https://gitea.khongisa.co.za/api/v1/repos/litecharms/components/releases" \
-H "Authorization: token $${GITEA_TOKEN}" \
-H "Content-Type: application/json" \
-d "{
\"tag_name\": \"$VERSION\",
\"target_commitish\": \"${DRONE_COMMIT_SHA}\",
\"name\": \"Library Suite $VERSION\",
\"body\": \"### Published NuGet Packages\nAll packages versioned as **$VERSION**:\n* LiteCharms.Abstractions\n* LiteCharms.Models\n* LiteCharms.Infrastructure\n* LiteCharms.Features\n* LiteCharms.Extensions\n* LiteCharms.Entities\n\n[View in Nexus](https://nexus.khongisa.co.za/repository/nuget-group/)\",
\"draft\": false,
\"prerelease\": false
}"
trigger:
branch:
- master
event:
- pull_request
+23 -1
View File
@@ -1 +1,23 @@
# LiteCharmsShared
# LiteCharms.Components
A suite of shared libraries providing core logic, models, and infrastructure for the LiteCharms ecosystem.
## 📦 Published Packages
All packages are versioned and pushed to [Nexus](https://nexus.khongisa.co.za) automatically via CI/CD.
* **Abstractions:** Interfaces and base contracts.
* **Models:** Shared DTOs and Request/Response objects.
* **Entities:** Database schema definitions.
* **Infrastructure:** Persistence and external service clients.
* **Features:** Core business logic modules.
* **Extensions:** Shared helper methods and DI configurations.
## 🚀 CI/CD Workflow
1. Create a **Pull Request** to `master`.
2. Drone CI builds, tests, and packs the suite as `1.${DRONE_BUILD_NUMBER}.0`.
3. Packages are pushed to the Nexus `nuget-hosted` repository.
4. A formal **Gitea Release** is created with the versioned "Bill of Materials."
## 🛠 Usage
Add the Nexus NuGet source to your local environment and reference the version listed in the latest Gitea Release:
`dotnet add package LiteCharms.Models -v 1.XX.0`