Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DS-DEF-PROP] Enhance Eventhouse item data-source by adding definition support #156

Open
1 of 11 tasks
DariuszPorowski opened this issue Dec 18, 2024 · 0 comments · May be fixed by #166
Open
1 of 11 tasks

[DS-DEF-PROP] Enhance Eventhouse item data-source by adding definition support #156

DariuszPorowski opened this issue Dec 18, 2024 · 0 comments · May be fixed by #166
Labels
enhancement Enhancement to existing feature tf/data-source Terraform Data-Source type/DS-DEF-PROP Fabric Item data-source with definition and properties
Milestone

Comments

@DariuszPorowski
Copy link
Member

DariuszPorowski commented Dec 18, 2024

📝 Description

When I am managing my Infrastructure as Code using Terraform for Eventhouse. I want to be able to get details of Eventhouse definition. So, I can use it as input to another resource/data-source.

🔬 Details / References

🚧 Potential Terraform Configuration / Desired Solution

# Get item details by name
data "fabric_eventhouse" "example_by_name" {
  display_name = "example"
  workspace_id = "00000000-0000-0000-0000-000000000000"
}

# Get item details by id
data "fabric_eventhouse" "example_by_id" {
  id           = "11111111-1111-1111-1111-111111111111"
  workspace_id = "00000000-0000-0000-0000-000000000000"
}

# Get item details with definition
# Examples uses `id` but `display_name` can be used as well
data "fabric_eventhouse" "example_definition" {
  id                = "11111111-1111-1111-1111-111111111111"
  workspace_id      = "00000000-0000-0000-0000-000000000000"
  output_definition = true
}

# Access the content of the definition with JSONPath expression
output "example_definition_content_jsonpath" {
  value = provider::fabric::content_decode(data.fabric_eventhouse.example_definition.definition["EventhouseProperties.json"].content)
}

# Access the content of the definition as JSON object
output "example_definition_content_object" {
  value = provider::fabric::content_decode(data.fabric_eventhouse.example_definition.definition["EventhouseProperties.json"].content)
}

# This is an invalid data source
# Do not specify `id` and `display_name` in the same data source block
# data "fabric_eventhouse" "example" {
#   display_name = "example"
#   id           = "11111111-1111-1111-1111-111111111111"
#   workspace_id = "00000000-0000-0000-0000-000000000000"
# }

📎 Additional context

No response

✅ Definition of Done

  • Data Transfer Objects (DTOs)
  • Data Client functions
  • Data Source Implementation
  • Data Source Added to Provider
  • Unit Tests for Happy path
  • Unit Tests for Error path
  • Acceptance Tests
  • Example in the ./examples folder
  • Schema documentation in code
  • Updated auto-generated provider docs with task docs

🔰 Code of Conduct

  • I agree to follow this project's Code of Conduct.
@DariuszPorowski DariuszPorowski added enhancement Enhancement to existing feature feature New feature or request tf/data-source Terraform Data-Source type/DS-DEF-PROP Fabric Item data-source with definition and properties and removed feature New feature or request labels Dec 18, 2024
@DariuszPorowski DariuszPorowski linked a pull request Dec 20, 2024 that will close this issue
@DariuszPorowski DariuszPorowski added this to the 2025-01 milestone Dec 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhancement to existing feature tf/data-source Terraform Data-Source type/DS-DEF-PROP Fabric Item data-source with definition and properties
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant