Commit graph

202 commits

Author SHA1 Message Date
Alexander Dahmen
1a58bd6138
Validate volume resize on the schema (#660)
Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>
2025-01-31 10:43:36 +01:00
Marcel Jacek
75d6760299
fix: kubeconfig state will not be removed if the cluster does not exists anymore (#659)
* fix: kubeconfig state is not removed if the cluster no longer exists and kubeconfig can't be found (status code 404)
2025-01-30 11:43:18 +01:00
Marcel Jacek
b5ce160d13
feat: Onboard affinity groups resource and data source (#652)
* onboard affinity_groups resource and data source
- add tests and descriptions
- fix: server doesn't use affinity_group value for payload

* Update descriptions
2025-01-30 11:07:32 +01:00
Rüdiger Schmitz
3642260cc4
fix: handle undefined creation time (#655) 2025-01-29 16:04:22 +01:00
Marcel Jacek
bcc8be0822
fix: Updating values of "stackit_server" leads to an inconsistent result (#653)
* fix: updating values of "stackit_server" leads to an inconsistent result, when network_interfaces is set
2025-01-29 11:18:02 +01:00
Alexander Dahmen
b6f3c70f15
Allow deleting root volume when deleting server (#651)
Introduce delete_on_termination field.

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>
2025-01-29 09:23:11 +01:00
Christopher Paul
11875602b8
Fix/logme params and update examples in dsa service docs (#644)
* APL-204: remove syslog use udp field from logme due to wrong implementation

* APL-208: update examples and regenerate logs

* fix linting error

* remove syslog-use-udp field from test

* re-generate docs

* remove doc changes that were generated by make command

* remove doc changes that were generated by make command

* remove doc changes that were generated by make command

* remove doc changes that were generated by make command

* remove doc changes that were generated by make command

* remove doc changes that were generated by make command

* remove doc changes that were generated by make command
2025-01-28 16:03:35 +01:00
Marcel Jacek
19fdcd5d10
fix: description of "server_network_interface_attachment" (#648) 2025-01-27 13:19:20 +01:00
Rüdiger Schmitz
2990f4507e
fix: correct parsing of maintenance window (#649)
* fix: correct parsing of maintenance window

* refactored dateparsing

* chore: fix go lint warnings

* fix: fix review finding

* fix: another review finding
2025-01-27 12:17:51 +01:00
Rüdiger Schmitz
2ec95dc20f
fix: exclude zero address as for inadmissable cases (#650)
* fix: exclude zero address as for inadmissable cases

* fix: review finding
2025-01-27 12:17:34 +01:00
stackit-pipeline
4106cf2170
fix(deps): update module github.com/stackitcloud/stackit-sdk-go/services/ske to v0.21.1 (#643)
Co-authored-by: Renovate Bot <renovate@whitesourcesoftware.com>
2025-01-23 16:02:18 +01:00
Rüdiger Schmitz
a2ed2b6068
fix: separated models for resource and data-source (#640) 2025-01-22 14:48:52 +01:00
Marcel Jacek
4d6f860b26
feature: Add "network_interfaces" field to server resource (#628)
* Add network_interfaces field to server resource

* Update docs

* Update description of stackit_server_network_interface_attach

Co-authored-by: João Palet <joao.palet@outlook.com>

---------

Co-authored-by: João Palet <joao.palet@outlook.com>
2025-01-22 11:22:39 +01:00
Rüdiger Schmitz
9b969ae583
fix: add missing status attribute to schema (#639)
* fix: add missing status attribute to schema

* fix: added review suggestion
2025-01-22 11:01:24 +01:00
Lukas Hoehl
a1e7890d86
fix(postgresflex): continue if database is not found during read (#629)
Signed-off-by: Lukas Hoehl <lukas.hoehl@stackit.cloud>
2025-01-21 12:41:44 +01:00
Alexander Dahmen
3adff492b6
Update kubeconfig when invalid (#627)
- kubeconfig expires
- credentials rotation
- cluster recreation

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>
2025-01-20 14:18:49 +01:00
João Palet
1a66887c01
feat: Allow move state on new Observability resources (#593)
* feat: Allow move state on new Observability resources

* Extend description to explain how to move a argus resource to observability

* Update argus docs with examples how to move a resource to observability

---------

Co-authored-by: Marcel Jacek <Marcel.Jacek@stackit.cloud>
2025-01-20 09:54:30 +01:00
Rüdiger Schmitz
f04ced9981
feat: Allow managing server state in stackit_server resource (#623)
* feat: implement state switching in resource

* chore: fix linter issues

* feat: fix testcases

* chore: update documentation

* feat: replace backoff implementation with canonical wait functionality

* feat: refactor update method to correctly handle state changes of shelved servers

* chore: reverted documentation changes

* feat: updated server documentation

* feat: configured desired_state as "write-only" attribute

* feat: update to command help
2025-01-15 11:28:50 +01:00
João Palet
700bdc90d0
Implement new stackit_image resource and datasource (#609)
* feat: Implement image resource and datasource

* feat: Add remaining config options

* feat: Make protected field only computed

* feat: Update dependency to use IaaS beta API

* fix: Minor fix in acc test

---------

Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>
2025-01-09 11:57:25 +00:00
Vicente Pinto
80c9e58052
Update nic field description (#619) 2024-12-23 12:35:02 +00:00
Rüdiger Schmitz
a297043c72
Feat/674070 tfp | cleanup logic for old ske credentials rotation flow (#611)
* feat: removed deprecated getCredentials call

* feat: update generated documentation

* feature: removed further kube_config references

* feature: updated documentation

* chore: integrated review findings
2024-12-19 08:30:34 +01:00
Marcel
d7e4ab2adb
Deprecate service_account_email config (#610)
* Deprecate service_account_email config
 - it could be extracted from the JWT if needed

Co-authored-by: João Palet <joao.palet@outlook.com>
2024-12-13 10:42:17 +01:00
a_nackov
100704c0f4
ref 635294: server update schedules (#607)
Signed-off-by: Adrian Nackov <adrian.nackov@mail.schwarz>
2024-12-12 17:20:29 +00:00
João Palet
51485f8c0e
Fix inconsistent result after apply in SKE cluster node pool taint value (#606)
* fix: Inconsistent result after apply in taint value

* feat: Also add UseStateForUnknown
2024-12-03 11:35:08 +00:00
Alexander Dahmen
58e99b4d67
Update loadbalancer example to use stackit sources instead of openstack (#601)
Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>
2024-12-02 13:52:12 +01:00
Alexander Dahmen
3a378c7b38 feat: Update golangci-lint version to 1.62.0 and go version to 1.23
Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>
2024-11-26 15:25:49 +01:00
GokceGK
1051995ad6
Change the public ip resource conflict warning message order (#600)
* change the warning message order

* change the warning message

* Update stackit/internal/services/iaas/publicipassociate/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* adapt warning in schema and docs

---------

Co-authored-by: João Palet <joao.palet@outlook.com>
2024-11-25 11:41:12 +01:00
GokceGK
2a2d62a429
Onboard public_ip_associate resource (#582)
* onboard public_ip_associate resource

* add warnings

* add example

* edit warning message

* Update stackit/internal/services/iaas/publicipassociate/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* Update stackit/internal/services/iaas/publicipassociate/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* Update stackit/internal/services/iaas/publicipassociate/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* Update stackit/internal/services/iaas/publicipassociate/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* Update stackit/internal/services/iaas/publicipassociate/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* Update stackit/internal/services/iaas/publicipassociate/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* Update stackit/internal/services/iaas/publicipassociate/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* Update stackit/internal/services/iaas/publicipassociate/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* add requiresReplace in network_interface_id

* change function name to toCreatePayload

* change deletion of the public ip association

* add unit test

* Add missing space between sentences

* update conflict warning message

* update conflict warning message

* Adjust warning message

---------

Co-authored-by: João Palet <joao.palet@outlook.com>
Co-authored-by: João Palet <joao.palet@freiheit.com>
2024-11-22 10:14:44 +00:00
GokceGK
7b693acc2d
Add missing fields to datasource (#596)
* add missing fields to datasource

* split resource and datasource models
2024-11-22 08:25:17 +00:00
stackit-pipeline
e11be37776
fix(deps): update stackit sdk modules (#597)
* fix(deps): update stackit sdk modules

* changes for the renamed method

---------

Co-authored-by: Renovate Bot <renovate@whitesourcesoftware.com>
Co-authored-by: Gökçe Gök Klingel <goekce.goek_klingel@stackit.cloud>
2024-11-21 10:58:53 +01:00
GokceGK
b1fb9ab9b6
Extend network resource fields (#576)
* deprecate nameservers filed

* onboard routed field

* onboard new ipv4 fields

* onboard new ipv6 fields

* update examples

* update examples

* update examples

* remove nameserver(deprecated) mapping

* make fields computed

* Revert "remove nameserver(deprecated) mapping"

This reverts commit e4bf1dc184289f3bddc10c5d3b2320966b529649.

* remove routed from update payload (not yet supported)

* Update docs/resources/network.md

Co-authored-by: João Palet <joao.palet@outlook.com>

* Update stackit/internal/services/iaas/network/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* fix the field descriptions

* remove ipv6 from examples

* use nameservers as rollback value to support deprecated field

* extend acceptance tests

* add condition that nameserver and ipv4_nameserver cannot be provided at the same time

* extend acc test

* improve conditions in create payload

* adapt modify plan to support update and delete operations

* fix acceptance test

* deprecate prefixes and create ipv4_prefixes field

* fix unit tests

* fix update issues

* fix linter issues

* extend modifyPlan condition

* add validateConfig function

* Update stackit/internal/services/iaas/network/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* Update stackit/internal/services/iaas/network/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* update descriptions

* Update stackit/internal/services/iaas/network/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* Update stackit/internal/services/iaas/network/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* implement no_gateway field and condition check

* implement no_ipv6_gateway field and condition check

* update examples

* update examples and descriptions

* fix linter issues

* Update stackit/internal/services/iaas/network/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* adapt descriptions

* apply acceptance comments

* adapt conditions in create and update

* add plan modifiers

* add requiresReplace

---------

Co-authored-by: João Palet <joao.palet@outlook.com>
2024-11-19 15:25:56 +01:00
Mauritz Uphoff
3ac1d50253
Feature: allow system components on nodepools (#591)
* feat: allow system components on nodepools

* docs: generated docs for ske

* lint: sort imports

* revert changes
2024-11-13 10:44:55 +00:00
João Palet
ea2da2cc25
fix: Fix formatting of key pair example (#592) 2024-11-12 17:45:43 +01:00
João Palet
0e393c5f38
Allow updating labels in network area route resource (#590)
* feat: Allow updating labels in network area route resource

* Update stackit/internal/services/iaas/networkarearoute/resource.go

Co-authored-by: GokceGK <161626272+GokceGK@users.noreply.github.com>

---------

Co-authored-by: GokceGK <161626272+GokceGK@users.noreply.github.com>
2024-11-12 09:58:41 +01:00
João Palet
b1f928f6be
Implement key pair resource (#588)
* Revert "Revert "Implement key pair resource (#578)" (#581)"

This reverts commit 600847a2ea.

* feat: Update iaas SDK module version; Use beta API in key pair resource
2024-11-11 11:08:05 +00:00
João Palet
fc27f65925
fix: Make SKE cluster hibernations timezone field Computed (#584) 2024-11-08 14:46:25 +00:00
João Palet
600847a2ea
Revert "Implement key pair resource (#578)" (#581)
This reverts commit 153947fd7b.
2024-11-06 14:21:17 +00:00
João Palet
153947fd7b
Implement key pair resource (#578)
* feat: Implement key pair resource

* feat: Implement acceptance test

* fix: Minor fixes to server and public IP resources

* fix: Lint fixes

* fix: Generalize description

* feat: Update examples to read key from file; Add datasource example

* fix: Fix field descriptions

* fix: Fix example

* feat: Add link to key pair resource in server example

* feat: Add links to key pair resource in other examples
2024-11-05 09:50:55 +00:00
João Palet
c1ada319ce
fix: Fix network interface handling of allowed addresses and security… (#579)
* fix: Fix network interface handling of allowed addresses and security fields

* fix: Simplify toCreatePayload
2024-11-04 13:27:24 +00:00
Mauritz Uphoff
f1a6179ccf
Typo in the docs for iaas beta ressources (#573)
* docs: add guide to retrieve outgoing ske ip-address

* docs: fix volume attach example

* Revert "docs: add guide to retrieve outgoing ske ip-address (#476)"

This reverts commit 3c530797b4.

---------

Co-authored-by: Mauritz Uphoff <mauritz.uphoff@mail.schwarz>
2024-10-24 09:31:06 +01:00
GokceGK
005d0c15bc
add link to the available service plans page (#575) 2024-10-23 14:04:08 +02:00
GokceGK
3fba34eacf
use regexp for validation (#574) 2024-10-23 11:54:22 +02:00
GokceGK
48d9291329
Fix credential and credential group not found issue (#567)
* fix credential and group not found issue

* simplify error handling
2024-10-21 15:01:12 +02:00
Vicente Pinto
09e2469a79
Update acc test (#570) 2024-10-21 13:31:26 +01:00
Vicente Pinto
93fe2fe89f
IaaS Release (#543)
* IaaS Volume (#541)

* Onboard IaaS Volume

* Labels mapping

* Add acceptance test

* Remove source field

* Fix lint

* Add examples and docs

* Fix lint

* Fix lint

* Fix lint

* Volume source field (#542)

* Onboard IaaS Volume

* Labels mapping

* Add acceptance test

* Remove source field

* Fix lint

* Add examples and docs

* Fix lint

* Fix lint

* Fix lint

* Add source field supoort

* Fix labels and source mapping

* Remove unecessary source mapping

* Move methods to conversion pkg

* Revert change

* Update stackit/internal/services/iaas/volume/datasource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* Update stackit/internal/services/iaas/volume/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* Update stackit/internal/services/iaas/volume/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* Update stackit/internal/services/iaas/volume/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* Changes after review

* Change after revie

---------

Co-authored-by: João Palet <joao.palet@outlook.com>

* Onboard IaaS security groups (#545)

* onboard iaas security group

* add examples and generate docs

* fix linter issues

* fix deletion

* Update stackit/internal/services/iaas/securitygroup/resource.go

Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>

* rename data source example file

* update docs

* remove field

* remove field

* remove plan modifier from the name field

* refactor labels in mapFields

* change function from utils to conversion

* remove rules from the security group

* update docs

* add security group acceptance test

* add plan modifiers to stateful field

* sort imports

* change stateful description

---------

Co-authored-by: Gökçe Gök Klingel <goekce.goek_klingel@stackit.cloud>
Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>

* IaaS Server baseline configuration (#546)

* Server resource schema

* Implemente CRUD methods and unit testsg

* Bug fixes

* Bug fix

* Make variable private

* Remove delete_on_termination and update descriptions

* Add security_group field to initial networking

* Add examples and acc test

* Generate docs

* Fix lint

* Fix lint issue

* Fix unit test

* Update desc

* Gen docs

* Onboard IaaS network interface (#544)

* implement network interface

* handle labels

* add CIDR validation

* fix linter issues and generate docs

* remove computed from the allowed addresses and fix the conditions

* Update stackit/internal/services/iaas/networkinterface/resource.go

Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>

* Update stackit/internal/services/iaas/networkinterface/datasource.go

Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>

* apply code review changes

* remove status from schema

* remove unnecessary GET call

* Update stackit/internal/services/iaas/networkinterface/resource.go

Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>

* Update stackit/internal/services/iaas/networkinterface/resource.go

Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>

* rename nic_security to security

* add beta markdown description

* use existing validateIP function

* use utils function for the options listing

* refactor labels

* change function from utils to conversion

* make allowed addresses a list of strings

* add acceptance test for network interfaces

* fix acceptance test

* rename security_groups as security_group_ids

* extend descriptions

* fix acc test

---------

Co-authored-by: Gökçe Gök Klingel <goekce.goek_klingel@stackit.cloud>
Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>

* rename volume data source example (#552)

Co-authored-by: Gökçe Gök Klingel <goekce.goek_klingel@stackit.cloud>

* add requires replace to ipv4 and ipv6 fields (#549)

Co-authored-by: Gökçe Gök Klingel <goekce.goek_klingel@stackit.cloud>
Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>

* Server resource improvements (#548)

* Improvements to server resource

* Fix example

* Remove useStateForUnknown

* Update SDK modules

* Update iaasalpha moduel (#555)

* Remove initial networking field (#556)

* Server attachment resources (#557)

* Server attachemnt resources

* Add examples

* Update volume datasource example

* Fix linting issues

* Fix linting

* Fix examples formatting

* Update go.mod

* Revert iaas to v0.11

* Onboard iaas public ip (#551)

* onboard public ip

* onboard public ip

* add public ip acceptance test

* Update examples/data-sources/stackit_public_ip/data-source.tf

Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>

* add plan modifier to IP

* change type in the volume data source

* add network_interface field to public ip resource

* rename network_interface to network_interface_id

* remove obsolete checks

* extend unit tests

* add network_interface_id in example

* extend unit test

* extend acceptance test

* sort imports

---------

Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>

* Add labels to network, network are and network area route resources (#559)

* Fix network_interface example

* Extend network, network area and network area route with labels

* Revert iaas to v0.11.0

---------

Co-authored-by: GokceGK <161626272+GokceGK@users.noreply.github.com>

* Onboard iaas security group rule (#553)

* onboard security group rule

* add security group rule to acceptance test

* change type in examples

* fix acc test issues

* extend example with objects

* remove obsolete field from acceptance test

* remove unnecessary plan modifier

* adapt schema fields

* adapt schema fields

* add requires replace to all fields

* extend descriptions with protocol limitations

* rename subfield protocol to number

* add requires replace to objects

* make icmp_parameters fields required

* add empty field checks for nested objects

* make max and min fields required in the port_range object

* make number field computed in the protocol object

* add UseStateForUnknown in protocol number

* remove obsolete unit test

* add checks for empty protocol and adapt unit test

* add atLeastOneOf validation in protocol fields

* fix linter issues

* Add project existence check before deleting SNA (#561)

* add project list check and error in network area deletion

* Update stackit/internal/services/iaas/networkarea/resource.go

Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>

---------

Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>

* Example server use cases and other fixes (#560)

* Add example usage to server resource

* Update examples

* Fix beta warning

* Update docs and examples

* Remove size from example

* Fix server description, fix security group rule error message

* Other fixes

* remove field from datasource

---------

Co-authored-by: GokceGK <161626272+GokceGK@users.noreply.github.com>

* Security group rule fixes (#562)

* Add example usage to server resource

* Update examples

* Fix beta warning

* Update docs and examples

* Remove size from example

* Fix server description, fix security group rule error message

* Other fixes

* Fixes to sec group rule

* Fix lint

* Change after review

---------

Co-authored-by: GokceGK <161626272+GokceGK@users.noreply.github.com>

* Fix server example (#565)

* Fix server example

* Fixes to examples, add CIDR validation to nic

* Migrate iaasalpha to iaas (#568)

* Migrate iaasalpha to iaas

* Fix lint

* Update example

* Improvements to security group rule (#569)

* Improvements to security group rule

* Fix lint

* Fix example and remove computed from description

* Fix formatting

* Update description

---------

Co-authored-by: João Palet <joao.palet@outlook.com>
Co-authored-by: GokceGK <161626272+GokceGK@users.noreply.github.com>
Co-authored-by: Gökçe Gök Klingel <goekce.goek_klingel@stackit.cloud>
2024-10-18 16:37:41 +01:00
Christian Hamm
04ce56b3d6
Increase the target count per pool from 250 to 1000 to be ready for large SKE clusters (#550)
Co-authored-by: Christian Hamm <Christian.Hamm@mail.schwarz>
2024-10-10 11:15:01 +01:00
GokceGK
204e49600c
Extend max_surge and max_unavailable descriptions (#533)
* extend max_surge and max_unavailable descriptions

* Update stackit/internal/services/ske/cluster/resource.go

Co-authored-by: João Palet <joao.palet@outlook.com>

* update docs

---------

Co-authored-by: Gökçe Gök Klingel <goekce.goek_klingel@stackit.cloud>
Co-authored-by: João Palet <joao.palet@outlook.com>
2024-09-16 10:43:41 +01:00
GokceGK
01bbce60fc
Add requiresreplace to members (#535)
* add requiresreplace to members

* remove modifyPlan

---------

Co-authored-by: Gökçe Gök Klingel <goekce.goek_klingel@stackit.cloud>
2024-09-16 10:43:03 +01:00
GokceGK
4347c6ea2d
Handle project members (#531)
* deprecate members field and make it valid only in creation

* remove owner and members from datasource

* Revert "remove owner and members from datasource"

This reverts commit 31d2302166cc85abd84c2c72a0ac2ce6e70ec103.

* update acc test

* add creation limitation in members description

---------

Co-authored-by: Gökçe Gök Klingel <goekce.goek_klingel@stackit.cloud>
2024-09-13 09:57:08 +02:00
GokceGK
4de8552303
Handle nameservers as optional field in network (#521)
* make nameservers optional

* fix typo in unit test

* update docs

* Add UseStateForUnkown

---------

Co-authored-by: Vicente Pinto <vicente.pinto@freiheit.com>
2024-09-09 10:58:25 +02:00