generated from terraform-ibm-modules/terraform-ibm-module-template
-
Notifications
You must be signed in to change notification settings - Fork 3
feat: fully configurable app config da #212
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
Merged
Merged
Changes from 18 commits
Commits
Show all changes
20 commits
Select commit
Hold shift + click to select a range
9e50017
feat: #13296 Fully Configurable DA
mukulpalit-ibm 0ffb7b1
SKIP UPGRADE TEST
mukulpalit-ibm 9eca92f
Update catalog.json and SKIP UPGRADE TEST
mukulpalit-ibm a85734e
Update variables.tf and SKIP UPGRADE TEST
mukulpalit-ibm 0d1cf8e
Update readme
mukulpalit-ibm 037ac17
PR changes
mukulpalit-ibm c96421d
Update App config Icon
mukulpalit-ibm 03f1198
update offering name
mukulpalit-ibm 41996c4
testing tile
mukulpalit-ibm e2bfaee
Restore Image URL
mukulpalit-ibm b953419
PR changes
mukulpalit-ibm 4b971d6
update architecture features
mukulpalit-ibm 6d6d0db
Merge main
mukulpalit-ibm 2cd92b5
Added Configuration Aggregator feature to DA
mukulpalit-ibm 1b3595f
generate test tile
mukulpalit-ibm ead5b8a
restore URL
mukulpalit-ibm c6bdcde
update prefix validation
mukulpalit-ibm b26fcb7
update README
mukulpalit-ibm a9bab71
PR changes
mukulpalit-ibm 9dc4576
making advanced examples to standard plan
mukulpalit-ibm File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| --- | ||
| apiVersion: v1 | ||
| offerings: | ||
| - name: deploy-arch-ibm-apprapp | ||
| kind: solution | ||
| catalog_id: 7df1e4ca-d54c-4fd0-82ce-3d13247308cd | ||
| offering_id: 045c1169-d15a-4046-ae81-aa3d3348421f | ||
| variations: | ||
| - name: fully-configurable | ||
| mark_ready: true | ||
| install_type: fullstack | ||
| scc: | ||
| instance_id: 1c7d5f78-9262-44c3-b779-b28fe4d88c37 | ||
| region: us-south | ||
| scope_resource_group_var_name: existing_resource_group_name |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,248 @@ | ||
| { | ||
| "products": [ | ||
| { | ||
| "name": "deploy-arch-ibm-apprapp", | ||
| "label": "Cloud automation for App Configuration", | ||
| "product_kind": "solution", | ||
| "tags": [ | ||
| "devops", | ||
mukulpalit-ibm marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| "integration", | ||
mukulpalit-ibm marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| "ibm_created", | ||
| "terraform", | ||
| "solution", | ||
| "support_ibm" | ||
| ], | ||
| "keywords": [ | ||
| "terraform", | ||
| "appconfig", | ||
| "app configuration", | ||
| "solution", | ||
| "IaC", | ||
| "infrastructure as code" | ||
| ], | ||
| "short_description": "Creates and configures an App Configuration service on IBM Cloud", | ||
| "long_description": "This deployable architecture automates the provisioning of IBM Cloud App Configuration along with initial collection to help you manage feature flags and dynamic properties at scale. It also includes support for configuration aggregators, enabling centralized monitoring and management of configurations across multiple App Configuration instances. It simplifies onboarding by preconfiguring key resources and provides support for defining context-based restrictions (CBR) to enhance security and control access based on network policies. Ideal for teams adopting feature flagging, experimentation, or remote configuration strategies in cloud-native applications, this solution accelerates setup while following IBM Cloud best practices. Refer [this](https://cloud.ibm.com/docs/app-configuration) for more information.", | ||
| "offering_docs_url": "https://github.com/terraform-ibm-modules/terraform-ibm-app-configuration/blob/main/README.md", | ||
| "offering_icon_url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-app-configuration/main/images/app_config-icon.png", | ||
ocofaigh marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| "provider_name": "IBM", | ||
| "features": [ | ||
| { | ||
| "title": "Provision Collection", | ||
| "description": "Supports creation of collection to help manage feature flags and dynamic properties at scale." | ||
| }, | ||
| { | ||
| "title": "CBR Enhanced Security", | ||
| "description": "Provides support for defining context-based restrictions (CBR) to enhance security and control access based on network policies." | ||
| }, | ||
| { | ||
| "title": "Configuration Aggregator", | ||
| "description": "Supports creation and management of configuration aggregator to manage configurations across multiple App Configuration instances." | ||
| } | ||
| ], | ||
| "support_details": "This product is in the community registry, as such support is handled through the originated repo. If you experience issues please open an issue in that repository [https://github.com/terraform-ibm-modules/terraform-ibm-app-configuration/issues](https://github.com/terraform-ibm-modules/terraform-ibm-app-configuration/issues). Please note this product is not supported via the IBM Cloud Support Center.", | ||
| "flavors": [ | ||
| { | ||
| "label": "Fully configurable", | ||
| "name": "fully-configurable", | ||
| "install_type": "fullstack", | ||
| "working_directory": "solutions/fully-configurable", | ||
| "compliance": { | ||
| "authority": "scc-v3", | ||
| "profiles": [ | ||
| { | ||
| "profile_name": "IBM Cloud Framework for Financial Services", | ||
| "profile_version": "1.7.0" | ||
| } | ||
| ] | ||
| }, | ||
| "configuration": [ | ||
| { | ||
| "key": "ibmcloud_api_key" | ||
| }, | ||
| { | ||
| "key": "prefix", | ||
| "required": true | ||
| }, | ||
| { | ||
| "key": "existing_resource_group_name", | ||
| "required": true, | ||
| "custom_config": { | ||
| "type": "resource_group", | ||
| "grouping": "deployment", | ||
| "original_grouping": "deployment", | ||
| "config_constraints": { | ||
| "identifier": "rg_name" | ||
| } | ||
| } | ||
| }, | ||
| { | ||
| "key": "region", | ||
| "required": true, | ||
| "options": [ | ||
| { | ||
| "displayname": "Osaka (jp-osa)", | ||
| "value": "jp-osa" | ||
| }, | ||
| { | ||
mukulpalit-ibm marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| "displayname": "Sydney (au-syd)", | ||
| "value": "au-syd" | ||
| }, | ||
| { | ||
| "displayname": "Tokyo (jp-tok)", | ||
| "value": "jp-tok" | ||
| }, | ||
| { | ||
| "displayname": "Frankfurt (eu-de)", | ||
| "value": "eu-de" | ||
| }, | ||
| { | ||
| "displayname": "London (eu-gb)", | ||
| "value": "eu-gb" | ||
| }, | ||
| { | ||
| "displayname": "Madrid (eu-es)", | ||
| "value": "eu-es" | ||
| }, | ||
| { | ||
| "displayname": "Dallas (us-south)", | ||
| "value": "us-south" | ||
| }, | ||
| { | ||
| "displayname": "Toronto (ca-tor)", | ||
| "value": "ca-tor" | ||
| }, | ||
| { | ||
| "displayname": "Washington DC (us-east)", | ||
| "value": "us-east" | ||
| }, | ||
| { | ||
| "displayname": "Sao Paulo (br-sao)", | ||
| "value": "br-sao" | ||
| } | ||
| ] | ||
| }, | ||
| { | ||
| "key": "app_config_name", | ||
| "required": true | ||
mukulpalit-ibm marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| }, | ||
| { | ||
| "key": "app_config_plan", | ||
| "required": true, | ||
| "options": [ | ||
| { | ||
| "displayname": "lite", | ||
| "value": "lite" | ||
| }, | ||
| { | ||
| "displayname": "basic", | ||
| "value": "basic" | ||
| }, | ||
| { | ||
| "displayname": "standard", | ||
| "value": "standardv2" | ||
| }, | ||
| { | ||
| "displayname": "enterprise", | ||
| "value": "enterprise" | ||
| } | ||
| ] | ||
| }, | ||
| { | ||
| "key": "app_config_service_endpoints", | ||
| "required": true, | ||
mukulpalit-ibm marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| "options": [ | ||
| { | ||
| "displayname": "public", | ||
| "value": "public" | ||
| }, | ||
| { | ||
| "displayname": "public-and-private", | ||
| "value": "public-and-private" | ||
| } | ||
| ] | ||
| }, | ||
| { | ||
| "key": "app_config_collections" | ||
| }, | ||
| { | ||
| "key": "app_config_tags" | ||
mukulpalit-ibm marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| }, | ||
| { | ||
| "key": "enable_config_aggregator" | ||
| }, | ||
| { | ||
| "key": "config_aggregator_trusted_profile_name" | ||
| }, | ||
| { | ||
| "key": "config_aggregator_resource_collection_regions" | ||
| }, | ||
| { | ||
| "key": "config_aggregator_enterprise_id" | ||
| }, | ||
| { | ||
| "key": "config_aggregator_enterprise_trusted_profile_name" | ||
| }, | ||
| { | ||
| "key": "config_aggregator_enterprise_trusted_profile_template_name" | ||
| }, | ||
| { | ||
| "key": "config_aggregator_enterprise_account_group_ids_to_assign" | ||
| }, | ||
| { | ||
| "key": "app_config_cbr_rules" | ||
| }, | ||
| { | ||
| "key": "provider_visibility", | ||
| "hidden": true, | ||
| "options": [ | ||
| { | ||
| "displayname": "private", | ||
| "value": "private" | ||
| }, | ||
| { | ||
| "displayname": "public", | ||
| "value": "public" | ||
| }, | ||
| { | ||
| "displayname": "public-and-private", | ||
| "value": "public-and-private" | ||
| } | ||
| ] | ||
| } | ||
| ], | ||
| "architecture": { | ||
| "descriptions": "This architecture supports creating and configuring an IBM Cloud App Configuration", | ||
| "features": [ | ||
| { | ||
| "title": "App Configuration instance with Collections", | ||
| "description": "Creates App Configuration instance. Collections can be created and configured for the instance" | ||
| }, | ||
| { | ||
| "title": "Use existing resource group", | ||
| "description": "Supports deployment into an existing IBM Cloud resource group." | ||
| }, | ||
| { | ||
| "title": "CBR Enhanced Security", | ||
| "description": "Enforces network-based access control through context-based restrictions (CBR) rules." | ||
| }, | ||
| { | ||
| "title": "Configuration Aggregator", | ||
| "description": "Enables the creation and management of configuration aggregator to consolidate and monitor configurations across multiple App Configuration instances." | ||
| } | ||
| ], | ||
| "diagrams": [ | ||
| { | ||
| "diagram": { | ||
| "caption": "App Configuration", | ||
| "url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-app-configuration/main/reference-architecture/app_configuration.svg", | ||
| "type": "image/svg+xml" | ||
| }, | ||
| "description": "**App Configuration on IBM Cloud** <br/> <br/> <b>Description</b> <br/> This architecture automates the setup of IBM Cloud App Configuration. The modular design includes the creation of a collection to streamline the management of feature flags and properties, consolidation of multiple App Cpnfiguration instances via configuration aggregator and optionally integrates context-based restrictions (CBR) to improve access control and align with your network security policies." | ||
| } | ||
| ] | ||
| } | ||
| } | ||
| ] | ||
| } | ||
| ] | ||
| } | ||
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,55 @@ | ||
| # Configuring context-based restrictions (CBRs) | ||
|
|
||
| The `app_config_cbr_rules` input variable allows you to provide a rule for the target service to enforce access restrictions for the service based on the context of access requests. Contexts are criteria that include the network location of access requests, the endpoint type from where the request is sent, etc. | ||
|
|
||
| - Variable name: `app_config_cbr_rules`. | ||
| - Type: A list of objects. Allows only one object representing a rule for the target service | ||
| - Default value: An empty list (`[]`). | ||
|
|
||
| ### Options for app_config_cbr_rules | ||
|
|
||
| - `description` (required): The description of the rule to create. | ||
| - `account_id` (required): The IBM Cloud Account ID | ||
| - `tag` (optional): (List) The tags related to CBR rules | ||
| - `rule_contexts` (required): (List) The contexts the rule applies to | ||
| - `attributes` (optional): (List) Individual context attributes | ||
| - `name` (required): The attribute name. | ||
| - `value`(required): The attribute value. | ||
|
|
||
| - `enforcement_mode` (required): The rule enforcement mode can have the following values: | ||
| - `enabled` - The restrictions are enforced and reported. This is the default. | ||
| - `disabled` - The restrictions are disabled. Nothing is enforced or reported. | ||
| - `report` - The restrictions are evaluated and reported, but not enforced. | ||
|
|
||
|
|
||
| ### Example Rule For context-based restrictions configuration | ||
|
|
||
| ```hcl | ||
| [ | ||
| { | ||
| description = "Restrict access to App Config from trusted network" | ||
| account_id = "<AccountID>" | ||
| enforcement_mode = "enabled" | ||
| tags = [ | ||
| { | ||
| name = "env" | ||
| value = "dev" | ||
| } | ||
| ] | ||
| rule_contexts = [ | ||
| { | ||
| attributes = [ | ||
| { | ||
| name = "networkZoneId" | ||
| value = "<NetworkZoneID>" | ||
| }, | ||
| { | ||
| "name" : "endpointType", | ||
| "value" : "private" | ||
| } | ||
| ] | ||
| } | ||
| ] | ||
| } | ||
| ] | ||
| ``` |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.