I have a lot of deployment configurations that are adopting root template.
And now I want to change one Parameter (environment variable) in the root template, but to pin the old value in all children deployment configuration.
The goal is to force all new deployment configuration that would be created to have a new value inside their deployment. And then step-by-step move with old deployment configuration and change this value only where it is required.
Option 1:
Create a new template with new value and use it for all new configuration. Let old configuration continues with old root template. Then incrementally you can migrate your old configuration to new template.
Option 2:
If you don't have more configuration from root template, You can change the value in the root template. The movement you change the new value That will be reflected in all children configuration. Then go to each children configuration and manually change the value(old value). I know it is a very tedious job if you have more configuration.
Instead of copying the template, you can change the parameter of your template, to set a variable value.
Your parameter will have inside the template the value of %EnvVarSomething%
Define the value at <Root> level with you old value for the parameter EnvVarSomething.
Then, you can easily migrate your configuration by overriding the parameter EnvVarSomething in each Build Configuration or Project.
Go into the root edit project settings and find the configuration template in question. at the very right of the row containing your template there should be a drop down. Inside the dropdown should be an option called copy template. Make a copy of the template with a different name and make changes to that instead. Then you will have a new template to use that doesn't have children to worry about.
Related
I have two custom build configs development and release with some values defined. Here is what my Development.xcconfig looks like:
//
// Development .xcconfig
//
// Include Pods config.
#include "Pods/Target Support Files/Pods-MyApp/Pods-MyApp.debug.xcconfig"
// Server URL
HOST_NAME = 127.0.0.1:6060
// Use TLS (https, wss)
USE_TLS = NO
// App Settings
APP_NAME = MyApp (test)
APP_BUNDLE_ID = co.my-domain.myapp-test
I reference these values in Info.plist as $(HOST_NAME) and it works fine. But I also want to expose these custom parameters in application preferences as DefaultValue. I.e. I want the app to use localhost:6060 as default host name preference when the target is development and the address of production host when the target is release.
The preferences are defined in Settings.bundle/Root.plist. Unfortunately xcode does not expand references like $(HOST_NAME) in Settings.bundle/Root.plist. I suppose I have to write a build script to update the values. I know how to use PlistBuddy to update entries in Root.plist. What I can't figure out is how to read values from Info.plist and at what point in the build process I should update Root.plist.
I can't read Info.plist early in the build because the values are not yet expanded. The host name still reads as literal string "$(HOST_NAME)".
I suppose I can read the Info.plist as the last step in the build process and then update "$TARGET_BUILD_DIR/$EXECUTABLE_FOLDER_PATH/Settings.bundle/Root.plist", but which Info.plist to read, the one at
"$TARGET_BUILD_DIR/$INFOPLIST_PATH" or the one at
"$DWARF_DSYM_FOLDER_PATH/$DWARF_DSYM_FILE_NAME/Contents/Info.plist"??? Does it matter? Are they always the same? Are they both always present?
Thanks!
In Visual Studio SSDT, I have set up multiple Project Configurations, DEV, QA, PROD. Also, I have parameters set up for each configuration, so I can easily deploy to each environment with different parameters. However, when i edit a parameter's value and save, the new value is saved to the parameter for each configuration.
Here are the steps I followed:
First I edit the value in aNewTestParameter
Then, I save the Project.params file and switch to the QA Configuration. Notice it also has the DEV Value.
How do I prevent this save from overwriting the values in my other configurations?
You will need to add the parameter to configurations (third button above the Name field in the screen-shots). Next, set these values accordingly in the "Manage Parameter Values" window that will follow. Upon doing this, the parameter values will correspond to whichever configuration is chosen in the configuration drop-down.
I'm trying to build a plugin that makes changes to nodes across the entire XD document. When I do so, though, I get the following error:
Plugin made a change outside the current edit context
Is making changes globally to the entire document something that's not currently supported? Is there any way to determine what is currently in this "edit context"?
XD extensibility currently has the edit context rules, which prohibit the plugin from making changes outside the user selected object's scope for editing. This scope includes the selected object and its immediate children.
Since changes to the entire XD document like a global search and replace would require editing objects outside this scope, this use case is not currently possible.
You can check the selection's edit context by checking the editContext property of the selection object (reference: https://adobexdplatform.com/plugin-docs/reference/selection.html#selection-editContext).
How to configure sonar.projectKey under sonar-project.properties so that we can get apply custom permission template for new project report automatically.
Does anyone try that?
I was trying all type of combination with project key in sonarqube permission template and sonar-runner properties file. But couldn't achieve the result.
Does sonar permission template really support this from sonar-runner.
Below are screenshot attached to the link for my use case:
I have created mfg-desktop permission template and there is also present a default template provided by sonar
When I checked under project permission, I found that default permission template is getting applied in each time
There's nothing to do on the sonar-project.properties side.
As described in the docs, set up your permission template with a project key pattern regular expression. All new projects with keys that match the regex will have that permission template applied.
For example, if in the "Manufacturing Group" template I set my Project Key Pattern to:
mfg-*
and analyze a new project with a key of mfg-extrusion, then the "Manufacturing Group" template will be applied. And when I analyze front-office-billing for the first time, it will not.
Create a new permission Template and assign the regex to the Project Key Pattern.
For example:
Regex :
(prod)-\w+
It will apply the template to the new projects created with Project Key starting with 'prod-'. Sonar needs the key of the new projects to 'fully' match the regex of the permission template key. Using * might not work.
Then link the desired permissions of the users/group on the template. Also make sure the Global Permissions for the users/group are also set appropriately else permissions wont work.
Additional Info: All projects will still be visible to all users. Make your project 'Private' to make it visible only to the required group.
This works on CE v7.6
What is the best way to add a new config setting in the configuration->Catalog->Search Engine Optimisations or any other such location in the core configuration.
I am developing an extension which will need to use this setting that I will define here.
Thanks
karam
If you are developing an extension, you can configure your field for administration using system.xml. The xpath will be catalog/groups/seo/fields/your_field (ref. Mage/Catalog/etc/system.xml).
To set a default for this value, you can either add the value to your module's config.xml using the xpath default/catalog/seo/your_field, or you can create an install script which will write the value to core_config_data.