Comment on page
Changelog
- Refactor readme files to better explain the usage of the provider
- Add
flowlog
toionoscloud_nic
resource - Add
flowlog
toionoscloud_networkloadbalancer
resource - Add
flowlog
toionoscloud_application_loadbalancer
resource
Resources
:Data Sources
:
- #487. Crash on server import without inline
nic
- #497. allow to set empty
name
forionoscloud_dns_record
- Add
nic
service - Use
error.As
forrequestFailed
err %w
instead of%s
for some printed errors- Use
serve
for debug mode
- #460 add
contract_number
to provider configuration - #412 add support to set power state of Enterprise and Cube servers, by adding the new field
vm_state
inionoscloud_server
,ionoscloud_cube_server
andionoscloud_vcpu_server
resources
- #467 removing an inline
nic
of theserver
resource from dcd should not throw 404 when running plan or apply after - #432 Now it is possible to create and delete multiple
ionoscloud_ipfailover
resources at the same time. The UUID is generated based on the IP of the failover group. The resources that are created using Terraform cannot be modified/deleted outside Terraform. - Fix
nil
deref error on list for nic datasource - #470 fix image name searching in
ionoscloud_image
andionoscloud_volume
. Exact matches are returned correctly now if they exist.
- Cloud DNS is now Generally Available
- Data Platform is now in Generally Available
- #451 update go sdk, allow
IONOS_CONTRACT_NUMBER
to be used to run terraform on different contract numbers for reseller accounts - update dependency for terraform-plugin-sdk. Stop using deprecated functions from
resource
package
primary_ip
inionoscloud_server
should be set on creationssh_keys
was no longer being set if server was not vcpu.ssh_keys
will no longer be computed on any type of serverssh_key_path
will now be set to schema on creation- setting explicit
ipv6_cidr_block
onnic
resource. - ipv6 fields
dhcpv6
,ipv6_cidr_block
,ipv6_ips
not updating correctly onionoscloud_server
andionoscloud_cube_server
- issue caused by
dhcpv6
field for plans which do not enable the IPv6 feature - #449. Increase
NotFoundChecks
to 9999.
- Example IPv6 usage for
ionoscloud_server
andionoscloud_cube_server
- Add support for mongo clusters enterprise edition
- Fix
ipv6_ips
should not request a re-apply of the plan ifipv6_cidr_block
is not set on the lan - Fix
dhcpv6
should not be set on server nic if IPv6 is not enabled on the lan - Fix
boot_cdrom
should not crash even if not set to an UUID
- Fix
inoscloud_image
docs to get cdrom image - Fix
boot_cdrom
- add description and examples
- Add support for
VCPU
servers
- Make
nic
list inionoscloud_server
resource optional - Make
firewall
list inionoscloud_server
resource optional and allow multiple inline firewall rules in the list - Add ipv6 functionality for
ionoscloud_datacenter
,ionoscloud_lan
andionoscloud_nic
resources
- Separate
cloudapi
code fromionoscloud
folder, to be able to write services easier. - Refactor validation to use
ValidateDiagFunc
instead ofValidateFunc
, remove unnecessary usage ofvalidation.All()
- Add support for PgSQL User & Databases
- Update
sdk-go-dbaas-postgres
to version 1.1.2
- Improve example for
ionoscloud_private_crossconnect
- Remove unpopulated
credentials
field from mongodb cluster data source. - Add
ram
andcores
fields to cube server data source.
- Fix
ssh_keys
field upgradeionoscloud_server
from6.3.3
to higher versions should not replace server.ssh_keys
andssh_key_path
fields no longer forceNew.ssh_keys
is no longer computed. - Fix
ssh_keys
suppress diff on upgrade forionoscloud_server
when havingvolume.0.ssh_keys
- Add validation to
label
key
andvalue
fields forionoscloud_server
resource - Fix gitbook references
- Add new products to Gitbook docs
- Fix
inline_volume_ids
field upgrade forionoscloud_server
- Fix
ionoscloud_image
examples - Improve docs for
ssh_keys
andssh_key_path
- Increase go version to 1.20
- Add
inline_volume_ids
computed field. - New Product: DNS:
Resources
:Data Sources
:
- Log levels need to be shown and filtered correctly when set with
TF_LOG
. Also changeWARNING
log levels toWARN
. - Update code to work with new mongo version
- Ignore downgrades of
k8s_version
patch level. - Allow upgrades of
k8s_version
patch level.
- Rewrite a part of the psql service to use new functionality.
- Add
dns_name
toionoscloud_pg_cluster
datasource and resource - Add option to search for images in the
ionoscloud_image
data source usingimage_alias
. Search will be performed with exact match. - New Product: DataPlatform:
⚠️ Note: Data Platform is currently in the Early Access (EA) phase. We recommend keeping usage and testing to non-production critical applications. Please contact your sales representative or support for more information.
- Update
go
to version 1.19
- Update documentation for K8s node pools
- Update documentation for
ionoscloud_image
to clarify what type of search is done. - Improve documentation for
endpoint
field
- Throw error on
404
for mongo cluster creation. - Solves #372 crash when ips field in nic resource is a list with an empty string
- Removed EA note for container registry and dbaas mongo docs
- Add update for mongo database resources
- Add update for mongo cluster and user
- Add labels for servers
- Add data source for DBaaS Mongo Templates
- Update mongo sdk to v1.2.0
- Added server ssh_keys tests
- Refactor services, add generic
WaitForResourceToBeReady
andWaitForResourceToBeDeleted
methods - Removed hard coded passwords from docs and tests and replaced with dynamically generated passwords
- Remove useless checks from services
- Fix mongo user tests to check for cluster state instead of user state which was removed
- Defining a separate firewall rule for server should not set firewall_id inside server resource, as it moves the firewall resource inside the server on re-apply
- Fixes creating share resource edit and share privileges mix up
viable_node_pool_versions
in k8s cluster is no longer optional, is only computed- Allow server import with nic and firewallId :
terraform import ionoscloud_server.myserver {datacenter uuid}/{server uuid}/{primary nic id}/{firewall rule id}
- Mongo tests update mongo version
- Change the way in which we set the NIC data
- Allow server import with nic and firewall ids
- Typo in group resource
- Readme fix link to test suite, dbaas test use correct checking function
- Make viable_node_pool_versions only computed
- K8s nodepool test
- Mix up share and edit privileges on create
- New Product: ContainerRegistry:
⚠️ Note: Container Registry is currently in the Early Access (EA) phase. We recommend keeping usage and testing to non-production critical applications. Please contact your sales representative or support for more information.
- Fixes #326, now removing a s3_buckets block from an ionoscloud_k8s_cluster resource triggers a change in the terraform plan.
- Fixes user creation bug, now user creation works properly when
group_ids
is specified in the plan.
- New Product: MongoDB:
Resources
:Data Sources
:
⚠️ Note: DBaaS - MongoDB is currently in the Early Access (EA) phase. We recommend keeping usage and testing to non-production critical applications. Please contact your sales representative or support for more information.
- New Product: Certificate Manager:
Resources
:Data Sources
:
- Reproduces rarely: sometimes the
nic
resource is not found after creation. As a fix we added a retry for 5 minutes to be able to get the NIC. The retry will keep trying if the response isnot found
(404) - Fix cube server creation. Some attributes were not populated - name, boot_cdrom, availability_zone
- Crash on update of k8s version when we have a value without
.
- add links to documentation for
cube
andenterprise
fields
- When no argument is provided for user data source, try to get the email from the client configuration
- Refactor server and volume creation code
- Make maintenance_window computed
- Adds ionoscloud_servers data source that returns a list of servers based on filters set. The filters do partial matching. See docs here
- New Product: Application Load Balancer:
- update sdk-go dependency to v6.0.3.
- enable certificate pinning, by setting IONOS_PINNED_CERT env variable
- temporarily removed
gateway_ip
andpublic
fields for k8s - introduced error when trying to set
max_node_count
equal tomin_node_count
ink8s_node_pool
- fixed crash when trying to disable
autoscaling
onk8s_node_pool
- fixed bug when upgrading from a v6.0.0-beta.X version to a stable one (number is required error)
- reintroduced error for image data source when finding multiple results with data source
- update sdk-go-dbaas-postgres dependency to v1.0.3
- do not allow empty string AvailabilityZone. Only allow "AUTO", "ZONE_1", "ZONE_2", "ZONE_3"
- type field in server resource should be case-insensitive
- remove deprecated image_name field on volume level from server resource
- solve #266 crash on resource_volume when using image_alias with no image_password, or ssh_key_path
- fixed error from upgrading from 6.2.0 to 6.2.1 (version compatibility issue)
- improved all the examples to be ready to use
- added units where missing
- added example for adding a secondary NIC to an IP Failover
- updated provider version to the latest release in main registry page
- add
allow_replace
to node pool resource, which allows the update of immutable node_pool fields will first destroy and then re-create the resource. This field should be used with care, understanding the risks. - update sdk-go dependency to v6.0.2
- update sdk-go-dbaas-postgres dependency to v1.0.2
- update terraform-plugin-sdk to v2.12.0
- token and username+password does not conflict anymore, all three can be set, the token having priority
- added
backup_location
property forionoscloud_pg_cluster
. For more details refer to the documentation
- fixed image data-source bug when
name
not provided - data-source returned 0 results - when you try to change an immutable field, you get an error, but before that the tf state is changed. Before applying a real change you need to
apply
it back with an error again. To fix, when you try to change immutable fields they will throw an error in the plan phase. - reintroduced in group resource the
user_id
argument, as deprecated, to provide a period of transition - check slice length to prevent crash
- fixed k8s_cluster data_source bug when searching by name
- fix lan deletion error, when trying to delete it immediately after the deletion of the DBaaS cluster that contained it
- modified group_resource to accept multiple users. Note: Modify your plan according to the documentation
- fixed data sources to provide an exact match (roll-back to 6.1.3 + errors in case of multiple results)
- updated k8s cluster and node pool version from examples
- Limit max concurrent connections to the same host to 3.
- Set max retries in case of rate-limit(429) to 999.
- Set backoff time to 4s.
- updated gitbook documentation with
legal
subheading
- improved lookup in data_sources by using filters
- improved tests duration by moving steps from data_source test files in the corresponding resource test files
- added workflow to run tests from GitHub actions
- split tests with build tags
- improve http client performance and timeouts
- a more accurate example on how can the cidr be set automatically on a DBaaS Cluster
- update doc of how to dump kube_config into a file in yaml format.
- fix on creating a DBaaS Cluster without specifying the maintenance window
- solve #204 - targets in nlb forwarding rule(switched to Set instead of List), lb_private_ips(set to computed), features in datacenter resources(switched to Set instead of List)
- fix of plugin crash when updating k8s_node_pool node_count
- fix of diff when creating a k8s_node_pool without maintenance_window
- added public parameter for k8s_cluster (creation of private clusters is possible now)
- added gateway_ip parameter for k8s_nodepool
- added boot_server read-only property for volume
- do not diff on gateway ips set as normal ips instead of cidr
- terraform plugin sdk upgrade to v2.10.1
- use depth explicitly on api calls to improve performance
- sdk-go updated to v6.0.1
- Fix documentation in terraform registry
- Fix documentation in terraform registry
- New Product: Database as a Service:
- Resources:
- resource_dbaas_pgsql_cluster
- Data Sources:
- data_source_dbaas_pgsql_backups
- data_source_dbaas_pgsql_cluster
- data_source_dbaas_pgsql_versions
- improved tests for networkloadbalancer and networkloadbalancer_forwardingrule
- fixed bug regarding updating listener_lan and target_lan on networkloadbalancer
- fixed diff on availableUpgradeVersions for k8s cluster and nodepool
- fixed lan deletion - wait for completion of nic deletion
- restructured documentation by adding subcategories
- fixes #168: Add versioning to allow module import.
- Modify UserAgent string
- Improved terraform registry documentation with a more detailed description of environment and terraform variables
- Added badges containing the release and go version in README.md
- Immutable k8s node_pool fields should throw error when running plan also, not only on apply
- Fixed rebuild k8 nodes with the same lan - order of lans is ignored now at diff
- Fixed conversion coming from a v5 state - added nil check in lans interface conversion
- added http request time log for api calls
- updated to go version 1.17, updated to sdk version 6.0.0
- for
k8s_node_pool
,nic
,ipfailover
, andshare
:- made tests comprehensive
- optimized test duration by including both match by id and by name in the same test
- removed duplicated code from import, data_source, resource and tests files
- improved tests on natgateway and natgateway_rule
- import for
nic
, data_source fornic
,share
,ipfailover
- k8s_node_pool update node_count and emptying lans and public_ips didn't work
- fixed bug at creating natgateway_rule - target_subnet was not set properly
- revert icmp_code and icmp_type to string to allow setting to 0
- Add additional fixes to improve code stability and prevent crashes. Revert icmp_type and icmp_code inside server resource and add tests.
- Allow creation of an inner firewall rule for server when updating a terraform plan.
- fixed issue #155: added stateUpgrader for handling change of lan field structure
- fix sporadic EOF received when making a lot of https requests to server (fixed in sdk)
- fixed #154: allow url to start with "http" (fixed in sdk)
- fixed #92: fix user update, user password change and password field is now sensitive
- fix crash when no metadata is received from server
- fixed datacenter datasource
- added constants and removed duplicated tests to
backupUnit
,datacenter
,lan
,s3_key
,firewall
,server
- for
pcc
,group
,user
,snapshot
, andvolume
:- made tests comprehensive
- optimized test duration by including both match by id and by name in the same test
- removed duplicated code from import, data_source, resource and tests files
- added import for
snapshot
,ipblock
, data_source forgroup
,user
,ipblock
,volume
- fixed issue #112 can't attach existing volume to server after recreating server
cube server
could not be deleted- cannot empty
api_subnet_allow_list
ands3_buckets
- improved data_source for template - now
template
can be searched by any of its arguments - code enhancements: for
k8s_cluster
:- made tests comprehensive
- optimized test duration by including both match by id and by name in the same test
- removed duplicated code from import, data_source and resource files (set parameters)
server
: can not create cube server, firewall not updatedfirewall
: using type argument throws error
- for
backupUnit
,datacenter
,lan
,s3_key
, andfirewall
resources done the following:- made tests comprehensive
- optimized test duration by including both match by id and by name in the same test
- removed duplicated code from import, data_source and resource files (set parameters)
- updated documentation
- improved import functions
- data_source for
s3_key
- added
image_alias
to volume - removed
public
andgateway_ip
properties fromk8s_cluster
- updated sdk-go to
v6.0.0-beta.7
- added
data_sources for
backup_unitand
firewall_rule` - added import for
natgateway
,natgateway_rule
,networkloadbalancer
andnetworkloadbalancer_forwardingrule
- issue #19 - fixed update
ssh_key_path
although not changed - issue #93 - updated
documentation
for image data source - made
backup_unit_id
configurable for volume - fixed
server import
- issue #31 - k8s node pool labels and annotations implemented
- ipblock
k8s_nodepool_uuid
attribute fixed - correctly importing private lans from k8s node pools
- fixed set of empty array in terraform state instead of null