* [layerindex-web][PATCH 1/3] update: allow preserving temp directory
@ 2017-10-04 0:51 Paul Eggleton
2017-10-04 0:51 ` [layerindex-web][PATCH 2/3] models: allow LayerBranch.collection to be blank Paul Eggleton
2017-10-04 0:51 ` [layerindex-web][PATCH 3/3] Show note if layer branch hasn't been indexed Paul Eggleton
0 siblings, 2 replies; 3+ messages in thread
From: Paul Eggleton @ 2017-10-04 0:51 UTC (permalink / raw)
To: yocto
If you're diagnosing problems with the bitbake server when running the
update script, then you need to be able to look at
bitbake-cookerdaemon.log, but you couldn't do that after the fact
because the temporary directory it gets written out to was being
unconditionally deleted. Add a --keep-temp option which preserves it and
some debug messages to tell you where it is.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
layerindex/update.py | 5 +++++
layerindex/update_layer.py | 10 +++++++++-
2 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/layerindex/update.py b/layerindex/update.py
index 2d578df..d1e67a0 100755
--- a/layerindex/update.py
+++ b/layerindex/update.py
@@ -85,6 +85,8 @@ def prepare_update_layer_command(options, branch, layer, initial=False):
cmd += ' -d'
elif options.loglevel == logging.ERROR:
cmd += ' -q'
+ if options.keep_temp:
+ cmd += ' --keep-temp'
return cmd
def update_actual_branch(layerquery, fetchdir, branch, options, update_bitbake, bitbakepath):
@@ -165,6 +167,9 @@ def main():
parser.add_option("-q", "--quiet",
help = "Hide all output except error messages",
action="store_const", const=logging.ERROR, dest="loglevel")
+ parser.add_option("", "--keep-temp",
+ help = "Preserve temporary directory at the end instead of deleting it",
+ action="store_true")
options, args = parser.parse_args(sys.argv)
if len(args) > 1:
diff --git a/layerindex/update_layer.py b/layerindex/update_layer.py
index 7f0c08f..d91c00e 100644
--- a/layerindex/update_layer.py
+++ b/layerindex/update_layer.py
@@ -194,6 +194,9 @@ def main():
parser.add_option("-q", "--quiet",
help = "Hide all output except error messages",
action="store_const", const=logging.ERROR, dest="loglevel")
+ parser.add_option("", "--keep-temp",
+ help = "Preserve temporary directory at the end instead of deleting it",
+ action="store_true")
options, args = parser.parse_args(sys.argv)
if len(args) > 1:
@@ -258,6 +261,7 @@ def main():
except recipeparse.RecipeParseError as e:
logger.error(str(e))
sys.exit(1)
+ logger.debug('Using temp directory %s' % tempdir)
# Clear the default value of SUMMARY so that we can use DESCRIPTION instead if it hasn't been set
tinfoil.config_data.setVar('SUMMARY', '')
# Clear the default value of DESCRIPTION so that we can see where it's not set
@@ -702,7 +706,11 @@ def main():
if LooseVersion(bb.__version__) > LooseVersion("1.27"):
tinfoil.shutdown()
- shutil.rmtree(tempdir)
+ if options.keep_temp:
+ logger.debug('Preserving temp directory %s' % tempdir)
+ else:
+ logger.debug('Deleting temp directory')
+ shutil.rmtree(tempdir)
sys.exit(0)
--
2.9.5
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [layerindex-web][PATCH 2/3] models: allow LayerBranch.collection to be blank
2017-10-04 0:51 [layerindex-web][PATCH 1/3] update: allow preserving temp directory Paul Eggleton
@ 2017-10-04 0:51 ` Paul Eggleton
2017-10-04 0:51 ` [layerindex-web][PATCH 3/3] Show note if layer branch hasn't been indexed Paul Eggleton
1 sibling, 0 replies; 3+ messages in thread
From: Paul Eggleton @ 2017-10-04 0:51 UTC (permalink / raw)
To: yocto
It's really irritating to be forced to specify a value for this field
especially as it'll get auto-populated by the update script. Set
blank=True to allow that. While we're at it, touch up the description a
bit to make more sense.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
layerindex/migrations/0009_layerbranch_collection.py | 19 +++++++++++++++++++
layerindex/models.py | 2 +-
2 files changed, 20 insertions(+), 1 deletion(-)
create mode 100644 layerindex/migrations/0009_layerbranch_collection.py
diff --git a/layerindex/migrations/0009_layerbranch_collection.py b/layerindex/migrations/0009_layerbranch_collection.py
new file mode 100644
index 0000000..bf6276f
--- /dev/null
+++ b/layerindex/migrations/0009_layerbranch_collection.py
@@ -0,0 +1,19 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('layerindex', '0008_yp_compatible'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='layerbranch',
+ name='collection',
+ field=models.CharField(help_text='Name of the collection that the layer provides for the purpose of expressing dependencies (as specified in BBFILE_COLLECTIONS). Can only contain letters, numbers and dashes.', max_length=40, blank=True, null=True, verbose_name='Layer Collection'),
+ ),
+ ]
diff --git a/layerindex/models.py b/layerindex/models.py
index e99f0b8..b39518a 100644
--- a/layerindex/models.py
+++ b/layerindex/models.py
@@ -157,7 +157,7 @@ class YPCompatibleVersion(models.Model):
class LayerBranch(models.Model):
layer = models.ForeignKey(LayerItem)
branch = models.ForeignKey(Branch)
- collection = models.CharField('Layer Collection', max_length=40, null=True, help_text='Name of the layer that could be used in the list of dependencies - can only contain letters, numbers and dashes')
+ collection = models.CharField('Layer Collection', max_length=40, null=True, blank=True, help_text='Name of the collection that the layer provides for the purpose of expressing dependencies (as specified in BBFILE_COLLECTIONS). Can only contain letters, numbers and dashes.')
version = models.CharField('Layer Version', max_length=10, null=True, blank=True, help_text='The layer version for this particular branch.')
vcs_subdir = models.CharField('Repository subdirectory', max_length=40, blank=True, help_text='Subdirectory within the repository where the layer is located, if not in the root (usually only used if the repository contains more than one layer)')
vcs_last_fetch = models.DateTimeField('Last successful fetch', blank=True, null=True)
--
2.9.5
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [layerindex-web][PATCH 3/3] Show note if layer branch hasn't been indexed
2017-10-04 0:51 [layerindex-web][PATCH 1/3] update: allow preserving temp directory Paul Eggleton
2017-10-04 0:51 ` [layerindex-web][PATCH 2/3] models: allow LayerBranch.collection to be blank Paul Eggleton
@ 2017-10-04 0:51 ` Paul Eggleton
1 sibling, 0 replies; 3+ messages in thread
From: Paul Eggleton @ 2017-10-04 0:51 UTC (permalink / raw)
To: yocto
For newly added layers it may not be immediately obvious that you have
to wait for it to be indexed (since the update script is usually run on
a scheduled basis). If the layer branch hasn't been indexed, add a note
mentioning this.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
templates/layerindex/detail.html | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/templates/layerindex/detail.html b/templates/layerindex/detail.html
index 144d5e8..0747421 100644
--- a/templates/layerindex/detail.html
+++ b/templates/layerindex/detail.html
@@ -167,6 +167,11 @@
</div> <!-- end of row-fluid -->
</div> <!-- end of container-fluid -->
+ {% if not layerbranch.vcs_last_commit %}
+ <div class="alert alert-info">
+ <b>Note:</b> The content of this layer on branch {{ url_branch }} has not yet been indexed. Indexing should take place within a few hours.
+ </div>
+ {% endif %}
<ul class="nav nav-tabs" id="layertabbar">
{% if layerbranch.recipe_set.count > 0 %}
--
2.9.5
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-10-04 0:51 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-04 0:51 [layerindex-web][PATCH 1/3] update: allow preserving temp directory Paul Eggleton
2017-10-04 0:51 ` [layerindex-web][PATCH 2/3] models: allow LayerBranch.collection to be blank Paul Eggleton
2017-10-04 0:51 ` [layerindex-web][PATCH 3/3] Show note if layer branch hasn't been indexed Paul Eggleton
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.