* Initial PoC for a Project Role Assignment resource
Signed-off-by: Benjamin Ritter <benjamin.ritter@stackit.cloud>
* fix: move project_role_assignment into new "authorization" resource group
Signed-off-by: Benjamin Ritter <benjamin.ritter@stackit.cloud>
* feat: add authorization_project_role_assignment acceptance test
Signed-off-by: Benjamin Ritter <benjamin.ritter@stackit.cloud>
* docs: add authorization_project_role_assignment docs and examples
Signed-off-by: Benjamin Ritter <benjamin.ritter@stackit.cloud>
* fix: linting
Signed-off-by: Benjamin Ritter <benjamin.ritter@stackit.cloud>
* feat: add generic role_assignment resources
Signed-off-by: Benjamin Ritter <benjamin.ritter@stackit.cloud>
* feat: add infrastructure for experimental features
Signed-off-by: Benjamin Ritter <benjamin.ritter@stackit.cloud>
* feat: Make IAM resources part of the iam experiment
Signed-off-by: Benjamin Ritter <benjamin.ritter@stackit.cloud>
* fix: Log an error if an experiment does not exist
Signed-off-by: Benjamin Ritter <benjamin.ritter@stackit.cloud>
* fix: Do not cache the experiment check
Caching the experiment check causes problems when
running the provider in debug mode, since
configure in the provider can be called multiple
times there with different configurations, with
different experiments enabled.
Signed-off-by: Benjamin Ritter <benjamin.ritter@stackit.cloud>
---------
Signed-off-by: Benjamin Ritter <benjamin.ritter@stackit.cloud>
Co-authored-by: Benjamin Ritter <benjamin.ritter@stackit.cloud>
* feat: region adjustment sqlserverflex
* adapt acceptance tests
* add region to internal id of sqlserverflex resources to support import of different regions
* 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>
* feat: completed bucket and credential group
* feat: fix linter warnings
* feat: updated documentation
* feat: updated to current version of the regional api
* feat: implement review findings
* feat: implement further review findings
* fix: make sure region is stored for the data-source in the state
* 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>
* 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>
* Create observability resources
* add deprecation message to argus
* add warning to readme
* remove warning from readme
* add info back to migration md
* Update MIGRATION.md
Co-authored-by: João Palet <joao.palet@outlook.com>
---------
Co-authored-by: João Palet <joao.palet@outlook.com>
* Onboard network-area resource (#469)
* onboard network-area resource
* fix update network ranges
* fix linter issues
* add organization id to test util
* add examples
* change project count to computed and adapt unit tests
* extend acceptance tests
* add docs
* fix linter issues
* add datasource to provider
* remove routes from the datasource schema
* remove obsolete api cals
* remove raw response from create network area
* change network ranges to list of objects
* update examples
* fix linter issues
* Update stackit/internal/services/iaas/networkarea/resource.go
Co-authored-by: João Palet <joao.palet@outlook.com>
* add network range id to schema
* map network_range_id
* fix unit tests
* adapt acceptance test
* fix acceptance tests
* Update stackit/internal/services/iaas/iaas_acc_test.go
Co-authored-by: João Palet <joao.palet@outlook.com>
---------
Co-authored-by: João Palet <joao.palet@outlook.com>
* Add network area to beta resources list (#481)
* add network area to beta resources list
* add accidentally removed line
* add accidentally removed line
* Fix multi range creation issue (#483)
* fix multi range creation issue
* fix network range update issue
* fix some unit tests
* fix order issue
* Update stackit/internal/services/iaas/networkarea/resource.go
Co-authored-by: João Palet <joao.palet@outlook.com>
* add unit test to cover the reconciled list
---------
Co-authored-by: João Palet <joao.palet@outlook.com>
* Onboard IaaS network area route (#491)
* onboard network area route
* generate docs
* add route to beta resources
* extend acceptance test
* fix import id handling
* Update next_hop description
Co-authored-by: João Palet <joao.palet@outlook.com>
* Update prefix description
Co-authored-by: João Palet <joao.palet@outlook.com>
* change descriptions in datasource
* add IP and CIDR validators
* use requiresReplace in resource
* improve error logs
* change the create response handling
* update docs
* change route and route id detection
---------
Co-authored-by: João Palet <joao.palet@outlook.com>
---------
Co-authored-by: João Palet <joao.palet@outlook.com>
* Extend resource and datasource
* Adapt acc test to work without members
* Extend acc test and adjust resource
* Generate docs
* Fix lint
* Fix unit test
* Uniformize description with datasource and extend unit test
* Improve role field description
* Update TF state before adding/removing members
* Remove unused function
* Move intermediate map top state to mapProjectFields
* Improve code
* Add projectId to resource manager project, fix value conversion error
* Support both uuid and container id, update acceptance tests
* Update docs
* Fix unit tests
* Adapt acc test names
* Update Kubernetes version
* Update nodepool OS
* Revert Kubernetes version to 1.24
* Add maintenance field to cluster-min
* Remove hardcoded kubernetes version
* Remove hardcoded setting
* Revert minor version of Kubernetes upgrade
* Fix post test check destroy
* Fix missing pointer
* Fix labels using wrong delimiters
* Fix typo in provider config
* Lint fix
---------
Co-authored-by: Henrique Santos <henrique.santos@freiheit.com>
* Implement acceptance test
* Add resource and data source to the provider
* Add examples and markdown description
* Generate docs
* Adjustments after review
* Move load balancer supporting infrastructure from resource config to example
* Finish implementation for CRUD functionality
* Register resource in the provider
* Adjustments to resource
* Implement data source
* Unregister resource and data source from provider
* Fix external_address schema field
* Remove oneOf validators from datasource
* Onboard instance resource
* Add options.type as required field
* Implement resource unit tests
* Implement data source
* Implement acc tests
* Adjust update acc test
* Fix typo
* Adjust update unit tests
* Adjustments after review
* Minor adjustment for uniformity
* Adjustments after review