Code Monkey home page Code Monkey logo

dockpulp's Introduction

Build Status

dockpulp

ReST API Client to Pulp for manipulating docker images

Installation

The only test installation is via RPM deployment, which presently is not integrated with the repository you just checked out. You will need to install tito and then run following command for building rpm package.

$ tito build --offline --rpm

Deployment will leave a file called /etc/dockpulp.conf, which how you configure the client for use with your Pulp, Crane, and CDN deployments. Read the comments in that file and make changes as necessary.

Use

dockpulp provides one command line tool that has several subcommands built into it. The command is dock-pulp. You must log into Pulp before any of the other commands will be useful. You do not need to be root for these commands; that is discouraged.

$ dock-pulp login [-u username] -p password

This will store a certificate and key pair in your ~/.pulp directory. For the next 7 days (or whatever the Pulp server is configured for) you will be able to run future dock-pulp commands without a username or password. When it expires (or you see a lot of 403s) just run it again. These pairs are environment-specific.

The default environment is qa. If you need to work in a different one, pass the --server option, which comes before the subcommand:

$ dock-pulp --server prod login [-u username] -p password

If you run dock-pulp by itself you will get an overview of all of the subcommands. Each subcommand supports a --help option that explains options to the subcommands. The changes you make could be copying an image from one repo to another, deleting a repo, uploading an image, tagging them, creating a new repository or updating the metadata of an existing one. Once all of your changes are done though, the last command you will run to make them live will be something like this:

$ dock-pulp release

This will tell Pulp to publish configuration details to Crane, making them live for the environment you are working with. If you uploaded images to Pulp, you still need to put them in the corresponding CDN environment in their newly-imported format.

Examples

List all repositories and the images they contain

$ dock-pulp list -c

Tag an image with a few tags. This will override any existing tags for that image.

$ dock-pulp tag redhat-rhel6-rhel abc123 latest,6.6-5

Upload an image

$ dock-pulp upload some-image.tar.gz redhat-rhel7-rhel

If you ever need to troubleshoot or investigate a bug, use the --debug option, which comes before the subcommand. You will see the interactions with the Pulp REST API.

$ dock-pulp --debug update --description 'RHEL 7 Images'

Other Commands

dockpulp also provides dock-pulp-bootstrap and dock-pulp-restore which are special case commands few should have access to or need. The first creates a redhat-everything repository, which is where all uploads are kept. That way if anyone accidentally deletes an image, it can easily be restored from that repository, much like a recycle bin. The restore command is used in conjunction with the json subcommand from dock-pulp, which facilitates "cloning" the configuration of one Pulp-Crane stack in an environment to another.

dockpulp's People

Contributors

breillyr avatar twaugh avatar midnightercz avatar tomastomecek avatar emilyzheng avatar lkolacek avatar pbabinca avatar lcarva avatar vrutkovs avatar michalhaluza avatar mmilata avatar querti avatar bkabrda avatar rbikar avatar amisstea avatar neithere avatar bfontecc007 avatar linglingxiang avatar mlangsdorf avatar rohanpm avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.