* Fri Sep 14 2018 msAATTsuse.de- Add rice as development dependency * Fri Sep 14 2018 msAATTsuse.de- Fixed use of obsolete Dir::Tmpname.make_tmpname * Thu Jul 26 2018 druonysusAATTsuse.de- add -f so the repo with auto-refresh the metadata * Thu Jul 26 2018 druonysusAATTsuse.de- use the obs:// shorthand to adding the repo with zypper * Tue Feb 28 2017 msAATTsuse.de- Add support for URI credentials If a repository of the form: is provided the credentials information was not properly handled for curl and ruby\'s openURI implementation * Mon Dec 05 2016 msAATTsuse.de- Bump version: 0.7.9 → 0.7.10 * Mon Dec 05 2016 msAATTsuse.de- Start udev daemon for docker buildsystems This is needed in order to allow device node creation for e.g lvm tools * Mon Dec 05 2016 msAATTsuse.de- Bump version: 0.7.8 → 0.7.9 * Mon Dec 05 2016 msAATTsuse.de- Make sure host system /dev is connected to guest docker does not run a full devtmpfs mount inside of the guest. It is only a tmpfs. This leads to the problem if commands are supposed to create device nodes below /dev that they never appear in the container. Therefore the /dev location is bind mounted to the host in order to allow for image building. The security implications are well known, but there is currently no other choice and the container already runs as a privileged container. Fixes bnc#1013619, Fixes #12 * Fri Dec 02 2016 msAATTsuse.de- update README * Fri Dec 02 2016 msAATTsuse.de- Update README * Fri Dec 02 2016 msAATTsuse.de- Update docker import command in README * Wed Nov 30 2016 msAATTsuse.de- Fixup README The location where dice packages can be found was outdated * Mon Oct 31 2016 msAATTsuse.de- Bump version: 0.7.7 → 0.7.8 * Mon Oct 31 2016 msAATTsuse.de- Fixup repo source translator for yast2 type Leave yast2 repo path untouched if not specified as obs type * Thu Jun 23 2016 msAATTsuse.de- Update location of build container * Tue Apr 19 2016 msAATTsuse.de- Run build and bundle in UTF-8 locale * Mon Apr 18 2016 msAATTsuse.de- add option to skip dockerhub container update * Mon Apr 18 2016 msAATTsuse.de- Move to kiwi next generation * Sun Apr 17 2016 msAATTsuse.de- Fixed evaluation of yast2 dist URI\'s * Sun Apr 17 2016 msAATTsuse.de- Fixed unit test for create_solv Check for raise condition was incomplete * Mon Nov 16 2015 msAATTsuse.de- Fixed docker result retrieval Don\'t pass and store big data via stdout channel through a docker command. I received unstable results and broken pipes. Better store the data as a file on a shared host/container volume * Thu Nov 12 2015 msAATTsuse.de- release version bump * Thu Nov 12 2015 msAATTsuse.de- Fixed 404 header check Don\'t fail on garbage (compressed) junks of data * Thu Nov 12 2015 msAATTsuse.de- release version bump * Thu Nov 12 2015 msAATTsuse.de- Pass KIWI_IGNORE_OLD_MOUNTS for dice build * Thu Nov 12 2015 msAATTsuse.de- Update spec template curl is a required component * Thu Nov 12 2015 msAATTsuse.de- Rename uri to repo_uri This caused a name conflict on the openuri side of ruby * Fri Oct 30 2015 msAATTsuse.de- minor version bump * Fri Oct 30 2015 msAATTsuse.de- Fixed solvable creation If multiple solver items are present each needs to be its own solvable in order to become merged later. The *2solv tools does not support multiple input files * Wed Jul 29 2015 msAATTsuse.de- Fixed job prepare_build The method glob deletes old builds from tmp. What sounds like a good idea is a bad one because when multiple job runs in parallel this breaks the other jobs. That\'s because depending on the selected build system and setup tmp might be a shared location * Tue Jul 28 2015 msAATTsuse.de- Fixed calculateDigest The calculation of the recipe digest is based on the data which build the image description. However if people use a repository as part of the image description it should not be taken into consideration, because a solver operation will find potential repository changes. Therefore the list of files and directories belonging to an image description is limited to the top level entries and the recursive search for the optioal overlay root directory * Tue Jul 28 2015 msAATTsuse.de- Fixed comps download and test * Tue Jul 28 2015 msAATTsuse.de- Follow up fix to support yum groups yum group names are prefixed with group: not with pattern: * Sat Jul 25 2015 msAATTsuse.de- Added support for this:// kiwi uri type * Mon Jul 20 2015 msAATTsuse.de- Added --skip-missing option Allows to skip packages for the solver operation if they could not be found in the repositories. This is useful if packages are only relevant for certain profiles of the kiwi configuration. Dice always solves over all packages listed in the configuration * Mon Jul 20 2015 msAATTsuse.de- Version 0.7.3 * Mon Jul 20 2015 msAATTsuse.de- Fixed kiwi URI obs resolver prevent double slashes in output URL * Mon Jul 20 2015 msAATTsuse.de- Added support for yum groups in solver libsolv provides a comp2solv parser which allows to read yum groups (comps) files. This allows to let satsolver use yum groups for building rhel images * Mon Jul 20 2015 msAATTsuse.de- Fixed packaging missing ruby-solv requirement, and broken binary patch to adapt the gem search path * Sun Jul 19 2015 msAATTsuse.de- Disable ruby internal buffering for build log * Thu Jul 16 2015 msAATTsuse.de- Version 0.7.2 * Thu Jul 16 2015 msAATTsuse.de- Use unique tmp names for building * Thu Jul 16 2015 msAATTsuse.de- Bind mount docker host tmp dir for building It should be avoided to produce big data in the docker storage backend. We might easily run out of space * Thu Jul 16 2015 msAATTsuse.de- Stick to the naming conventions of docker Use the tag name \'latest\' to identify the most recent image * Thu Jul 16 2015 msAATTsuse.de- Fixed calling commands passed to docker run let a shell process evaluate the given parameters * Wed Jul 15 2015 msAATTsuse.de- Added support for plain docker build system The buildsystem will pull the opensuse/kiwi image from dockerhub to establish a build environment * Tue Jul 14 2015 msAATTsuse.de- Refactor job command invokation Make sure the basic access to the buildsystem is provided by the buildsystem factory and not created as part of the job. This allows to run job commands within a buildservice by the nature of the buildservice and not hard coded to the use of ssh. This change has been in preparation to add a native docker build service class * Mon Jun 08 2015 msAATTsuse.de- Update README due to the use of the latest packaging tools for ruby modules the package was renamed to follow the guidelines. Formerly \'dice\' is now ruby-rubygem-dice-. * Tue May 19 2015 msAATTsuse.de- Version 0.6.1 * Tue May 19 2015 msAATTsuse.de- Adapt package spec, remove recipes * Tue May 19 2015 msAATTsuse.de- Delete recipes The recipes are basically duplicates from the JeOS descriptions provided by kiwi-templates. Now that the kiwi-templates are prepared for dice (provides a Vagrantfile) we refer to one central place instead of duplicating descriptions * Tue May 19 2015 msAATTsuse.de- Update README Change default provider setup to docker. This allows to directly refer to the kiwi-templates which contains all dice configs to build contained. In addition using docker is much faster than virtualbox. Thus I recommend this system * Sun May 17 2015 msAATTsuse.de- Switched to gem2rpm way of creating the package * Fri Apr 10 2015 msAATTsuse.de- Make sure a default provider is set for vagrant dice takes the value VAGRANT_DEFAULT_PROVIDER from the environment and if not set it is set to \'docker\'. the parameter will be passed as --provider option to the vagrant calls * Tue Apr 07 2015 msAATTsuse.de- Fixed handling of relative repo source paths Relative source paths can be set relative to the image description. Inside of the container the image description is mapped below /vagrant. If the relative path is leaving the image description directory it is in the user\'s responsibility to map the repo to the right place inside of the container so that the relative path points correctly to the repository. This fixes #7 * Tue Mar 24 2015 msAATTsuse.de- Support legacy obs type pointing to yast style repo * Tue Mar 24 2015 msAATTsuse.de- Update dist url\'s in example recipes Unfortunately kiwi can only deal well with distro repos if they are of type yast2. This is because in case of using the rpm-md version the pattern information is missing. Thus we switch back to the yast2 url * Tue Mar 24 2015 msAATTsuse.de- Add use of pattern data for rpm-md repos In the buildservice an rpm-md repo can provide suse style pattern information. If present we make use of them to form the solvable * Tue Mar 24 2015 msAATTsuse.de- Fixed translation of obs repo to http repo Use the correct URL schema to form an http url containing the obs project names. The obs redirector takes are for redirecting to the correct repo location * Tue Mar 24 2015 msAATTsuse.de- Update recipe template repositories Use the correct project layout for describing an obs repo * Tue Mar 24 2015 msAATTsuse.de- Support obs url type for update repos The url matcher now also supports obs url types of the type obs://update/ * Tue Mar 24 2015 msAATTsuse.de- Make sure potential kiwi lock file is removed Prior to building the prepare_build method also removes stale kiwi init lock file from /var/lock * Tue Mar 24 2015 msAATTsuse.de- Added update repo to 13.1 example recipe * Fri Mar 20 2015 msAATTsuse.de- Prevent halt() from being called multiple times In case of an exception the global exception handler will call the cleanup correctly. Thus there is no need to actively halt the buildsystem if the next call is a raise * Fri Mar 20 2015 msAATTsuse.de- Support dice build option --kiwiprofile If specified the option will hand over the value to the contained kiwi call as --add-profile option. This fixes #6 * Wed Mar 18 2015 msAATTsuse.de- Update suse-13.1-JeOS recipe deprecated vagrant option -privileged, replaced by --privileged * Tue Mar 10 2015 msAATTsuse.de- Delete invalid dot graph * Tue Mar 10 2015 msAATTsuse.de- More robust inheritance for connection classes Connection sub classes should not require to call super in order to run the constructor from the base class. It\'s more robust to let the base class constructor call a post initialize method which can be specialized in the sub class when required * Tue Mar 10 2015 msAATTsuse.de- More robust inheritance for buildsystem classes BuildSystem sub classes should not require to call super in order to run the constructor from the base class. It\'s more robust to let the base class constructor call a post initialize method which can be specialized in the sub class when required * Tue Mar 10 2015 msAATTsuse.de- More robust inheritance for repository classes Repository sub classes should not require to call super in order to run the constructor from the base class. It\'s more robust to let the base class constructor call a post initialize method which can be specialized in the sub class when required * Mon Mar 09 2015 msAATTsuse.de- Update project url * Fri Mar 06 2015 msAATTsuse.de- Cleanup use of default values Use a symbol as default buildhost indicator to avoid conflicts with buildhost names. In addition make sure that all constant values are stored at the same place * Fri Mar 06 2015 msAATTsuse.de- Update README due to ssh key handling changes * Fri Mar 06 2015 msAATTsuse.de- config.ssh_private_key not used for vagrant builds Now that dice looks up the vagrant generated key there is no need for the Dicefile to specify the ssh pkey path * Fri Mar 06 2015 msAATTsuse.de- Fixed private key handling for buildsystem access vagrant has changed and will create its own key pair when the instance comes up. In order to use the right key dice look up the location of the generated private key and uses that for further ssh connections to the running instance * Wed Mar 04 2015 msAATTsuse.de- check_404_header only for remote uri * Wed Mar 04 2015 msAATTsuse.de- Bumb version to 0.5.3 * Tue Mar 03 2015 msAATTsuse.de- Added support for rpm-dir repotype In addition to the support for plaindir repos, the check for the repo type was changed to use the type value from the kiwi config file instead of best guessing the type according to the presence of repo metadata files. Especially for repos without metadata like plaindirs this doesn\'t work well * Tue Feb 17 2015 msAATTsuse.de- Fixed use of dir:// uri type The check if the uri is a remote or local uri was missing in the repository type checker. This lead to a wrong location passed to the open call if the dir:// type was used * Mon Feb 16 2015 msAATTsuse.de- Added Uri class to control access Simple uri\'s like local paths or remote locations via http doesn\'t require a pre processing. However there are more complex uri\'s like the path to an iso which requires to loop mount the device prior to use it. It\'s also required to cleanup the state of such devices properly. It also makes sense to ask an Uri class if the resource is remote or local and maybe more useful messages can be passed to an Uri object in the future * Fri Feb 13 2015 msAATTsuse.de- Increase version to v0.5.2 * Fri Feb 13 2015 msAATTsuse.de- Fixed use of local repositories In order to allow curl to load local files the mime type file:// must be prepended * Thu Feb 12 2015 msAATTsuse.de- Support dir:// and just path /... uri types * Thu Feb 05 2015 msAATTsuse.de- Update documentation * Thu Feb 05 2015 msAATTsuse.de- Fixed documentation references * Thu Feb 05 2015 msAATTsuse.de- Documentation style fixes * Thu Feb 05 2015 msAATTsuse.de- Update documentation * Mon Jan 05 2015 msAATTsuse.de- Added check_404_header method when using curl on a file which does not exist the response is a html encoded error code e.g 404 not found. The exit code of curl in that case is success but in fact this should be treated as an error * Sun Jan 04 2015 msAATTsuse.de- Make sure Command.run is used in repository_base * Sun Jan 04 2015 msAATTsuse.de- Added cleanup command cleanup build metadata. On build several metadata like the semaphore lock or vagrant instance metadata as well the caller history is created. This command allows to cleanup the data to its original state. So far only the semaphore cleanup has been implemented * Fri Jan 02 2015 msAATTsuse.de- Allow to set kiwi type as build option * Thu Jan 01 2015 msAATTsuse.de- Update rake task, delete static mkmf-rice.rb * Thu Jan 01 2015 msAATTsuse.de- Create semget lock id from a digest Using lock.sum is not safe. Instead a sha256 digest from the lock path is created and from there the sum value is used as id for semget * Thu Jan 01 2015 msAATTsuse.de- Allow lock release only if lock was set before * Wed Dec 31 2014 msAATTsuse.de- Use a local copy of mkmf-rice.rb to build Makefile For some reason loading of mkmf-rice with ruby in a buildservice chroot did not work. For now this workaround fixed the problem * Wed Dec 31 2014 msAATTsuse.de- Need a C++ compiler to build package * Wed Dec 31 2014 msAATTsuse.de- Build requires ruby-devel * Wed Dec 31 2014 msAATTsuse.de- Fixed build target ruby ./extconf.rb calls mkdir at a place without permissons when building in the buildservice * Wed Dec 31 2014 msAATTsuse.de- Added compile of semaphore to rake task * Wed Dec 31 2014 msAATTsuse.de- Use named semaphore for process synchronisation File base locking is not safe from race conditions * Tue Dec 30 2014 msAATTsuse.de- Added rebuild? method to BuildStatus class BuildStatus should determine if a rebuild is required The BuildTask just checks by sending this message to the status object * Tue Dec 30 2014 msAATTsuse.de- More flexible interface for build status checking for a class type as status type is not flexible. In addition the BuildStatus class should really know everything about the build status. * Sun Dec 28 2014 msAATTsuse.de- Found a duck making a decision by selecting for class type is not flexible * Tue Dec 23 2014 msAATTsuse.de- Delete no longer needed recipe test data * Tue Dec 23 2014 msAATTsuse.de- Better handling of Recipe class improve unit tests for Recipe class. change public interface to expose setup and validate methods and keep the constructor simple. * Mon Dec 22 2014 msAATTsuse.de- Make Recipe class better testable * Mon Dec 22 2014 msAATTsuse.de- Reduce class dependencies for Recipe and BuildTask * Sun Dec 21 2014 msAATTsuse.de- Remove argument order dependencies * Sun Dec 21 2014 msAATTsuse.de- Isolate dependencies * Sat Dec 20 2014 msAATTsuse.de- Update unit tests to all class changes * Sat Dec 20 2014 msAATTsuse.de- Cleanup BuildSystem class name Make sure the BuildSystem classes inherits from BuildSystemBase * Sat Dec 20 2014 msAATTsuse.de- Cleanup Connection class name Make sure the Connection classes inherits from ConnectionBase * Sat Dec 20 2014 msAATTsuse.de- Reduce class dependencies for Solver class * Sat Dec 20 2014 msAATTsuse.de- Don\'t test private methods * Wed Dec 17 2014 msAATTsuse.de- Cleanup Recipe class Make the interface more clear. The update method updates the checksum of the recipe which is clear by the name of the method it calls: writeRecipeChecksum. There should be no connection between a recipe and a job, but a recipe can check if something has changed in its configuration or metadata. So there is a method uptodate? which checks that * Wed Dec 17 2014 msAATTsuse.de- Cleanup Solver class The task for the Solver class is to solve packages against repositories and not to write the solver result to the recipe scan file. The latter belongs to the Recipe class * Mon Dec 15 2014 msAATTsuse.de- Fixed README log command has changed to be buildlog * Mon Dec 15 2014 msAATTsuse.de- Fixed inifile version lock down version 2.0.2 as currently in openSUSE works * Sat Dec 13 2014 msAATTsuse.de- Added dice history command it prints the dice command history for the given recipe and shows the result of the command with a timestamp as section name * Fri Dec 12 2014 msAATTsuse.de- Don\'t pass options as hash Instead make options available as OpenStruct instance global to the Dice namespace * Fri Dec 12 2014 msAATTsuse.de- Make the logger an instance of the Logger class in addition write the logfile in ini format * Thu Dec 11 2014 msAATTsuse.de- Added dice-rpmlintrc as source to spec file * Wed Dec 10 2014 msAATTsuse.de- Fixed spec template Source location is local since dice is not yet available on rubygems.org * Wed Dec 10 2014 msAATTsuse.de- OO Cleanup Hide instance variables, use attr_reader and remove obsolete self written accessor methods * Tue Dec 09 2014 msAATTsuse.de- Added Copyright comment * Tue Dec 09 2014 msAATTsuse.de- Update README * Wed Nov 26 2014 msAATTsuse.de- Cleanup exception handling Use one central place to define exceptions for error conditions and build states * Fri Nov 21 2014 msAATTsuse.de- Fixed cleanup screen job call unknown private method called, left over from last change * Fri Nov 21 2014 msAATTsuse.de- Fixed use of open-uri using File.open will always open a file not a uri * Fri Nov 21 2014 msAATTsuse.de- Update 13.2 recipe to use update repo * Fri Nov 21 2014 msAATTsuse.de- Added information about result in status output * Fri Nov 21 2014 msAATTsuse.de- Add Gemfile.lock to gitignore * Fri Nov 14 2014 msAATTsuse.de- Update unit tests for Solver * Fri Nov 14 2014 msAATTsuse.de- Added unit tests for Solver * Fri Nov 14 2014 msAATTsuse.de- Added unit tests for SuSERepository * Fri Nov 14 2014 msAATTsuse.de- Added unit tests for RpmMdRepository * Fri Nov 14 2014 msAATTsuse.de- Added unit tests for RepositoryFactory * Fri Nov 14 2014 msAATTsuse.de- Added unit tests for RepositoryBase * Fri Nov 14 2014 msAATTsuse.de- Added unit tests for KiwiUri * Fri Nov 14 2014 msAATTsuse.de- Added unit tests for KiwiConfig * Fri Nov 14 2014 msAATTsuse.de- Make sure /var/tmp/kiwi/satsolver is created if not existent * Thu Nov 13 2014 msAATTsuse.de- Docker build requires to run in privileged mode * Thu Nov 13 2014 msAATTsuse.de- Moved ssh startup fixes into the docker build box build on BS * Thu Nov 13 2014 msAATTsuse.de- Added example config for docker use in suse-13.1-JeOS/Vagrantfile * Wed Nov 12 2014 msAATTsuse.de- Update test recipe build host connection * Wed Nov 12 2014 msAATTsuse.de- Append log data in case of a raise the raise message was written to a logfile by opening it as new file. Thus log information from former commands e.g kiwi was wiped. The log information should be appended * Mon Nov 03 2014 msAATTsuse.de- delete TODO, handle issues on github * Wed Oct 29 2014 msAATTsuse.de- Fixed factories to be real factories * Wed Oct 29 2014 msAATTsuse.de- rename repository class to RepositoryFactory * Mon Oct 27 2014 msAATTsuse.de- Update 13.2 recipe, ssh key path should point to homedir * Mon Oct 27 2014 msAATTsuse.de- Added unit test templates for new solver and repos tests for them are still missing though * Mon Oct 27 2014 msAATTsuse.de- Use http URL for factory because the URI translator in kiwi_uri does not yet know about full obs:// uri style * Mon Oct 27 2014 msAATTsuse.de- Added support for native solver, no kiwi --info required anymore * Fri Oct 24 2014 jmassaguerplaAATTsuse.de- update docs add the \"dice log\" option in the README.md file * Thu Oct 23 2014 jmassaguerplaAATTsuse.de- fix issue #3 : dice ssh command This commit adds the \"dice ssh\" command. * Thu Oct 23 2014 msAATTsuse.de- Use abstract_method gem * Wed Oct 22 2014 msAATTsuse.de- Fixed spec file, require base kiwi for solver with * Wed Oct 22 2014 msAATTsuse.de- Fixed typo * Wed Oct 22 2014 msAATTsuse.de- Update docs * Wed Oct 22 2014 msAATTsuse.de- Update class graph * Wed Oct 22 2014 msAATTsuse.de- Update example 13.2 recipe to use btrfs * Tue Oct 21 2014 msAATTsuse.de- Don\'t test private methods * Tue Oct 21 2014 msAATTsuse.de- Set primary build for SLE12 example to vmx * Tue Oct 21 2014 msAATTsuse.de- Better way to get IP and Port of vagrant machine * Tue Oct 21 2014 msAATTsuse.de- Add example Vagrantfile which works for virtualbox and libvirt * Tue Oct 21 2014 msAATTsuse.de- Fixed scheduler * Tue Oct 21 2014 msAATTsuse.de- Let BuildTask inherit from Solver * Mon Oct 20 2014 msAATTsuse.de- Update unit tests * Mon Oct 20 2014 msAATTsuse.de- Restructure Recipe class * Sun Oct 19 2014 msAATTsuse.de- Update dot graph style * Sun Oct 19 2014 msAATTsuse.de- Update dot graph * Sun Oct 19 2014 msAATTsuse.de- Update dot graph * Sun Oct 19 2014 msAATTsuse.de- Update dot graph * Thu Oct 16 2014 msAATTsuse.de- Update docs * Thu Oct 16 2014 msAATTsuse.de- Fixed status information for running builds * Thu Oct 16 2014 msAATTsuse.de- Put class name as prefix for info messages * Thu Oct 16 2014 msAATTsuse.de- Put exec calls as string to allow cut&paste * Mon Oct 13 2014 msAATTsuse.de- There is no need to lock the status call * Mon Oct 13 2014 msAATTsuse.de- Set host buildsystem locks in /tmp * Mon Oct 13 2014 msAATTsuse.de- Added correct status result for running or locked * Mon Oct 13 2014 msAATTsuse.de- Added simple --show option for log command * Mon Oct 13 2014 msAATTsuse.de- Don\'t show that a log exists in the status message In addition store the build log file as build.log and not as build_error.log because it is no longer removed it could contain a successful build log as well * Mon Oct 13 2014 msAATTsuse.de- Don\'t remove build log