pcp
[Top] [All Lists]

pcp updates: Makepkgs --with-containers and associated build infrastruc

To: pcp <pcp@xxxxxxxxxxx>
Subject: pcp updates: Makepkgs --with-containers and associated build infrastructure
From: Mark Goodwin <mgoodwin@xxxxxxxxxx>
Date: Fri, 19 Jun 2015 17:12:44 +1000
Delivered-to: pcp@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0
Changes committed to git://git.pcp.io/markgw/pcp/pcp.git master

commit 260a7fb274b28bc71c43138685cce1a426f0f417
Author: Mark Goodwin <mgoodwin@xxxxxxxxxx>
Date:   Fri Jun 19 16:39:20 2015 +1000

    build: Makepkgs --with-containers for platforms with RPM and docker.

    Infrustructure to build container images using Makepkgs --with-containers
    The default and install targets now descend into build/containers for any
    prep (currently none but that may change in the future). The pack_pcp
    target will build and package RPMs and then descend into build/containers
    to build the pcp containers using the RPM packages built from build/rpm.
    A simple dnf (aka yum) repo is constructed for the RPM packages in the
    pcp-base container (/tmp/RPMS in the container). Because all other PCP
    containers are layered on the pcp-base container, this repo is available
    to install additional PCP packages. This is especially important for the
    pcp-collector container where users can run the following to login to the
    running container:  docker exec -it pcp-collector /bin/bash -l
    and install additional PMDA packages, ./Install additional/optional PMDAs
    or perform other PCP administrative tasks. The pcp-devel repo is not enabled
    by default. Use e.g. : dnf --enable-repo=pcp-devel install pcp-somepmda
    If you don't enable the pcp-devel repo, you fall-back to the standard
    fedora:latest repo (curently f22 and f22-updates), which may be what you
    want anyway.

    Note that the containers build requires access to the docker daemon's unix
    domain socket. This is only permitted by default to the root user. You
    can edit /etc/sysconfig/docker and specify OPTIONS="-g groupname" to allow
    users in the group 'groupname' access to the docker server. Pick a group 
that
    you are a member of. There are checks in the Makepkgs script for sufficient
    docker server access. The --with-containers build will fail of those checks
    do not succeed. Obviously the docker service will need to be enabled and
    started for this to work too.

    Finally - there is still no cron service for the pmlogger-daily scripts
    et al. THis is still work in progress - will probably implement this with
    another container based on crond, using docker exec to run the scripts.

        modified:   Makepkgs
        modified:   build/GNUmakefile
        modified:   build/containers/GNUlocalrules
        modified:   build/containers/GNUmakefile
        modified:   build/containers/pcp-base/Dockerfile
        modified:   build/containers/pcp-base/GNUmakefile
        modified:   build/containers/pcp-collector/Dockerfile
        modified:   build/containers/pcp-collector/GNUmakefile
        modified:   build/containers/pcp-monitor/Dockerfile
        modified:   build/containers/pcp-monitor/GNUmakefile
        modified:   build/containers/pcp-pmlogger/Dockerfile
        modified:   build/containers/pcp-pmlogger/GNUmakefile
        modified:   build/containers/pcp-testsuite/Dockerfile
        modified:   build/containers/pcp-testsuite/GNUmakefile



<Prev in Thread] Current Thread [Next in Thread>