From: Ed Bartosh <ed.bartosh@linux.intel.com>
To: Elliot Smith <elliot.smith@intel.com>
Cc: toaster@yoctoproject.org
Subject: Re: [review-request][PATCH] toaster: Rationalise mimetype guessing to fix artifact downloads
Date: Mon, 28 Sep 2015 12:05:30 +0300 [thread overview]
Message-ID: <20150928090530.GB7533@linux.intel.com> (raw)
In-Reply-To: <1443100461-27664-1-git-send-email-elliot.smith@intel.com>
Hi Elliot,
The patch looks great! Thanks you!
Acked-by: Ed Bartosh <ed.bartosh@linux.intel.com>
On Thu, Sep 24, 2015 at 02:14:21PM +0100, Elliot Smith wrote:
> Artifact download links were broken because the function to
> get the mimetype for the artifact was incorrectly using the
> underlying mimetype library. The function was also attached
> to the build environment controller, which was unnecessary, as
> we only support local controllers anyway.
>
> Remove the mimetype getter on the build environment and
> use the one in the view code instead. This works correctly
> and prevents the download error from occurring.
>
> [YOCTO #8369]
>
> Signed-off-by: Elliot Smith <elliot.smith@intel.com>
> ---
> bitbake/lib/toaster/bldcontrol/models.py | 34 --------------------------------
> bitbake/lib/toaster/toastergui/views.py | 2 +-
> 2 files changed, 1 insertion(+), 35 deletions(-)
>
> diff --git a/bitbake/lib/toaster/bldcontrol/models.py b/bitbake/lib/toaster/bldcontrol/models.py
> index b61de58..c577b10 100644
> --- a/bitbake/lib/toaster/bldcontrol/models.py
> +++ b/bitbake/lib/toaster/bldcontrol/models.py
> @@ -39,40 +39,6 @@ class BuildEnvironment(models.Model):
> created = models.DateTimeField(auto_now_add = True)
> updated = models.DateTimeField(auto_now = True)
>
> -
> - def get_artifact_type(self, path):
> - if self.betype == BuildEnvironment.TYPE_LOCAL:
> - try:
> - import magic
> -
> - # fair warning: this is a mess; there are multiple competeing and incompatible
> - # magic modules floating around, so we try some of the most common combinations
> -
> - try: # we try ubuntu's python-magic 5.4
> - m = magic.open(magic.MAGIC_MIME_TYPE)
> - m.load()
> - return m.file(path)
> - except AttributeError:
> - pass
> -
> - try: # we try python-magic 0.4.6
> - m = magic.Magic(magic.MAGIC_MIME)
> - return m.from_file(path)
> - except AttributeError:
> - pass
> -
> - try: # we try pip filemagic 1.6
> - m = magic.Magic(flags=magic.MAGIC_MIME_TYPE)
> - return m.id_filename(path)
> - except AttributeError:
> - pass
> -
> - return "binary/octet-stream"
> - except ImportError:
> - return "binary/octet-stream"
> - raise Exception("FIXME: artifact type not implemented for build environment type %s" % self.get_betype_display())
> -
> -
> def get_artifact(self, path):
> if self.betype == BuildEnvironment.TYPE_LOCAL:
> return open(path, "r")
> diff --git a/bitbake/lib/toaster/toastergui/views.py b/bitbake/lib/toaster/toastergui/views.py
> index 8689a12..2ec0197 100755
> --- a/bitbake/lib/toaster/toastergui/views.py
> +++ b/bitbake/lib/toaster/toastergui/views.py
> @@ -2797,7 +2797,7 @@ if True:
> if file_name is None:
> raise Exception("Could not handle artifact %s id %s" % (artifact_type, artifact_id))
> else:
> - content_type = b.buildrequest.environment.get_artifact_type(file_name)
> + content_type = MimeTypeFinder.get_mimetype(file_name)
> fsock = b.buildrequest.environment.get_artifact(file_name)
> file_name = os.path.basename(file_name) # we assume that the build environment system has the same path conventions as host
>
> --
> Elliot Smith
> Software Engineer
> Intel OTC
>
> ---------------------------------------------------------------------
> Intel Corporation (UK) Limited
> Registered No. 1134945 (England)
> Registered Office: Pipers Way, Swindon SN3 1RJ
> VAT No: 860 2173 47
>
> This e-mail and any attachments may contain confidential material for
> the sole use of the intended recipient(s). Any review or distribution
> by others is strictly prohibited. If you are not the intended
> recipient, please contact the sender and delete all copies.
>
> --
> _______________________________________________
> toaster mailing list
> toaster@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/toaster
--
--
Regards,
Ed
prev parent reply other threads:[~2015-09-28 9:05 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-24 13:14 [review-request][PATCH] toaster: Rationalise mimetype guessing to fix artifact downloads Elliot Smith
2015-09-28 9:05 ` Ed Bartosh [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150928090530.GB7533@linux.intel.com \
--to=ed.bartosh@linux.intel.com \
--cc=elliot.smith@intel.com \
--cc=toaster@yoctoproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.