4baa3ae707
feat: added default resource limit and request to k8s tenant
Run Check Script / check (pull_request) Failing after 35s
2025-07-02 14:06:08 -04:00
82119076cf
fix: merge conflict
Run Check Script / check (pull_request) Failing after 41s
2025-07-02 13:46:26 -04:00
f2a350fae6
fix: comments from pr
Run Check Script / check (pull_request) Successful in 5s
2025-07-02 13:35:20 -04:00
197770a603
feat: Add ntfy score ( #69 )
...
Run Check Script / check (push) Failing after 42s
Compile and package harmony_composer / package_harmony_composer (push) Successful in 4m4s
Co-authored-by: tahahawa <tahahawa@gmail.com>
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/69
2025-07-02 16:19:35 +00:00
ab69a2c264
feat: add service monitors support to prom ( #66 )
...
Run Check Script / check (push) Failing after 45s
Compile and package harmony_composer / package_harmony_composer (push) Successful in 3m30s
Co-authored-by: tahahawa <tahahawa@gmail.com>
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/66
Co-authored-by: taha <taha@noreply.git.nationtech.io>
Co-committed-by: taha <taha@noreply.git.nationtech.io>
2025-07-02 15:29:16 +00:00
e857efa92f
fix merge conflict
Run Check Script / check (pull_request) Successful in 1m50s
2025-07-02 11:26:27 -04:00
2ff3f4afa9
Merge pull request 'feat: Introduce Application trait, not too sure how it will evolve but it makes sense, at the very least to identify the Application, also some minor refactoring' ( #73 ) from feat/applicationTrait into master
...
Run Check Script / check (push) Failing after 50s
Compile and package harmony_composer / package_harmony_composer (push) Has been cancelled
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/73
2025-07-02 15:25:26 +00:00
2f6a11ead7
Merge pull request 'feat: Application Interpret still WIP but now call ensure_installed on features, also introduced a rust app example, completed work on clone_box behavior' ( #72 ) from feat/rust_cd into master
...
Run Check Script / check (push) Successful in 2m4s
Compile and package harmony_composer / package_harmony_composer (push) Has been cancelled
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/72
2025-07-02 15:20:24 +00:00
7de9860dcf
refactor: monitoring takes namespace from tenant
Run Check Script / check (pull_request) Successful in -6s
2025-07-02 11:14:24 -04:00
6e884cff3a
feat: Start default implementation to ArgoCD for ContinuousDelivery feature
Run Check Script / check (pull_request) Failing after -34s
2025-07-02 11:14:24 -04:00
c74c51090a
feat: Introduce Application trait, not too sure how it will evolve but it makes sense, at the very least to identify the Application, also some minor refactoring
Run Check Script / check (pull_request) Failing after -38s
2025-07-02 09:48:26 -04:00
8ae0d6b548
feat: Application Interpret still WIP but now call ensure_installed on features, also introduced a rust app example, completed work on clone_box behavior
Run Check Script / check (pull_request) Successful in -6s
2025-07-01 22:44:44 -04:00
ee02906ce9
fix(composer): spawn commands to allow interaction ( #71 )
...
Run Check Script / check (push) Successful in 1m39s
Compile and package harmony_composer / package_harmony_composer (push) Successful in 3m5s
Using `Command::output()` executes the command and wait for it to be finished before returning the output.
Though in some cases the user might need to interact with the CLI before continuing, which hangs the command execution.
Instead, using `Command::spawn()` allows to forward stdin/stdout to the parent process.
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/71
Reviewed-by: johnride <jg@nationtech.io>
2025-07-01 21:08:19 +00:00
284cc6afd7
feat: Application module architecture and placeholder features ( #70 )
...
Run Check Script / check (push) Successful in 1m34s
Compile and package harmony_composer / package_harmony_composer (push) Failing after 11m22s
With this architecture, we have an extensible application module for which we can easily define new features and add them to application scores.
All this is driven by the ApplicationInterpret, who understands features and make sure they are "installed".
The drawback of this design is that we now have three different places to launch scores within Harmony : Maestro, Topology and Interpret. This is an architectural smell and I am not sure how to deal with it at the moment.
However, all these places where execution is performed make sense semantically : an ApplicationInterpret must understand ApplicationFeatures and can very well be responsible of them. Same goes for a Topology which provides features itself by composition (ex. K8sAnywhereTopology implements TenantManager) so it is natural for this very imp
lementation to know how to install itself.
Co-authored-by: Ian Letourneau <ian@noma.to>
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/70
Co-authored-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
Co-committed-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
2025-07-01 19:40:30 +00:00
9bf6aac82e
doc: Fix curl command for environments without ~/.local/bin/ folder
Run Check Script / check (push) Successful in 1m21s
Compile and package harmony_composer / package_harmony_composer (push) Successful in 3m1s
2025-07-01 11:32:24 -04:00
460c8b59e1
wip: helm chart deploys to namespace with resource limits and requests, trying to fix connection refused to api error
2025-06-27 14:47:28 -04:00
8e857bc72a
wip: using the name from tenant config as deployment namespace for kubeprometheus deployment or defaulting to monitoring if no tenant config exists
2025-06-26 16:24:19 -04:00
e8d55d27e4
Merge pull request 'feat: added webhook receiver to alertchannels' ( #68 ) from feat/webhook_receiver into master
...
Run Check Script / check (push) Successful in 1m34s
Compile and package harmony_composer / package_harmony_composer (push) Successful in 3m8s
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/68
Reviewed-by: taha <taha@noreply.git.nationtech.io>
2025-06-26 16:43:25 +00:00
fea7e9ddb9
doc: Improve harmony_composer README single command usage
Run Check Script / check (push) Successful in 1m34s
Compile and package harmony_composer / package_harmony_composer (push) Has been cancelled
2025-06-26 12:40:39 -04:00
7ec89cdac5
fix: cargo fmt
Run Check Script / check (pull_request) Successful in 1m58s
2025-06-26 11:26:07 -04:00
55143dcad4
Merge pull request 'feat: add dry-run functionality and similar dependency' ( #62 ) from feat/dryRun into master
...
Run Check Script / check (push) Successful in 1m42s
Compile and package harmony_composer / package_harmony_composer (push) Successful in 9m8s
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/62
Reviewed-by: wjro <wrolleman@nationtech.io>
2025-06-26 15:14:25 +00:00
17ad92402d
feat: added webhook receiver to alertchannels
Run Check Script / check (pull_request) Failing after 47s
2025-06-26 10:12:18 -04:00
29e74a2712
Merge pull request 'feat: added alert rule and impl for prometheus as well as a few preconfigured bmc alerts for dell server that are used in the monitoring example' ( #67 ) from feat/alert_rules into master
...
Run Check Script / check (push) Successful in -1s
Compile and package harmony_composer / package_harmony_composer (push) Successful in 13m10s
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/67
2025-06-26 13:16:38 +00:00
e16f8fa82e
fix: modified directory names to be in line with alert functions and deployment environments
Run Check Script / check (pull_request) Successful in 1m43s
2025-06-25 16:10:45 -04:00
c21f3084dc
feat: added alert rule and impl for prometheus as well as a few preconfigured bmc alerts for dell server that are used in the monitoring example
Run Check Script / check (pull_request) Successful in 1m35s
2025-06-25 15:10:16 -04:00
2c706225a1
feat: Publishing a release of harmony composer binary as latest-snapshot ( #65 )
...
Run Check Script / check (push) Successful in 1m42s
Compile and package harmony_composer / package_harmony_composer (push) Successful in 3m44s
Co-authored-by: tahahawa <tahahawa@gmail.com>
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/65
Reviewed-by: taha <taha@noreply.git.nationtech.io>
Co-authored-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
Co-committed-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
2025-06-25 15:14:45 +00:00
acfb93f1a2
feat: add dry-run functionality and similar dependency
...
Run Check Script / check (pull_request) Successful in 1m45s
- Implemented a dry-run mode for K8s resource patching, displaying diffs before applying changes.
- Added the `similar` dependency for calculating and displaying text diffs.
- Enhanced K8s resource application to handle various port specifications in NetworkPolicy ingress rules.
- Added support for port ranges and lists of ports in NetworkPolicy rules.
- Updated K8s client to utilize the dry-run configuration setting.
- Added configuration option `HARMONY_DRY_RUN` to enable or disable dry-run mode.
2025-06-24 14:54:22 -04:00
f437c40428
impl_monitoring_alerting_kube_prometheus ( #64 )
...
Run Check Script / check (push) Successful in 1m29s
Compile and package harmony_composer / package_harmony_composer (push) Successful in 2m59s
Co-authored-by: tahahawa <tahahawa@gmail.com>
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/64
Co-authored-by: Willem <wrolleman@nationtech.io>
Co-committed-by: Willem <wrolleman@nationtech.io>
2025-06-24 18:54:15 +00:00
e06548ac44
feat: Alerting module architecture to make it easy to use and extensible by external crates
...
Run Check Script / check (push) Successful in 1m34s
Compile and package harmony_composer / package_harmony_composer (push) Successful in 3m26s
Co-authored-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/61
Reviewed-by: johnride <jg@nationtech.io>
Co-authored-by: Willem <wrolleman@nationtech.io>
Co-committed-by: Willem <wrolleman@nationtech.io>
2025-06-19 14:37:16 +00:00
155e9bac28
feat: create harmony_composer initial version + rework CI ( #58 )
...
Run Check Script / check (push) Successful in 1m38s
Compile and package harmony_composer / package_harmony_composer (push) Successful in 4m15s
Co-authored-by: tahahawa <tahahawa@gmail.com>
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/58
Reviewed-by: johnride <jg@nationtech.io>
Co-authored-by: Taha Hawa <taha@taha.dev>
Co-committed-by: Taha Hawa <taha@taha.dev>
2025-06-18 19:52:37 +00:00
7bebc58615
feat: add tenant credential management ( #63 )
...
Run Check Script / check (push) Successful in 1m48s
Adds the foundation for managing tenant credentials, including:
- `TenantCredentialScore` for scoring credential-related operations.
- `TenantCredentialManager` trait for creating users.
- `CredentialMetadata` struct to store credential information.
- `CredentialData` enum to hold credential content.
- `TenantCredentialBundle` struct to encapsulate metadata and content.
This provides a starting point for implementing credential creation, storage, and retrieval within the harmony system.
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/63
Co-authored-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
Co-committed-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
2025-06-17 18:28:04 +00:00
246d6718c3
docs: Introduce project delivery automation ADR. This is still WIP ( #51 )
...
Run Check Script / check (push) Successful in 1m52s
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/51
Co-authored-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
Co-committed-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
2025-06-12 20:00:22 +00:00
d776042e20
docs: Improve README formatting
...
Run Check Script / check (push) Successful in 1m49s
Signed-off-by: johnride <jg@nationtech.io>
2025-06-12 18:23:17 +00:00
86c681be70
docs: New README, two options to choose from right now ( #59 )
...
Run Check Script / check (push) Successful in 1m52s
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/59
Co-authored-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
Co-committed-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
2025-06-12 18:16:43 +00:00
b94dd1e595
feat: add support for custom CIDR ingress/egress rules ( #60 )
...
Run Check Script / check (push) Successful in 1m53s
- Added `additional_allowed_cidr_ingress` and `additional_allowed_cidr_egress` fields to `TenantNetworkPolicy` to allow specifying custom CIDR blocks for network access.
- Updated K8sTenantManager to parse and apply these CIDR rules to NetworkPolicy ingress and egress rules.
- Added `cidr` dependency to `harmony_macros` and a custom proc macro `cidrv4` to easily parse CIDR strings.
- Updated TenantConfig to default inter tenant and internet egress to deny all and added default empty vectors for CIDR ingress and egress.
- Updated ResourceLimits to implement default.
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/60
Co-authored-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
Co-committed-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
2025-06-12 15:24:03 +00:00
ef5ec4a131
Merge pull request 'feat: Pass configuration when initializing K8sAnywhereTopology' ( #57 ) from feat/configK8sAnywhere into master
...
Run Check Script / check (push) Successful in 1m47s
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/57
2025-06-10 13:01:50 +00:00
a8eb06f686
feat: Pass configuration when initializing K8sAnywhereTopology
Run Check Script / check (push) Successful in 1m47s
Run Check Script / check (pull_request) Successful in 1m47s
2025-06-10 09:00:38 -04:00
d1678b529e
Merge pull request 'feat: K8s Tenant looks good, basic isolation working now' ( #56 ) from feat/k8sTenant into master
...
Run Check Script / check (push) Successful in 1m57s
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/56
2025-06-10 12:59:13 +00:00
1451260d4d
feat: K8s Tenant looks good, basic isolation working now
Run Check Script / check (push) Successful in 1m48s
Run Check Script / check (pull_request) Successful in 1m48s
2025-06-09 20:39:15 -04:00
415488ba39
feat: K8s apply function now correctly emulates kubectl apply behavior by either creating or updating resources ( #55 )
...
Run Check Script / check (push) Has been cancelled
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/55
Co-authored-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
Co-committed-by: Jean-Gabriel Gill-Couture <jg@nationtech.io>
2025-06-09 20:19:54 +00:00
bf7a6d590c
Merge pull request 'TenantManager_impl_k8s_anywhere' ( #47 ) from TenantManager_impl_k8s_anywhere into master
...
Run Check Script / check (push) Successful in 1m56s
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/47
2025-06-09 18:07:32 +00:00
8d8120bbfd
fix: K8s ingress module was completely broken, fixed resource definition structure and types
Run Check Script / check (push) Successful in 1m47s
Run Check Script / check (pull_request) Successful in 1m48s
2025-06-09 14:02:06 -04:00
6cf61ae67c
feat: Tenant manager k8s implementation progress : ResourceQuota, NetworkPolicy and Namespace look good. Still WIP
2025-06-09 13:59:49 -04:00
8c65aef127
feat: Can now apply any k8s resource type, both namespaced or cluster scoped
2025-06-09 13:58:40 -04:00
00e71b97f6
chore: Move ADR helper files into folders with their corresponding ADR number
Run Check Script / check (push) Successful in 1m49s
Run Check Script / check (pull_request) Successful in 1m48s
2025-06-09 13:54:23 -04:00
ee2bba5623
Merge pull request 'feat: Add Default implementation for Harmony Id along with documentation.' ( #53 ) from feat/id_default into TenantManager_impl_k8s_anywhere
...
Run Check Script / check (push) Successful in 1m47s
Run Check Script / check (pull_request) Successful in 1m47s
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/53
2025-06-09 17:47:33 +00:00
118d34db55
Merge pull request 'feat: Initialize k8s tenant properly' ( #54 ) from feat/init_k8s_tenant into feat/id_default
...
Run Check Script / check (push) Successful in 1m48s
Run Check Script / check (pull_request) Successful in 1m47s
Reviewed-on: https://git.nationtech.io/NationTech/harmony/pulls/54
2025-06-09 17:42:10 +00:00
24e466fadd
fix: formatting
Run Check Script / check (push) Successful in 1m48s
Run Check Script / check (pull_request) Successful in 1m46s
2025-06-08 23:51:11 -04:00
14fc4345c1
feat: Initialize k8s tenant properly
Run Check Script / check (push) Successful in 1m48s
Run Check Script / check (pull_request) Successful in 1m49s
2025-06-08 23:49:08 -04:00
8e472e4c65
feat: Add Default implementation for Harmony Id along with documentation.
...
Run Check Script / check (push) Failing after 47s
Run Check Script / check (pull_request) Failing after 45s
This Id implementation is optimized for ease of use. Ids are prefixed with the unix epoch and suffixed with 7 alphanumeric characters. But Ids can also contain any String the user wants to pass it
2025-06-08 21:23:29 -04:00