39 Commits

Author SHA1 Message Date
Andrei Kvapil
da3ee5d0ea [virtual-machine] add comment about sshKeys logic
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-07-09 10:37:39 +02:00
Andrei Kvapil
c831f53444 [virtual-machine] Fix cloudInit and sshKeys
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-07-09 08:41:40 +02:00
kklinch0
f251cba363 bugfix: vm and vmi add svc to dashboard
Signed-off-by: kklinch0 <kklinch0@gmail.com>
2025-07-08 10:02:34 +03:00
Andrei Kvapil
986de717f1 [virtual-machine] Refactor golden images
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-07-03 13:33:44 +03:00
Andrei Kvapil
d38c8aa5ab [CDI] golden disks feature for reuse
Use Golden Images to speed up VM / VMI deploy

Signed-off-by: gwynbleidd <gwynbleidd2106@yandex.com>
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-07-03 13:23:44 +03:00
kklinch0
70c7978306 vms add sockets to resources
Signed-off-by: kklinch0 <kklinch0@gmail.com>
2025-07-02 15:17:30 +03:00
Andrei Kvapil
3b8a9f9d2c Configure all apps to use new function to generate subjects
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-06-16 20:32:11 +02:00
Ahmad Murzahmatov
bbee8103eb [fix] vm-instance: cloud-init
made same change as in
[PR](https://github.com/cozystack/cozystack/pull/1019)

Signed-off-by: Ahmad Murzahmatov <gwynbleidd2106@yandex.com>
2025-06-06 16:52:54 +06:00
klinch0
730ea4d5ef [fix] CloudInit (#1019)
If ssh key provided - deploy
If cloudinit provided - deploy
If ssh key and cloudinit provided - deploy both
If none provided - init empty to avoid issues w/
network

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Refactor**
- Improved handling of SSH keys and cloud-init data in the Virtual
Machine setup, clearly distinguishing cases when SSH keys, cloud-init,
or both are provided.
  - Enhanced template readability with added spacing for better clarity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-06-05 15:53:08 +03:00
Timofei Larkin
b140f1b57f Capture all resources by WorkloadMonitors
Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
2025-06-03 15:40:27 +03:00
Timofei Larkin
64936021d2 Release v0.31.0-rc.3 (#991)
This PR prepares the release `v0.31.0-rc.3`.

Signed-off by: Timofei Larkin <lllamnyp@gmail.com>
2025-06-03 14:10:11 +06:00
Andrei Kvapil
7b8e7e40ce [virtual-machine] fix: specify ports even for wholeIP mode
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-05-28 20:12:30 +02:00
Andrei Kvapil
461f756c88 [virtual-machine] Set PortList method by default
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-05-28 11:55:52 +02:00
Andrei Kvapil
bca27dcfdc [virtual-machine] Add support for various storages
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-05-22 11:55:48 +02:00
Andrei Kvapil
8547dc3b21 [virtual-machine] Fix: Add GPU names to virtual machines spec
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-04-23 15:27:47 +02:00
Denis Seleznev
991c7e1943 Handle empty cloudInit.
Add a no-op user-data when sshKeys are specified.

Signed-off-by: Denis Seleznev <kto.3decb@gmail.com>
2025-04-10 10:07:43 +02:00
Andrei Kvapil
f4cace093c Add a setting to VMs that allows users to trigger cloud-init full reconfiguration. (#767)
This will trigger cloud-init reinitialization, including ssh keys update
and static network config refresh.
2025-04-10 09:20:55 +02:00
Denis Seleznev
261ce4278f Add a setting to VMs that allows users to trigger cloud-init full reconfiguration.
Changing `cloudInitSeed`  will trigger cloud-init reinitialization, including ssh keys update and static network config refresh.

Signed-off-by: Denis Seleznev <kto.3decb@gmail.com>
2025-04-09 20:48:18 +02:00
Andrei Kvapil
9ad6b0d726 [virtual-machine] Add GPU support
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-04-09 10:39:49 +02:00
Andrei Kvapil
f708dc2043 VirtualMachine: Fix WholeIP enum check (#657)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Chores**
- Updated the virtual machine component to version 0.8.2, ensuring more
reliable version references.
- Standardized a configuration option's casing to maintain consistency.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-03-01 11:08:03 +01:00
Andrei Kvapil
e2e32096a3 Fix VM services selector (#627)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Chores**
- Updated deployment configurations with the latest application versions
(0.8.1 and 0.5.1) to ensure improved stability and compatibility.
- **Bug Fixes**
- Enhanced service connectivity by refining the criteria used for
routing requests to the correct application endpoints.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-02-12 14:03:10 +01:00
Andrei Kvapil
f768dc1632 Introduce externalMethod=WholeIP for VMs (#616)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced a new configuration option for specifying the method to
handle external traffic. Users can now choose between "WholeIP" and
"PortList" (default) across virtual machine and instance deployments.
- Service settings now adjust automatically based on the selected
external traffic method.

- **Documentation**
- Updated configuration guides to include details on the new
`externalMethod` parameter and its usage for managing external traffic.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-02-07 08:40:49 +01:00
Andrei Kvapil
d557050eca Fix vm-update hook access to api (#597)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Version Updates**
	- Updated `virtual-machine` package version from `0.7.0` to `0.7.1`
	- Updated `vm-instance` package version from `0.4.0` to `0.4.1`

- **Configuration Changes**
- Added new policy annotation `policy.cozystack.io/allow-to-apiserver:
"true"` to update hook templates for both virtual machine and VM
instance

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-01-27 10:56:04 +01:00
Andrei Kvapil
2f5336388c Add hooks to update instanceType, instanceProfile, and storage (#590)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
	- Added update hook for Virtual Machine configurations
- Enhanced version management for virtual machine and VM instance
packages

- **Version Updates**
	- Virtual Machine package version updated from 0.6.0 to 0.7.0
	- VM Instance package version updated from 0.3.0 to 0.4.0

- **Improvements**
- Introduced dynamic configuration update mechanisms for Kubernetes
deployments
- Added service account and role permissions for VM configuration
management

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-01-17 17:06:39 +01:00
Andrei Kvapil
cb7b8158e0 Update version-map for updated application (#568)
fixes versions update after this pr
https://github.com/aenix-io/cozystack/pull/563

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-01-09 15:09:18 +01:00
Andrei Kvapil
107f390ae8 workloadmonitor (#563)
- upd redis
- update kubernetes app to use workloadmonitors
- upd kubernetes
- fix version


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Added `WorkloadMonitor` resources for various components including
Kubernetes clusters, Redis, Sentinel, and SeaweedFS.
- Introduced monitoring capabilities for `alerta`, `alertmanager`,
`grafana`, and `vlogs` services.
- Enhanced RBAC configurations to support new monitoring resources
across multiple API groups.

- **Improvements**
	- Updated metadata and labeling for virtual machine templates.
	- Added dynamic resource naming based on release and group names.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-01-09 13:25:12 +01:00
Andrei Kvapil
cad9cdedf5 Add Virtual Machine (simple) (#430)
Revert removing Virtual Machine, removed by
https://github.com/aenix-io/cozystack/pull/403

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced a new package: `virtual-machine` with multiple version
entries.
- Added comprehensive documentation and configuration for the
`virtual-machine` application.
- New Helm chart and templates for Kubernetes resources, enhancing
deployment options.

- **Bug Fixes**
- Updated version entries for existing packages, ensuring accuracy in
versioning.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-10-17 14:52:48 +02:00
Andrei Kvapil
ced8e5b9b5 Introduce InstanceTypes (#403)
This PR introduces the default instancetypes:

- cx1.2xlarge
- cx1.4xlarge
- cx1.8xlarge
- cx1.large
- cx1.medium
- cx1.xlarge
- gn1.2xlarge
- gn1.4xlarge
- gn1.8xlarge
- gn1.xlarge
- m1.2xlarge
- m1.4xlarge
- m1.8xlarge
- m1.large
- m1.xlarge
- n1.2xlarge
- n1.4xlarge
- n1.8xlarge
- n1.large
- n1.medium
- n1.xlarge
- o1.2xlarge
- o1.4xlarge
- o1.8xlarge
- o1.large
- o1.medium
- o1.micro
- o1.nano
- o1.small
- o1.xlarge
- rt1.2xlarge
- rt1.4xlarge
- rt1.8xlarge
- rt1.large
- rt1.medium
- rt1.micro
- rt1.small
- rt1.xlarge
- u1.2xlarge
- u1.2xmedium
- u1.4xlarge
- u1.8xlarge
- u1.large
- u1.medium
- u1.micro
- u1.nano
- u1.small
- u1.xlarge

And the following profiles:

- alpine
- centos.7
- centos.7.desktop
- centos.stream10
- centos.stream10.desktop
- centos.stream8
- centos.stream8.desktop
- centos.stream8.dpdk
- centos.stream9
- centos.stream9.desktop
- centos.stream9.dpdk
- cirros
- fedora
- fedora.arm64
- opensuse.leap
- opensuse.tumbleweed
- rhel.10
- rhel.10.arm64
- rhel.7
- rhel.7.desktop
- rhel.8
- rhel.8.desktop
- rhel.8.dpdk
- rhel.9
- rhel.9.arm64
- rhel.9.desktop
- rhel.9.dpdk
- rhel.9.realtime
- sles
- ubuntu
- windows.10
- windows.10.virtio
- windows.11
- windows.11.virtio
- windows.2k16
- windows.2k16.virtio
- windows.2k19
- windows.2k19.virtio
- windows.2k22
- windows.2k22.virtio
- windows.2k25
- windows.2k25.virtio

as part of https://github.com/aenix-io/cozystack/issues/258

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
	- Introduced new instance types and preferences for Virtual Machines.
- Added new sections in the documentation for better clarity on series
and parameters.
- Enhanced resource management with new fields for CPU and memory
specifications.
	- New release added for `kubevirt-common-instancetypes`.
- Added a new chart for `vm-disk` with detailed deployment instructions.
- New `vm-instance` chart introduced with comprehensive deployment
details.
- New `vm-disk` resources for managing virtual machine disks and
resizing PVCs.

- **Bug Fixes**
	- Corrected indentation issues in configuration files.

- **Documentation**
- Updated README files with new parameters and sections for improved
user guidance.

- **Chores**
- Version updates across various components to ensure compatibility and
access to the latest features.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-10-16 18:35:30 +02:00
Andrei Kvapil
4746d51785 VM: add Talos Linux (#319) 2024-08-30 13:30:39 +02:00
Andrei Kvapil
b7bfc4c4a9 VM: fix Alpine Image (#318)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-30 13:28:59 +02:00
Andrei Kvapil
55282acdba vm: use block volumes to enable live-migration (#316)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-30 13:14:46 +02:00
Artem Rootman
428284354c Rework VirtualMachine, introduce cloudinit and sshKeys configuration, fix externalPorts (#303)
Add `externalPorts`, `sshKeys` and `cloudInit` options with examples.
Remove `service`, `sshPwauth`, `disableRoot`, `password`, `chpasswdExpire` options

---------

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
Co-authored-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-30 11:51:04 +02:00
Andrei Kvapil
c07c4bbdab Introduce stroageClass option for all applications (#290)
Provide the oportunity to specify StroageClass in applications

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-20 17:19:10 +02:00
Artem Rootman
3b67f1fb27 Update Virtual Machine Chart Configuration and Documentation (#292)
- Refactored `values.yaml` to move disk size under `resources` and added
`service.ports` configuration.
- Updated `README.md` to include detailed parameter descriptions and
example configuration.
- Modified `service.yaml` to use dynamic port configuration from
`values.yaml`.
- Corrected `vm.yaml` to reference disk size from `resources` and
updated base image URL for Fedora.
- Revised `values.schema.json` to align with changes in `values.yaml`,
including added parameters and descriptions.

Enhancements include:
- Improved clarity of default values and parameter settings.
- Added flexibility for service port customization.
- Corrected and updated URLs and default values for better accuracy.
2024-08-19 15:02:16 +02:00
Andrei Kvapil
a120ce726e DX: Use generic Makefile for packages (#288)
This change is aimed at improving the development experience.

- The option `make delete` has been added.
- Added check for `NAME` and `NAMESPACE` variables
- Now, any package (not just system ones) can include options such as
make show, make diff, make apply.
- Applications from packages/extra require explicit specification of the
`NAMESPACE`.
- Applications from packages/apps require explicit specification of both
`NAME` and `NAMESPACE`.

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-16 10:26:13 +02:00
Andrei Kvapil
40fd96dc3b Update dashboard icons (#274)
![image_2024-08-12_12-53-02
(2)](https://github.com/user-attachments/assets/8348e2ea-c89a-45aa-9ad3-de7c83f4ad1a)


![image_2024-08-12_12-53-02](https://github.com/user-attachments/assets/4b28228e-fcbe-4c03-b02a-d3c6d59f6b0a)


![image_2024-08-12_12-56-29](https://github.com/user-attachments/assets/d6852b43-1391-4bab-afc4-859433311ead)

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
Co-authored-by: Viktoriia Kvapil <159528100+kvapsova@users.noreply.github.com>
2024-08-12 14:47:11 +02:00
Andrei Kvapil
e265e8bc43 Ship all logos with Cozystack
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-07-16 17:31:52 +02:00
Andrei Kvapil
4da8ac3b77 Add schema generation and remove default values (#110)
* Add schema generation and remove default values

* fix monitoring schema generation

* fix default values


Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-05-09 10:45:57 +02:00
Andrei Kvapil
f642698921 Preapare release v0.0.1
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-02-08 12:04:32 +01:00