Mailinglist Archive: opensuse-project (539 mails)

< Previous Next >
Re: [opensuse-project] GSOC Idea: Command line client for SSC
  • From: Ratan Sebastian <ratanjagan@xxxxxxxxx>
  • Date: Thu, 24 Mar 2011 11:22:12 +0530
  • Message-id: <AANLkTinLpBgNXkR4HaMQXFjuy2PVuai=c4ZetLoqME9P@mail.gmail.com>
Here's some of the commands the client would have. I had a look at osc
and the Studio API in coming up with this. Let me know what you think.

Templates:
template list

Appliances:
appliance list
appliance status <id>
appliance create [--clone_from=appliance_name --arch=x86_64/i686]
[name] # Creates a local directory with a manifest that stores
apppliance id and other changes that have been made locally and not
committed
appliance delete <id>

Repositories:
repository list <search_string> --base-system=
repository add <name> <url>
repository remove <id>

Packages(Software):
package list # lists all repositories in the current appliance with
the appliance ID from the manifest file.
package add <name> --version --repository-id
package remove <name>
package search <search string> --all-fields --all-repos

Files:
file list
file add [local_path|url] [remote_path] --owner=user --group=user
--permissions=-rwxr-xr-x
# copies the file to the appliance directory for future edits and for
comparing against the file on the server
file diff [path]
file update [path] # update the local file with corresponding file on the server
file remove [path]

Builds:
build list [running|finished]
build status <id>
build start
build cancel <id>
build delete <id>

General Commands:

commit [files|packages|repositories|all] [--cherry-pick] # The cherry
pick option gives you more control over what changes you're pushing to
server.
checkout # update the local files packages and repository from the server
status # show changes in packages/files/repos waiting for commit


All PUT, POST and DELETE requests are not done until the commit command is run.
I think the existing client has to be mostly rewritten. Some of the
required gems are not actively maintained and don't work under Ruby
1.9(xml-smart). We can use thor to handle the command line option
parsing. And the studio_api gem to handle the requests.

On Tue, Mar 22, 2011 at 10:56 PM, Cornelius Schumacher <cschum@xxxxxxx> wrote:
On Tuesday 22 March 2011 14:19:27 Ratan Sebastian wrote:

I'd like to work on the improvement of the Suse Studio command line
client(ssc) idea for GSOC this year. I've gone through the current ssc
code but found no documentation on it. Is there someone here I can
talk to who has worked on it and would know what is lacking. It would
help me formulate a detailed project proposal.

You can find more information here:
http://en.opensuse.org/openSUSE:SUSE_Studio_command_line_client

You can also join us on IRC in the #susestudio channel, or use the mailing
list studio-users@xxxxxxx to reach the team and the community.

As I see it I'd first write a wrapper for the suse studio
api(http://susestudio.com/help/api/v1) and a command like client to
use the wrapper. It would be a good idea to separate the two so that
the wrapper can be used programatically as well.

There already is a library to access the Studio API at
https://github.com/jreidinger/studio_api.

--
Cornelius Schumacher <cschum@xxxxxxx>
--
To unsubscribe, e-mail: opensuse-project+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-project+help@xxxxxxxxxxxx





--
Ratan Sebastian
--
To unsubscribe, e-mail: opensuse-project+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-project+help@xxxxxxxxxxxx

< Previous Next >