summaryrefslogtreecommitdiff
path: root/morphlib
Commit message (Collapse)AuthorAgeFilesLines
* Make morph petrify use the petrify_everything functionJonathan Maw2013-07-031-49/+2
|
* Save more than one failed buildRichard Maw2013-07-031-1/+1
| | | | | | I blithely replaced runcmd(['mv', src_dir, dest_dir]) with os.rename(src_dir, dest_dir), without realising that mv does extra work when the target is a directory that already exists.
* Allow to set the number of cpus for virtualbox and kvm deployments.Tiago Gomes2013-07-023-3/+13
|
* Merge commit '945f004cc5bda68d9a847f8dca4970371753c530'Lars Wirzenius2013-07-021-4/+6
|\
| * Make /etc/os-release have the easy infoJonathan Maw2013-07-021-4/+6
| |
* | Revert "Merge branch 'jonathan/fix-petrify'"Daniel Silverstone2013-07-021-2/+49
|/ | | | | This reverts commit cc04afc00f35dc00e03c9ab207bbc2e5513812d0, reversing changes made to 656295846bffb4eda9fa3869d04fd7c042b2e37a.
* Make morph petrify use the petrify_everything functionJonathan Maw2013-07-021-49/+2
|
* Improvements to ssh-rsync extensionTiago Gomes2013-07-011-70/+80
|
* Merge remote-tracking branch 'origin/baserock/tiagogomes/bscs-sync'Richard Maw2013-06-251-4/+13
|\
| * Run the merge mode of baserock-system-config-sync when upgrading running ↵Tiago Gomes2013-06-171-0/+9
| | | | | | | | systems.
| * Add a missing trailing slash to the source directory of rsyncTiago Gomes2013-06-171-1/+2
| | | | | | | | | | | | | | | | | | Accordingly the rsync manual: "A trailing slash on the source changes this behavior to avoid creating an additional directory level at the destination. You can think of a trailing / on a source as meaning "copy the contents of this directory" as opposed to "copy the directory by name".
| * Unmount the remote mouting point instead of the root diskTiago Gomes2013-06-151-1/+1
| | | | | | | | Unmounting the root disk as the side effect of turn it to be read only
| * Don't dereference the default symbolic link when updating itTiago Gomes2013-06-151-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Or else this ln -s -f update1 /mp/systems/default will do this '/pp/systems/default/update1' -> 'update1 When we want '/pp/systems/default' -> 'update1
| * Fix warnings and test suiteLars Wirzenius2013-06-153-20/+14
| |
| * Remove SystemKindBuilderFactoryLars Wirzenius2013-06-153-133/+52
| | | | | | | | | | | | We now only support one system-kind, so there's no need for the factory stuff, and at this point it only serves to obfuscate and complexify.
| * Require system-kind to be rootfs-tarballLars Wirzenius2013-06-151-0/+3
| |
| * Delete system-kind plugins except for rootfs-tarballLars Wirzenius2013-06-153-284/+0
| | | | | | | | | | Also delete the infrastructure for disk-based system-kinds from builder2.py.
| * Check that that the repo-alias option matches the expected RERichard Dale2013-06-151-0/+4
| |
* | Fix lines overflowing the 80 character limitRichard Dale2013-06-252-5/+10
| |
* | Don't show git config messages for 'morph branch' in verbose modeRichard Dale2013-06-253-8/+15
| |
* | Only attempt to clean up artifactsRichard Maw2013-06-111-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Because the whole cachedir was considered, and not just the artifacts tree, it would recursively consider every file an artifact, incuding cached gits and ccache. This made it slower and remove things before they were due, since only the artifact cache is guaranteed to set mtimes on access. This wouldn't cause incorrect builds, since any cached objects get re-generated, but it was definitely not desired behaviour.
* | deploy plugin: Use sh instead of bash for timestampingRichard Maw2013-06-111-1/+1
| | | | | | | | | | This was left over from experimentation, it works with sh, and is faster.
* | Merge remote-tracking branch ↵Lars Wirzenius2013-06-202-1/+4
|\ \ | | | | | | | | | | | | | | | | | | 'origin/baserock/richardmaw/S8043-timestamp-extension-output' I verified that a deployment still works, and that the output is time-stamped.
| * | Write extensions: Flush output when using status()Richard Maw2013-06-101-0/+1
| | | | | | | | | | | | | | | This is required to get real-time output and the timestamps meaning anything useful.
| * | deploy_plugin: Timestamp output of extensionsRichard Maw2013-06-101-1/+3
| | | | | | | | | | | | | | | This requires a patch to cliapp to actually print the output, as there is a bug that causes it to always output to a pipe.
* | | Fix permissions of /etc/os-releaseLars Wirzenius2013-06-201-2/+4
| | | | | | | | | | | | | | | Also clarify how the directory containing it gets created to avoid a bit of code duplication.
* | | Fix warnings and test suiteLars Wirzenius2013-06-203-20/+14
| | |
* | | Remove SystemKindBuilderFactoryLars Wirzenius2013-06-203-133/+52
| | | | | | | | | | | | | | | | | | We now only support one system-kind, so there's no need for the factory stuff, and at this point it only serves to obfuscate and complexify.
* | | Require system-kind to be rootfs-tarballLars Wirzenius2013-06-201-0/+3
| | |
* | | Delete system-kind plugins except for rootfs-tarballLars Wirzenius2013-06-203-284/+0
|/ / | | | | | | | | Also delete the infrastructure for disk-based system-kinds from builder2.py.
* | Merge remote-tracking branch ↵Daniel Silverstone2013-06-191-0/+4
|\ \ | |/ |/| | | | | | | 'origin/baserock/richarddale/check-repo-alias-option' Reviewed-By: Daniel Silverstone <daniel.silverstone@codethink.co.uk>
| * Check that that the repo-alias option matches the expected RERichard Dale2013-06-171-0/+4
| |
* | Write extensions: pass -s to rsyncRichard Maw2013-06-093-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | -s, or --protect-args prevents the file path components of destination or source paths being interpreted by the remote shell. This is for wildcards or other shell features, but it breaks when paths have whitespace. We tend to always use absolute paths, so all uses of rsync now pass -s. kvm.write needs it, since the disk can be written to a path with spaces. Nfsboot and ssh-rsync need it because version labels are used, which may have spaces, and temporary directories are used, which could have spaces in weird TMPDIR configurations.
* | kvm.write uses NIC_CONFIGJonathan Maw2013-06-191-0/+5
| |
* | Fix a typoTiago Gomes2013-06-191-1/+1
| |
* | GC Plugin: Fix usage of satus.Richard Maw2013-06-091-1/+1
| | | | | | | | I don't know how that one slipped through.
* | Merge remote-tracking branch 'origin/symb-link-running-systems'Lars Wirzenius2013-06-192-6/+19
|\ \
| * | Support upgrades in older running versions.Tiago Gomes2013-06-141-3/+11
| | | | | | | | | | | | | | | | | | | | | Verify if are using and older extlinux configuration and upgrade it if the case, by checking if the "default" symbolic link exists on the target. Note that with the symbolic link we don't need to update extlinux configuration after an upgrade
| * | Create a symbolic link to the default system version when upgrading running ↵Tiago Gomes2013-06-141-2/+6
| | | | | | | | | | | | systems.
| * | Only upgrade an older extlinux configuration if we want one.Tiago Gomes2013-06-141-1/+2
| | |
* | | Merge branch 'baserock/richardmaw/S7905-morph-gc-v3' of ↵Richard Maw2013-06-094-8/+247
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | git://git.baserock.org/baserock/baserock/morph There were no major objections to the design and it has been sitting in the merge queue long enough that it was decided to merge it. It has been reviewed and lightly tested by Jonathan Maw.
| * | util: suggest how to deal with insufficient spaceRichard Maw2013-06-071-1/+7
| | |
| * | plugins: add morph gc subcommandRichard Maw2013-06-071-0/+158
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes staging areas and extracted chunks from --tempdir. Then asks the local artifact cache what artifacts it has and how old they are, removing all sources older than --cachedir-artifact-delete-older-than, and may delete other sources that are younger than --cachedir-artifact-keep-younger-than if it still needs to make space.
| * | lac_tests: Cover list and deleteRichard Maw2013-06-072-2/+34
| | |
| * | LAC: implement contents listing and removal by keyRichard Maw2013-06-071-0/+28
| | |
| * | lac_tests: set cache keyRichard Maw2013-06-071-1/+3
| | |
| * | util: split out space unify logicRichard Maw2013-06-071-6/+19
| |/
* | Merge branch 'baserock/tiagogomes/vbox-networking2' of ↵Tiago Gomes2013-06-171-7/+65
|\ \ | | | | | | | | | | | | | | | git://git.baserock.org/baserock/baserock/morph Reviewed by Richard Maw, Lars Wirzenis, Daniel Silverstone and Jonathan Maw.
| * | Improve network setup of the virtualbox write extension.Tiago Gomes2013-06-061-7/+65
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The VirtualBox deployment write extension will configure networking in the following manner: - One host-only network interface will be used to group the virtual machines together (and to give access between the host and the virtual machines). It will be bound to eth0 of the virtual machine. - One NAT (or Bridge) network interface will be used to allow the virtual machines access to the wider network. This will be bound to eth1 of the virtual machine. Now deployment to virtual box will require that both HOST_IPADDR and NETMASK environment variables be set, and also configuration for eth0 and eth1 is expected in the NETWORK_CONFIG environment variable. This commit also replaces some run_cmd with ssh_runcmd.
* | Merge branch 'baserock/tiagogomes/default-symlink' of ↵Tiago Gomes2013-06-172-5/+14
|\ \ | | | | | | | | | | | | | | | git://git.baserock.org/baserock/baserock/morph Reviewed by Richard Maw and Lars Wirzenius