mirror of
https://git.yoctoproject.org/poky
synced 2026-05-31 00:39:46 +00:00
bitbake: toaster: Replace references to LayerSource models
Replace references to the now deprecated layersource models across Toaster with the new enums for layer source types. (Bitbake rev: 48c09c62eb979d840132e58144f0d81ffee675b1) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
ffc78d329d
commit
ef627d0ab8
@@ -139,22 +139,3 @@ class RunBuildsCommandTests(TestCase):
|
|||||||
self.assertTrue(br.state == BuildRequest.REQ_INPROGRESS, "Request is not updated")
|
self.assertTrue(br.state == BuildRequest.REQ_INPROGRESS, "Request is not updated")
|
||||||
# no more selections possible here
|
# no more selections possible here
|
||||||
self.assertRaises(IndexError, command._selectBuildRequest)
|
self.assertRaises(IndexError, command._selectBuildRequest)
|
||||||
|
|
||||||
|
|
||||||
class UtilityTests(TestCase):
|
|
||||||
def test_reduce_path(self):
|
|
||||||
from bldcontrol.management.commands.loadconf import _reduce_canon_path, _get_id_for_sourcetype
|
|
||||||
|
|
||||||
self.assertTrue( _reduce_canon_path("/") == "/")
|
|
||||||
self.assertTrue( _reduce_canon_path("/home/..") == "/")
|
|
||||||
self.assertTrue( _reduce_canon_path("/home/../ana") == "/ana")
|
|
||||||
self.assertTrue( _reduce_canon_path("/home/../ana/..") == "/")
|
|
||||||
self.assertTrue( _reduce_canon_path("/home/ana/mihai/../maria") == "/home/ana/maria")
|
|
||||||
|
|
||||||
def test_get_id_for_sorucetype(self):
|
|
||||||
from bldcontrol.management.commands.loadconf import _reduce_canon_path, _get_id_for_sourcetype
|
|
||||||
self.assertTrue( _get_id_for_sourcetype("layerindex") == 1)
|
|
||||||
self.assertTrue( _get_id_for_sourcetype("local") == 0)
|
|
||||||
self.assertTrue( _get_id_for_sourcetype("imported") == 2)
|
|
||||||
with self.assertRaises(Exception):
|
|
||||||
_get_id_for_sourcetype("unknown")
|
|
||||||
|
|||||||
@@ -1287,6 +1287,14 @@ class LayerSource(object):
|
|||||||
(TYPE_BUILD, "build"),
|
(TYPE_BUILD, "build"),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def types_dict():
|
||||||
|
""" Turn the TYPES enums into a simple dictionary """
|
||||||
|
dictionary = {}
|
||||||
|
for key in LayerSource.__dict__:
|
||||||
|
if "TYPE" in key:
|
||||||
|
dictionary[key] = getattr(LayerSource, key)
|
||||||
|
return dictionary
|
||||||
|
|
||||||
|
|
||||||
class Layer(models.Model):
|
class Layer(models.Model):
|
||||||
|
|
||||||
|
|||||||
@@ -49,9 +49,6 @@ class TestLayerDetailsPage(SeleniumTestCase):
|
|||||||
# project to add new custom images to
|
# project to add new custom images to
|
||||||
self.project = Project.objects.create(name='foo', release=release)
|
self.project = Project.objects.create(name='foo', release=release)
|
||||||
|
|
||||||
layer_source = LayerSource.objects.create(
|
|
||||||
sourcetype=LayerSource.TYPE_IMPORTED)
|
|
||||||
|
|
||||||
name = "meta-imported"
|
name = "meta-imported"
|
||||||
vcs_url = "git://example.com/meta-imported"
|
vcs_url = "git://example.com/meta-imported"
|
||||||
subdir = "/layer"
|
subdir = "/layer"
|
||||||
|
|||||||
@@ -147,7 +147,7 @@ class XhrLayer(View):
|
|||||||
layer_version = Layer_Version.objects.get(
|
layer_version = Layer_Version.objects.get(
|
||||||
id=kwargs['layerversion_id'],
|
id=kwargs['layerversion_id'],
|
||||||
project=kwargs['pid'],
|
project=kwargs['pid'],
|
||||||
layer_source__sourcetype=LayerSource.TYPE_IMPORTED)
|
layer_source=LayerSource.TYPE_IMPORTED)
|
||||||
|
|
||||||
except Layer_Version.DoesNotExist:
|
except Layer_Version.DoesNotExist:
|
||||||
return error_response("Cannot find imported layer to update")
|
return error_response("Cannot find imported layer to update")
|
||||||
@@ -159,8 +159,6 @@ class XhrLayer(View):
|
|||||||
if "commit" in request.POST:
|
if "commit" in request.POST:
|
||||||
layer_version.commit = request.POST["commit"]
|
layer_version.commit = request.POST["commit"]
|
||||||
layer_version.branch = request.POST["commit"]
|
layer_version.branch = request.POST["commit"]
|
||||||
if "up_branch" in request.POST:
|
|
||||||
layer_version.up_branch_id = int(request.POST["up_branch"])
|
|
||||||
if "summary" in request.POST:
|
if "summary" in request.POST:
|
||||||
layer_version.layer.summary = request.POST["summary"]
|
layer_version.layer.summary = request.POST["summary"]
|
||||||
if "description" in request.POST:
|
if "description" in request.POST:
|
||||||
@@ -193,7 +191,7 @@ class XhrLayer(View):
|
|||||||
layer_version = Layer_Version.objects.get(
|
layer_version = Layer_Version.objects.get(
|
||||||
id=kwargs['layerversion_id'],
|
id=kwargs['layerversion_id'],
|
||||||
project=kwargs['pid'],
|
project=kwargs['pid'],
|
||||||
layer_source__sourcetype=LayerSource.TYPE_IMPORTED)
|
layer_source=LayerSource.TYPE_IMPORTED)
|
||||||
except Layer_Version.DoesNotExist:
|
except Layer_Version.DoesNotExist:
|
||||||
return error_response("Cannot find imported layer to delete")
|
return error_response("Cannot find imported layer to delete")
|
||||||
|
|
||||||
|
|||||||
@@ -366,7 +366,7 @@ function layerDetailsPageInit (ctx) {
|
|||||||
if ($(this).is("dt")) {
|
if ($(this).is("dt")) {
|
||||||
var dd = $(this).next("dd");
|
var dd = $(this).next("dd");
|
||||||
if (!dd.children("form:visible")|| !dd.find(".current-value").html()){
|
if (!dd.children("form:visible")|| !dd.find(".current-value").html()){
|
||||||
if (ctx.layerVersion.sourceId == 3){
|
if (ctx.layerVersion.layer_source == ctx.layerSourceTypes.TYPE_IMPORTED){
|
||||||
/* There's no current value and the layer is editable
|
/* There's no current value and the layer is editable
|
||||||
* so show the "Not set" and hide the delete icon
|
* so show the "Not set" and hide the delete icon
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -36,7 +36,7 @@
|
|||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
{# If this is not an imported layer then hide the edit ui #}
|
{# If this is not an imported layer then hide the edit ui #}
|
||||||
{% if not layerversion.layer_source_id or layerversion.layer_source.sourcetype != layerversion.layer_source.TYPE_IMPORTED %}
|
{% if layerversion.layer_source != layer_source.TYPE_IMPORTED %}
|
||||||
<style scoped>
|
<style scoped>
|
||||||
.glyphicon-edit {
|
.glyphicon-edit {
|
||||||
display:none;
|
display:none;
|
||||||
@@ -69,8 +69,9 @@
|
|||||||
inCurrentPrj : false,
|
inCurrentPrj : false,
|
||||||
{% endif %}
|
{% endif %}
|
||||||
layerdetailurl : "{% url 'layerdetails' project.id layerversion.id %}",
|
layerdetailurl : "{% url 'layerdetails' project.id layerversion.id %}",
|
||||||
sourceId: {{layerversion.layer_source_id|json}},
|
layer_source: {{layerversion.layer_source|json}},
|
||||||
}
|
},
|
||||||
|
layerSourceTypes: {{layer_source|json}},
|
||||||
};
|
};
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@@ -89,7 +90,6 @@
|
|||||||
{% endif %}>({{layerversion.get_vcs_reference|truncatechars:13}})</small>
|
{% endif %}>({{layerversion.get_vcs_reference|truncatechars:13}})</small>
|
||||||
</h1>
|
</h1>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<!-- container for tabs -->
|
<!-- container for tabs -->
|
||||||
<div class="col-md-8 tabbable">
|
<div class="col-md-8 tabbable">
|
||||||
@@ -277,15 +277,15 @@
|
|||||||
<span class="glyphicon glyphicon-edit"></span>
|
<span class="glyphicon glyphicon-edit"></span>
|
||||||
<span class="glyphicon glyphicon-trash delete-current-value" data-toggle="tooltip" title="Delete"></span>
|
<span class="glyphicon glyphicon-trash delete-current-value" data-toggle="tooltip" title="Delete"></span>
|
||||||
</dd>
|
</dd>
|
||||||
{% if layerversion.layer.up_id %}
|
{% if layerversion.layer_source == layer_source.TYPE_LAYERINDEX %}
|
||||||
<dt>Layer index</dt>
|
<dt>Layer index</dt>
|
||||||
<dd>
|
<dd>
|
||||||
<a href="http://layers.openembedded.org/layerindex/branch/{{layerversion.up_branch.name}}/layer/{{layerversion.layer.name}}">layer index link</a>
|
<a href="http://layers.openembedded.org/layerindex/branch/{{layerversion.release.name}}/layer/{{layerversion.layer.name}}">Layer index {{layerversion.layer.name}}</a>
|
||||||
|
|
||||||
</dd>
|
</dd>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</dl>
|
</dl>
|
||||||
{% if layerversion.layer_source_id and layerversion.layer_source.sourcetype == layerversion.layer_source.TYPE_IMPORTED %}
|
{# Only show delete link for imported layers #}
|
||||||
|
{% if layerversion.layer_source == layer_source.TYPE_IMPORTED %}
|
||||||
<i class="icon-trash text-danger"></i>
|
<i class="icon-trash text-danger"></i>
|
||||||
<a href="#delete-layer-modal" role="button" class="text-danger" data-toggle="modal" data-target="#delete-layer-modal">Delete {{layerversion.layer.name}}</a>
|
<a href="#delete-layer-modal" role="button" class="text-danger" data-toggle="modal" data-target="#delete-layer-modal">Delete {{layerversion.layer.name}}</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|||||||
@@ -1452,9 +1452,8 @@ if True:
|
|||||||
layers = [{"id": x.layercommit.pk, "orderid": x.pk, "name" : x.layercommit.layer.name,
|
layers = [{"id": x.layercommit.pk, "orderid": x.pk, "name" : x.layercommit.layer.name,
|
||||||
"vcs_url": x.layercommit.layer.vcs_url, "vcs_reference" : x.layercommit.get_vcs_reference(),
|
"vcs_url": x.layercommit.layer.vcs_url, "vcs_reference" : x.layercommit.get_vcs_reference(),
|
||||||
"url": x.layercommit.layer.layer_index_url, "layerdetailurl": x.layercommit.get_detailspage_url(prj.pk),
|
"url": x.layercommit.layer.layer_index_url, "layerdetailurl": x.layercommit.get_detailspage_url(prj.pk),
|
||||||
# This branch name is actually the release
|
|
||||||
"branch" : {"name" : x.layercommit.get_vcs_reference(),
|
"branch" : {"name" : x.layercommit.get_vcs_reference(),
|
||||||
"layersource" : x.layercommit.up_branch.layer_source.name if x.layercommit.up_branch != None else None}
|
"layersource" : x.layercommit.layer_source }
|
||||||
} for x in prj.projectlayer_set.all().order_by("id")]
|
} for x in prj.projectlayer_set.all().order_by("id")]
|
||||||
|
|
||||||
context = {
|
context = {
|
||||||
@@ -1670,10 +1669,7 @@ if True:
|
|||||||
|
|
||||||
# We need to know what release the current project is so that we
|
# We need to know what release the current project is so that we
|
||||||
# can set the imported layer's up_branch_id
|
# can set the imported layer's up_branch_id
|
||||||
prj_branch_name = Release.objects.get(pk=prj.release_id).branch_name
|
|
||||||
up_branch, branch_created = Branch.objects.get_or_create(name=prj_branch_name, layer_source_id=LayerSource.TYPE_IMPORTED)
|
|
||||||
|
|
||||||
layer_source = LayerSource.objects.get(sourcetype=LayerSource.TYPE_IMPORTED)
|
|
||||||
try:
|
try:
|
||||||
layer, layer_created = Layer.objects.get_or_create(name=post_data['name'])
|
layer, layer_created = Layer.objects.get_or_create(name=post_data['name'])
|
||||||
except MultipleObjectsReturned:
|
except MultipleObjectsReturned:
|
||||||
@@ -1681,7 +1677,6 @@ if True:
|
|||||||
|
|
||||||
if layer:
|
if layer:
|
||||||
if layer_created:
|
if layer_created:
|
||||||
layer.layer_source = layer_source
|
|
||||||
layer.vcs_url = post_data['vcs_url']
|
layer.vcs_url = post_data['vcs_url']
|
||||||
layer.up_date = timezone.now()
|
layer.up_date = timezone.now()
|
||||||
layer.save()
|
layer.save()
|
||||||
@@ -1692,12 +1687,24 @@ if True:
|
|||||||
if layer.vcs_url != post_data['vcs_url']:
|
if layer.vcs_url != post_data['vcs_url']:
|
||||||
return HttpResponse(jsonfilter({"error": "hint-layer-exists-with-different-url" , "current_url" : layer.vcs_url, "current_id": layer.id }), content_type = "application/json")
|
return HttpResponse(jsonfilter({"error": "hint-layer-exists-with-different-url" , "current_url" : layer.vcs_url, "current_id": layer.id }), content_type = "application/json")
|
||||||
|
|
||||||
|
layer_version, version_created = \
|
||||||
layer_version, version_created = Layer_Version.objects.get_or_create(layer_source=layer_source, layer=layer, project=prj, up_branch_id=up_branch.id,branch=post_data['git_ref'], commit=post_data['git_ref'], dirpath=post_data['dir_path'])
|
Layer_Version.objects.get_or_create(
|
||||||
|
layer_source=LayerSource.TYPE_IMPORTED,
|
||||||
|
layer=layer, project=prj,
|
||||||
|
release=prj.release,
|
||||||
|
branch=post_data['git_ref'],
|
||||||
|
commit=post_data['git_ref'],
|
||||||
|
dirpath=post_data['dir_path'])
|
||||||
|
|
||||||
if layer_version:
|
if layer_version:
|
||||||
if not version_created:
|
if not version_created:
|
||||||
return HttpResponse(jsonfilter({"error": "hint-layer-version-exists", "existing_layer_version": layer_version.id }), content_type = "application/json")
|
return HttpResponse(jsonfilter({"error":
|
||||||
|
"hint-layer-version-exists",
|
||||||
|
"existing_layer_version":
|
||||||
|
layer_version.id }),
|
||||||
|
content_type = "application/json")
|
||||||
|
|
||||||
|
layer_version.layer_source = LayerSource.TYPE_IMPORTED
|
||||||
|
|
||||||
layer_version.up_date = timezone.now()
|
layer_version.up_date = timezone.now()
|
||||||
layer_version.save()
|
layer_version.save()
|
||||||
@@ -2179,20 +2186,33 @@ if True:
|
|||||||
}
|
}
|
||||||
return render(request, template, context)
|
return render(request, template, context)
|
||||||
|
|
||||||
|
# TODO merge with api pseudo api here is used for deps modal
|
||||||
@_template_renderer('layerdetails.html')
|
@_template_renderer('layerdetails.html')
|
||||||
def layerdetails(request, pid, layerid):
|
def layerdetails(request, pid, layerid):
|
||||||
project = Project.objects.get(pk=pid)
|
project = Project.objects.get(pk=pid)
|
||||||
layer_version = Layer_Version.objects.get(pk=layerid)
|
layer_version = Layer_Version.objects.get(pk=layerid)
|
||||||
|
|
||||||
context = {'project' : project,
|
project_layers = ProjectLayer.objects.filter(
|
||||||
'layerversion' : layer_version,
|
project=project).values_list("layercommit_id",
|
||||||
'layerdeps' : {"list": [{"id": dep.id,
|
flat=True)
|
||||||
"name": dep.layer.name,
|
|
||||||
"layerdetailurl": reverse('layerdetails', args=(pid, dep.pk)),
|
context = {
|
||||||
"vcs_url": dep.layer.vcs_url,
|
'project': project,
|
||||||
"vcs_reference": dep.get_vcs_reference()} \
|
'layer_source': LayerSource.types_dict(),
|
||||||
for dep in layer_version.get_alldeps(project.id)]},
|
'layerversion': layer_version,
|
||||||
'projectlayers': [player.layercommit.id for player in ProjectLayer.objects.filter(project=project)]
|
'layerdeps': {
|
||||||
|
"list": [
|
||||||
|
{
|
||||||
|
"id": dep.id,
|
||||||
|
"name": dep.layer.name,
|
||||||
|
"layerdetailurl": reverse('layerdetails',
|
||||||
|
args=(pid, dep.pk)),
|
||||||
|
"vcs_url": dep.layer.vcs_url,
|
||||||
|
"vcs_reference": dep.get_vcs_reference()
|
||||||
|
}
|
||||||
|
for dep in layer_version.get_alldeps(project.id)]
|
||||||
|
},
|
||||||
|
'projectlayers': list(project_layers)
|
||||||
}
|
}
|
||||||
|
|
||||||
return context
|
return context
|
||||||
|
|||||||
Reference in New Issue
Block a user