rpm-razor.c
changeset 238 d19dc7950c76
parent 236 e4900c8df461
child 239 7a1b0282ae3c
     1.1 --- a/rpm-razor.c	Mon Jun 09 22:41:37 2008 -0400
     1.2 +++ b/rpm-razor.c	Mon Jun 09 23:51:52 2008 -0400
     1.3 @@ -558,6 +558,7 @@
     1.4  		razor_transaction_install_package(trans, package);
     1.5  	razor_package_iterator_destroy(pi);
     1.6  
     1.7 +	razor_transaction_describe(trans);
     1.8  	next = razor_transaction_finish(trans);
     1.9  	razor_set_destroy(set);
    1.10  	razor_set_destroy(upstream);
    1.11 @@ -568,12 +569,34 @@
    1.12  static void
    1.13  command_update(int argc, const char *argv[])
    1.14  {
    1.15 +	struct razor_set *set, *upstream, *next;
    1.16 +	struct razor_transaction *trans;
    1.17 +	struct razor_package_iterator *pi;
    1.18 +	struct razor_package *package;
    1.19 +	const char *name, *version, *arch;
    1.20 +
    1.21  	if (argc == 0) {
    1.22  		printf("no packages given for update\n");
    1.23  		exit(1);
    1.24  	}
    1.25  
    1.26 -	printf("command update - not implemented\n");
    1.27 +	set = razor_set_open(repo_filename);
    1.28 +	upstream = create_set_from_command_line(argc, argv);
    1.29 +
    1.30 +	trans = razor_transaction_create(set, upstream);
    1.31 +
    1.32 +	pi = razor_package_iterator_create(upstream);
    1.33 +	while (razor_package_iterator_next(pi, &package,
    1.34 +					   &name, &version, &arch))
    1.35 +		razor_transaction_update_package(trans, package);
    1.36 +	razor_package_iterator_destroy(pi);
    1.37 +
    1.38 +	razor_transaction_describe(trans);
    1.39 +	next = razor_transaction_finish(trans);
    1.40 +	razor_set_destroy(set);
    1.41 +	razor_set_destroy(upstream);
    1.42 +
    1.43 +	razor_set_destroy(next);
    1.44  }
    1.45  
    1.46  static int