Commit graph

57 commits

Author SHA1 Message Date
Marcel Jacek
d9dc1d4495
feat(iaas): add iaas network v2 alpha (#899)
* add experimental network v2
2025-07-07 13:25:54 +02:00
Ruben Hönle
9ff9b8f610
feat(iaas): add experimental support for routing tables and routes (#896)
* Merged PR 788126: feat(iaas): Onboard routing tables

feat(iaas): Onboard routing tables

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Merged PR 793350: fix(routingtable): region attribute is missing in scheme

fix(routingtable): region attribute is missing in scheme

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Merged PR 797968: feat(iaas): onboarding of routing table routes

relates to STACKITTPR-241

* use iaasalpha sdk from github

* resolve todos

* remove routes from routing table model

* restructure packages

* acc tests routing tables

* add acc tests for routes

* chore(iaas): mark routing table resources as experimental

* chore(deps): use iaasalpha sdk v0.1.19-alpha

* Review feedback

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

---------

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>
Co-authored-by: Alexander Dahmen (EXT) <Alexander.Dahmen_ext@external.mail.schwarz>
Co-authored-by: Alexander Dahmen <alexander.dahmen@inovex.de>
2025-07-02 10:30:50 +02:00
Mauritz Uphoff
8a5de8c1b6
chore(docs): attach network interface via server attribute (#881) 2025-06-16 16:38:09 +02:00
Ruben Hönle
b313ef6a39
chore(terraform): use a util func to build internal terraform id (#869) 2025-06-12 14:41:57 +02:00
Ruben Hönle
281d31f615
chore(iaas): extract mapping of labels into util func (#867) 2025-06-05 13:46:33 +02:00
Ruben Hönle
5b044d275f
chore(docs): add possible values for security group rule protocol (#857)
relates to #816
2025-05-21 14:17:00 +00:00
Ruben Hönle
53ec994a7d
feat(iaas): set custom user-agent header for STACKIT API calls (#821)
relates to STACKITTPR-184
2025-05-14 16:46:16 +02:00
Marcel Jacek
c7c64a5806
feat(iaas): min/max acc tests (#811)
* feat(iaas): security group min/max acc test

* feat(iaas): image min/max acc test

* feat(iaas): KeyPair min/max acc test

* feat(iaas): Network area min/max acc test
- fix: wrong atLeast-validator for `minimum_prefix_length`

* feat(iaas): Network min/max acc test

* feat(iaas): Volume min/max acc test
- fix: volume update doesn't work if no name was defined
- fix: volume.server_id can not be set
- fix: error message volume.size returns value but was null

* feat(iaas): Network interfaces min/max acc test

* feat(iaas): Affinity groups acc test

* feat(iaas): Server min/max acc test
- stackit_server_volume_attach
- stackit_server_network_interface_attach
- stackit_server_service_account_attach

* fix(iaas): acc test
- image: fix read of Config.VirtioScsi
- keypair: add missing RequiresReplace() for name
- server: add missing UserData read in datasource and resource

* feat(iaas): public ip acc test
- fix: when a nic is assigned to a public ip, the field network_interface_id leads to recreation
2025-05-09 08:49:04 +02:00
Rüdiger Schmitz
44103a1ffd
fix(network): ipv4 prefix and length must be computed to avoid errors during creation (#779) 2025-04-11 15:20:56 +02:00
Marcel Jacek
c06b08e212
fix(iaas): image upload results in timeout (#773) 2025-04-10 13:44:30 +02:00
Marcel Jacek
d6749b6ce3
fix(STACKITTPR-168): improve error messages (#762)
* remove deprecated argus resources

* improve error messages
2025-04-04 14:18:16 +02:00
Rüdiger Schmitz
c7ed274647
Handle network prefixes correctly (#753)
* wip

* fix: corrected testcase

* fix: change prefix to workaround bug in current environment

* fix: made acceptance test more robust for randomized nameserver order

* fix: updated documentation

* fix: linter issue

* fix: acceptance test still relied on a fixed order of nameservers

* fix: fixed import acceptance testcase
2025-04-04 08:26:03 +02:00
Marcel Jacek
e2f32b597a
fix(iaas): server resource produces an unexpected new value for delete_on_termination (#755) 2025-04-02 09:50:17 +02:00
Alexander Dahmen
68859a3fad
fix(server): Handle boot bolume correctly (#749)
* fix(server): Handle boot bolume correctly

- Display id and delete_on_termination in datasource
- Handle id and delete_on_termination in resource

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* fixup

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

---------

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>
2025-03-28 13:31:36 +01:00
Ruben Hönle
727d67af01
chore(iaas): move beta resources and datasources to GA (#717)
relates to STACKITTPR-103
2025-03-26 09:23:25 +01:00
Marcel Jacek
e989102d6b
fix: add error message that key pair doesn't exists (#732)
* Add error message that key pair doesn't exists when the API returns a 404

* Update error check
2025-03-21 12:44:20 +01:00
Rüdiger Schmitz
c257ac49e2
Fix/stackittpr 102 objectstorage handling region in individual resources (#711)
* Revert "fix: make resource/data-source specific region attribute read-only (#682)"

This reverts commit 3e8dcc542b.

* fix: Support individual regions

* fix: review findings
2025-03-12 09:49:47 +00:00
Alexander Dahmen
4cfdbc508f
fix(network-interface): Response returns name \"\" if not set (#706)
This has to be set to a nil value otherwise a name \"\"  is sent via the next request which results
in a failing validator

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>
2025-03-06 10:32:22 +01:00
Marcel Jacek
dd4013c1bc
feat: Onboard IaaS Public IP range datasource (#633)
* Add "stackit_public_ip_range" datasource
  * Add docs and example
2025-03-04 13:57:28 +01:00
Alexander Dahmen
a0c2c30ced
Ft/rework acceptance tests follow up (#684)
* Enable CI

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Add default local file for IaaS image test

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Opensearch acceptance test typo

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Postgresflex acceptance test fix ignore

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Redis acceptance test remove mid uuid

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Objectstorage acceptance test ignore region for import

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Add more environment variables for CI build

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

---------

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>
2025-02-20 13:36:31 +01:00
Marcel Jacek
b7f56d1685
fix: state drift of "stackit_server" (#679)
* fix: State drift of "stackit_server" when using "stackit_server_network_interface_attach"

* fix: tests

* add acceptance tests for stackit_server_network_interface_attach
2025-02-18 14:33:39 +01:00
Alexander Dahmen
f0168cfed9
Ft/rework acceptance tests (#675)
* Rework IaaS acceptance tests

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Rework mongodb acceptance tests

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Rework observability acceptance tests

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Rework secretsmanager acceptance tests

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Rework loadbalancer acceptance tests

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Rework ske acceptance tests

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

* Update documentation

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>

---------

Signed-off-by: Alexander Dahmen <alexander.dahmen@inovex.de>
2025-02-14 08:44:11 +01:00
Ruben Hönle
170041f807
fix: use file inputstream on file upload instead of in-memory buffer (#671)
relates to STACKITTPR-70

Co-authored-by: Ruben Hoenle <Ruben.Hoenle@stackit.cloud>
2025-02-07 15:12:05 +01:00
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
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
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
Marcel Jacek
19fdcd5d10
fix: description of "server_network_interface_attachment" (#648) 2025-01-27 13:19:20 +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
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
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
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
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
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
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
Vicente Pinto
09e2469a79
Update acc test (#570) 2024-10-21 13:31:26 +01:00