=== modified file 'linaro_media_create/boards.py'
@@ -24,9 +24,11 @@
board_configs at the bottom of this file.
"""
+import atexit
import glob
import os
import re
+import tempfile
from linaro_media_create import cmd_runner
from linaro_media_create.partitions import SECTOR_SIZE
@@ -496,10 +498,13 @@
def make_boot_script(boot_script_data, boot_script):
# Need to save the boot script data into a file that will be passed to
# mkimage.
+ _, tmpfile = tempfile.mkstemp()
+ atexit.register(os.unlink, tmpfile)
plain_boot_script = os.path.join(
os.path.dirname(boot_script), 'boot.txt')
- with open(plain_boot_script, 'w') as fd:
+ with open(tmpfile, 'w') as fd:
fd.write(boot_script_data)
+ cmd_runner.run(['cp', tmpfile, plain_boot_script], as_root=True).wait()
return _run_mkimage(
'script', '0', '0', 'boot script', plain_boot_script, boot_script)
=== modified file 'linaro_media_create/tests/test_media_create.py'
@@ -606,6 +606,8 @@
self.assertEqual(expected, fixture.mock.calls)
def test_make_boot_script(self):
+ self.useFixture(MockSomethingFixture(
+ tempfile, 'mkstemp', lambda: (-1, '/tmp/random-abxzr')))
tempdir = self.useFixture(CreateTempDirFixture()).tempdir
self._mock_get_file_matching()
fixture = self._mock_Popen()
@@ -613,10 +615,11 @@
plain_boot_script_path = os.path.join(tempdir, 'boot.txt')
make_boot_script('boot script data', boot_script_path)
expected = [
- 'sudo', 'mkimage', '-A', 'arm', '-O', 'linux', '-T', 'script',
- '-C', 'none', '-a', '0', '-e', '0', '-n', 'boot script',
- '-d', plain_boot_script_path, boot_script_path]
- self.assertEqual([expected], fixture.mock.calls)
+ ['sudo', 'cp', '/tmp/random-abxzr', plain_boot_script_path],
+ ['sudo', 'mkimage', '-A', 'arm', '-O', 'linux', '-T', 'script',
+ '-C', 'none', '-a', '0', '-e', '0', '-n', 'boot script',
+ '-d', plain_boot_script_path, boot_script_path]]
+ self.assertEqual(expected, fixture.mock.calls)
def test_get_file_matching(self):
prefix = ''.join(