/Bicep-Library

This repository includes a CI platform for and collection of mature and curated Bicep modules. The platform supports both ARM and Bicep and can be leveraged using GitHub actions as well as Azure DevOps pipelines.

Primary LanguageBicepMIT LicenseMIT

AzureIcon Common Azure Resource Modules Library

Description

This repository includes a library of mature and curated Bicep modules as well as a Continuous Integration (CI) environment leveraged for modules' validation and versioned publishing.

The CI environment supports both ARM and Bicep and can be leveraged using GitHub actions as well as Azure DevOps pipelines.

Status

Super Linter Issues Pull requests

Get started

Available Resource Modules

Name Status
Action Groups 'Insights: ActionGroups'
Activity Log Alerts 'Insights: ActivityLogAlerts'
Activity Logs 'Insights: DiagnosticSettings'
Analysis Services Servers 'AnalysisServices: Servers'
API Connections 'Web: Connections'
API Management Services 'ApiManagement: Service'
App Configuration 'AppConfiguration: ConfigurationStores'
App Service Environments 'Web: HostingEnvironments'
App Service Plans 'Web: Serverfarms'
Application Insights 'Insights: Components'
Application Security Groups 'Network: ApplicationSecurityGroups'
Authorization Locks 'Authorization: Locks'
Automation Accounts 'Automation: AutomationAccounts'
Availability Sets 'Compute: AvailabilitySets'
AVD Application Groups 'DesktopVirtualization: ApplicationGroups'
AVD Host Pools 'DesktopVirtualization: HostPools'
AVD Scaling Plans 'DesktopVirtualization: Scalingplans'
AVD Workspaces 'DesktopVirtualization: Workspaces'
Azure Active Directory Domain Services 'AAD: DomainServices'
Azure Compute Galleries 'Compute: Galleries'
Azure Databricks 'Databricks: Workspaces'
Azure Firewalls 'Network: AzureFirewalls'
Azure Health Bots 'HealthBot: HealthBots'
Azure Kubernetes Services 'ContainerService: ManagedClusters'
Azure Monitor Private Link Scopes 'Insights: PrivateLinkScopes'
Azure NetApp Files 'NetApp: NetAppAccounts'
Azure Security Center 'Security: AzureSecurityCenter'
Azure Synapse Analytics 'Synapse: PrivateLinkHubs'
Bastion Hosts 'Network: BastionHosts'
Batch Accounts 'Batch: BatchAccounts'
Budgets 'Consumption: Budgets'
Cache Redis 'Cache: Redis'
Cognitive Services 'CognitiveServices: Accounts'
Compute Disks 'Compute: Disks'
Container Instances 'ContainerInstance: ContainerGroups'
Container Registries 'ContainerRegistry: Registries'
Data Factories 'DataFactory: Factories'
DataProtection BackupVaults 'DataProtection: BackupVaults'
DBforPostgreSQL FlexibleServers 'DbForPostgreSQL: FlexibleServers'
DDoS Protection Plans 'Network: DdosProtectionPlans'
Deployment Scripts 'Resources: DeploymentScripts'
Disk Encryption Sets 'Compute: DiskEncryptionSets'
DocumentDB Database Accounts 'DocumentDB: DatabaseAccounts'
Event Grid System Topics 'EventGrid: System Topics'
Event Grid Topics 'EventGrid: Topics'
Event Hub Namespaces 'EventHub: Namespaces'
ExpressRoute Circuits 'Network: ExpressRouteCircuits'
Firewall Policies 'Network: FirewallPolicies'
Front Doors 'Network: Frontdoors'
Image Templates 'VirtualMachineImages: ImageTemplates'
Images 'Compute: Images'
IP Groups 'Network: IpGroups'
Key Vaults 'KeyVault: Vaults'
Kubernetes Configuration Extensions 'KubernetesConfiguration: Extensions'
Kubernetes Configuration Flux Configurations 'KubernetesConfiguration: FluxConfigurations'
Load Balancers 'Network: LoadBalancers'
Local Network Gateways 'Network: LocalNetworkGateways'
Log Analytics Workspaces 'OperationalInsights: Workspaces'
Logic Apps 'Logic: Workflows'
Machine Learning Workspaces 'MachineLearningServices: Workspaces'
Management Groups 'Management: ManagementGroups'
Metric Alerts 'Insights: MetricAlerts'
NAT Gateways 'Network: NatGateways'
Network Application Gateways 'Network: ApplicationGateways'
Network Interface 'Network: NetworkInterfaces'
Network PrivateLinkServices 'Network: PrivateLinkServices'
Network Security Groups 'Network: NetworkSecurityGroups'
Network Watchers 'Network: NetworkWatchers'
OperationsManagement Solutions 'OperationsManagement: Solutions'
Policy Assignments 'Authorization: PolicyAssignments'
Policy Definitions 'Authorization: PolicyDefinitions'
Policy Exemptions 'Authorization: PolicyExemptions'
Policy Set Definitions 'Authorization: PolicySetDefinitions'
Private DNS Zones 'Network: PrivateDnsZones'
Private Endpoints 'Network: PrivateEndpoints'
Proximity Placement Groups 'Compute: ProximityPlacementGroups'
Public IP Addresses 'Network: PublicIpAddresses'
Public IP Prefixes 'Network: PublicIpPrefixes'
Recovery Services Vaults 'RecoveryServices: Vaults'
Registration Definitions 'ManagedServices: RegistrationDefinitions'
Resource Groups 'Resources: ResourceGroups'
Resources Tags 'Resources: Tags'
Role Assignments 'Authorization: RoleAssignments'
Role Definitions 'Authorization: RoleDefinitions'
Route Tables 'Network: RouteTables'
Scheduled Query Rules 'Insights: ScheduledQueryRules'
Service Bus Namespaces 'ServiceBus: Namespaces'
Service Fabric Clusters 'Service Fabric: Clusters'
SQL Managed Instances 'Sql: ManagedInstances'
SQL Servers 'Sql: Servers'
Static Web Apps 'Web: StaticSites'
Storage Accounts 'Storage: StorageAccounts'
Synapse Workspaces 'Synapse: Workspaces'
Traffic Manager Profiles 'Network: TrafficManagerProfiles'
User Assigned Identities 'ManagedIdentity: UserAssignedIdentities'
Virtual Hubs 'Network: VirtualHubs'
Virtual Machine Scale Sets 'Compute: VirtualMachineScaleSets'
Virtual Machines 'Compute: VirtualMachines'
Virtual Network Gateway Connections 'Network: Connections'
Virtual Network Gateways 'Network: VirtualNetworkGateways'
Virtual Networks 'Network: VirtualNetworks'
Virtual WANs 'Network: VirtualWans'
VPN Gateways 'Network: VPNGateways'
VPN Sites 'Network: VPN Sites'
Web PubSub Services 'SignalR Service: Web PubSub'
Web/Function Apps 'Web: Sites'

Tooling

Name Status Docs
ConvertTo-ARMTemplate .Platform: Test - ConvertTo-ARMTemplate.ps1 link

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

For specific guidelines on how to contribute to this repository please refer to the Contribution guide Wiki section.

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

Learn More