summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/toaster/toastergui/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/toaster/toastergui/views.py')
-rwxr-xr-xbitbake/lib/toaster/toastergui/views.py26
1 files changed, 22 insertions, 4 deletions
diff --git a/bitbake/lib/toaster/toastergui/views.py b/bitbake/lib/toaster/toastergui/views.py
index ed27ca0ac9..df893483c6 100755
--- a/bitbake/lib/toaster/toastergui/views.py
+++ b/bitbake/lib/toaster/toastergui/views.py
@@ -2418,11 +2418,17 @@ if toastermain.settings.MANAGED:
2418 t=request.POST['configvarDel'].strip() 2418 t=request.POST['configvarDel'].strip()
2419 pt = ProjectVariable.objects.get(pk = int(t)).delete() 2419 pt = ProjectVariable.objects.get(pk = int(t)).delete()
2420 2420
2421 # return all project settings 2421 # return all project settings, filter out blacklist and elsewhere-managed variables
2422 vars_managed,vars_fstypes,vars_blacklist = get_project_configvars_context() 2422 vars_managed,vars_fstypes,vars_blacklist = get_project_configvars_context()
2423 configvars_query = ProjectVariable.objects.filter(project_id = pid).all()
2424 for var in vars_managed:
2425 configvars_query = configvars_query.exclude(name = var)
2426 for var in vars_blacklist:
2427 configvars_query = configvars_query.exclude(name = var)
2428
2423 return_data = { 2429 return_data = {
2424 "error": "ok", 2430 "error": "ok",
2425 'configvars' : map(lambda x: (x.name, x.value, x.pk), ProjectVariable.objects.filter(project_id = pid).all()), 2431 'configvars' : map(lambda x: (x.name, x.value, x.pk), configvars_query),
2426 } 2432 }
2427 try: 2433 try:
2428 return_data['distro'] = ProjectVariable.objects.get(project = prj, name = "DISTRO").value, 2434 return_data['distro'] = ProjectVariable.objects.get(project = prj, name = "DISTRO").value,
@@ -2899,7 +2905,7 @@ if toastermain.settings.MANAGED:
2899 def get_project_configvars_context(): 2905 def get_project_configvars_context():
2900 # Vars managed outside of this view 2906 # Vars managed outside of this view
2901 vars_managed = { 2907 vars_managed = {
2902 'MACHINE' 2908 'MACHINE', 'BBLAYERS'
2903 } 2909 }
2904 2910
2905 vars_blacklist = { 2911 vars_blacklist = {
@@ -2926,9 +2932,16 @@ if toastermain.settings.MANAGED:
2926 except Project.DoesNotExist: 2932 except Project.DoesNotExist:
2927 return HttpResponseNotFound("<h1>Project id " + pid + " is unavailable</h1>") 2933 return HttpResponseNotFound("<h1>Project id " + pid + " is unavailable</h1>")
2928 2934
2935 # remove blacklist and externally managed varaibles from this list
2929 vars_managed,vars_fstypes,vars_blacklist = get_project_configvars_context() 2936 vars_managed,vars_fstypes,vars_blacklist = get_project_configvars_context()
2937 configvars = ProjectVariable.objects.filter(project_id = pid).all()
2938 for var in vars_managed:
2939 configvars = configvars.exclude(name = var)
2940 for var in vars_blacklist:
2941 configvars = configvars.exclude(name = var)
2942
2930 context = { 2943 context = {
2931 'configvars': ProjectVariable.objects.filter(project_id = pid).all(), 2944 'configvars': configvars,
2932 'vars_managed': vars_managed, 2945 'vars_managed': vars_managed,
2933 'vars_fstypes': vars_fstypes, 2946 'vars_fstypes': vars_fstypes,
2934 'vars_blacklist': vars_blacklist, 2947 'vars_blacklist': vars_blacklist,
@@ -2936,22 +2949,27 @@ if toastermain.settings.MANAGED:
2936 2949
2937 try: 2950 try:
2938 context['distro'] = ProjectVariable.objects.get(project = prj, name = "DISTRO").value 2951 context['distro'] = ProjectVariable.objects.get(project = prj, name = "DISTRO").value
2952 context['distro_defined'] = "1"
2939 except ProjectVariable.DoesNotExist: 2953 except ProjectVariable.DoesNotExist:
2940 pass 2954 pass
2941 try: 2955 try:
2942 context['fstypes'] = ProjectVariable.objects.get(project = prj, name = "IMAGE_FSTYPES").value 2956 context['fstypes'] = ProjectVariable.objects.get(project = prj, name = "IMAGE_FSTYPES").value
2957 context['fstypes_defined'] = "1"
2943 except ProjectVariable.DoesNotExist: 2958 except ProjectVariable.DoesNotExist:
2944 pass 2959 pass
2945 try: 2960 try:
2946 context['image_install_append'] = ProjectVariable.objects.get(project = prj, name = "IMAGE_INSTALL_append").value 2961 context['image_install_append'] = ProjectVariable.objects.get(project = prj, name = "IMAGE_INSTALL_append").value
2962 context['image_install_append_defined'] = "1"
2947 except ProjectVariable.DoesNotExist: 2963 except ProjectVariable.DoesNotExist:
2948 pass 2964 pass
2949 try: 2965 try:
2950 context['package_classes'] = ProjectVariable.objects.get(project = prj, name = "PACKAGE_CLASSES").value 2966 context['package_classes'] = ProjectVariable.objects.get(project = prj, name = "PACKAGE_CLASSES").value
2967 context['package_classes_defined'] = "1"
2951 except ProjectVariable.DoesNotExist: 2968 except ProjectVariable.DoesNotExist:
2952 pass 2969 pass
2953 try: 2970 try:
2954 context['sdk_machine'] = ProjectVariable.objects.get(project = prj, name = "SDKMACHINE").value 2971 context['sdk_machine'] = ProjectVariable.objects.get(project = prj, name = "SDKMACHINE").value
2972 context['sdk_machine_defined'] = "1"
2955 except ProjectVariable.DoesNotExist: 2973 except ProjectVariable.DoesNotExist:
2956 pass 2974 pass
2957 2975