A Data Factory that Moves Data Privately and Keeps Pipelines in Git
The managed virtual network cannot be turned on after creation, and without it the integration runtime that copies your data reaches every source over public endpoints; the studio endpoint is public by default; and a factory with no git repository keeps its pipelines only in the service, with no review. Managed VNet on, studio private, git required, Key Vault linked for secrets.
Verification
Static-verifiedPassed: validated and lint-clean (provider-schema-validated for AWS/Azure/GCP; Terraform-language lint elsewhere).
Conformance
- Static validation (fmt · validate · tflint)
- Security scan clean (Checkov)
- Plan tests (mocked: validation rules · outputs)
Provenance
- SHA-256 checksum
- Signature (pending)
Functional
- Live test pending (no cloud run yet)
Last verified 2026-09-14 · how we verify
Use it from the registry
terraform · opentofumodule "data_factory" {
source = "www.iac-bazaar.com/iac-bazaar/azure-data-factory/azure"
version = "1.0.0"
}Needs a registry token from /account/tokens. The module itself is free; the account is what identifies you. Full setup: registry docs.
Inputs & outputs
Create a free account to read this module's contract
The declared contract - every input name, type, default and description, plus every output - is shown to signed-in accounts, not to anonymous visitors.
A free account sees the contract of every module in the catalogue. There is no subscription and nothing to buy - the modules are free to download, and they run under Vizier.
Documentation
azure-data-factory
A Data Factory that moves data privately, keeps its pipelines in git, and
reads its secrets from a vault. Works with Terraform and OpenTofu
(>= 1.6), azurerm provider >= 4.0, < 5.0.
managed_virtual_network_enabled cannot be turned on later. Without it
the Azure integration runtime - the compute that copies your data - reaches
every source over public endpoints. On here, and the managed-VNet runtime is
created with the factory; off needs accept_public_integration_runtime.
public_network_enabled defaults to true, so the studio and REST
endpoint are reachable from the internet. Off here; on needs
accept_public_studio.
A factory with no git repository keeps its pipelines only in the
service, with no review and no history beyond the portal's. GitHub or
Azure DevOps is required; none needs accept_no_git. (The scanner's check
for this cannot see a rendered block and is skipped with that reason.)
Linked services should get their secrets from Key Vault. A Key Vault
linked service is created when key_vault_id is given.
Verification
Static validation runs tofu fmt, init, validate, tflint and checkov.
This module has not yet had a live test, so it is published as statically
validated with its live test pending and does not carry the live-tested mark.
Usage code & full reference need an account
The complete copy-paste usage, the full input/output reference, and operational notes are free with an account - shown here and bundled in the download. Sign in and this section fills in.
- Usage
Related modules
azure-chaos-studio
Chaos Studio has no stop condition: an experiment runs for its actions' duration or until somebody presses Stop, so the duration is the only guardrail and every action here is capped. The experiment acts as its own identity and fails safely without a role on each target; every fault it can inject is a capability somebody enabled on an onboarded target, so the scope cannot quietly widen.
azure-app-configuration
local_auth_enabled defaults true and the keys carry no identity: a read key reads every value, cannot be scoped, and is revoked only by regenerating it for everybody. Purge protection defaults off, and purging frees the name - which frees the endpoint your applications trust.
azure-devops
Bootstraps an Azure DevOps project with an initialized Git repository and a YAML build pipeline - repeatable team setup as code.
azure-jenkins
Self-hosted Jenkins on a hardened Azure Linux VM - self-contained vnet/subnet/NSG, SSH-key auth only, managed-disk encryption, Jenkins installed via cloud-init.