[2332] | 1 | #!/bin/bash
|
---|
| 2 |
|
---|
| 3 | # Demo script for pb
|
---|
| 4 |
|
---|
| 5 | demoprint () {
|
---|
| 6 | echo "$1"
|
---|
| 7 | read -n 1 -s -r -p ""
|
---|
| 8 | echo "\$ $2"
|
---|
| 9 | $2
|
---|
| 10 | echo ""
|
---|
| 11 | }
|
---|
| 12 |
|
---|
| 13 | demoprint "Print SVN info" "git svn info"
|
---|
| 14 | demoprint "Get the current version of project-builder" "rpm -q project-builder"
|
---|
| 15 | demoprint "Check with pb command itself" "pb --version"
|
---|
| 16 | demoprint "Online help for pb" "pb"
|
---|
| 17 |
|
---|
| 18 | # Start local build
|
---|
| 19 | demoprint "Build new packages locally and install them" "pb -p pb sbx2pkg2ins"
|
---|
| 20 | demoprint "Get the current version of project-builder" "rpm -q project-builder"
|
---|
| 21 | demoprint "Check with pb command itself" "pb --version"
|
---|
| 22 | demoprint "Look at local files generated" "ls -altr /home/bruno/svn-git/pb/pbdelivery/"
|
---|
| 23 | lastupstream=`ls -at /home/bruno/svn-git/pb/pbdelivery/project-builder-0*[0-9]*.tar.gz | tail -1`
|
---|
| 24 | demoprint "Content of the upstream tar file" "tar tvfz $lastupstream"
|
---|
| 25 | lastpbconf=`ls -at /home/bruno/svn-git/pb/pbdelivery/project-builder-0*[0-9]*.pbconf.tar.gz | tail -1`
|
---|
| 26 | demoprint "Content of the pbconf tar file" "tar tvfz $lastpbconf"
|
---|
| 27 |
|
---|
| 28 | # pb on pbgetparam - dir removed !!!
|
---|
| 29 |
|
---|
| 30 | demoprint "List of Docker images available for pb" "docker images"
|
---|
| 31 |
|
---|
| 32 | ### FEDORA ###
|
---|
| 33 | demoprint "Build pb for another distribution" "pb -p pb -m fedora-26-x86_64 -T docker sbx2ve"
|
---|
| 34 | demoprint "Look at what has been generated" "ls -altr /var/ftp/pub/pb/test/fedora/26/x86_64/"
|
---|
| 35 |
|
---|
| 36 | mkdir /tmp/$$
|
---|
| 37 | cd /tmp/$$
|
---|
| 38 | cat > /tmp/$$/Dockerfile << EOF
|
---|
| 39 | FROM pb:fedora-26-x86_64
|
---|
| 40 | RUN wget ftp://172.17.0.1/pub/pb/test/fedora/26/x86_64/pb-test.repo -O /etc/yum.repos.d/pb-test.repo
|
---|
| 41 | RUN perl -pi -e 's|ftp.project-builder.org|172.17.0.1/pub/pb|; s|gpgcheck=1|gpgcheck=0|' /etc/yum.repos.d/pb-test.repo
|
---|
| 42 | RUN dnf install -y project-builder
|
---|
| 43 | RUN pb --version
|
---|
| 44 | EOF
|
---|
| 45 | demoprint "Prepare test with the following Dockerfile" "cat /tmp/$$/Dockerfile"
|
---|
| 46 | docker rmi pb:fedora-26-x86_64-test
|
---|
| 47 | demoprint "Build the test Docker image " "docker build -t pb:fedora-26-x86_64-test ."
|
---|
| 48 | demoprint "Test the installation of pb in Docker" "docker run pb:fedora-26-x86_64-test /usr/bin/pbdistrocheck"
|
---|
| 49 |
|
---|
| 50 | ### CENTOS ###
|
---|
| 51 | #demoprint "Build pb for another distribution" "pb -p pb -m centos-7-x86_64 -T docker sbx2ve"
|
---|
| 52 | #demoprint "Look at what has been generated" "ls -altr /var/ftp/pub/pb/test/centos/7/x86_64/"
|
---|
| 53 |
|
---|
| 54 | cd /tmp/$$
|
---|
| 55 | cat > /tmp/$$/Dockerfile << EOF
|
---|
| 56 | FROM pb:centos-7-x86_64
|
---|
| 57 | RUN wget ftp://172.17.0.1/pub/pb/test/centos/7/x86_64/pb-test.repo -O /etc/yum.repos.d/pb-test.repo
|
---|
| 58 | RUN perl -pi -e 's|ftp.project-builder.org|172.17.0.1/pub/pb|; s|gpgcheck=1|gpgcheck=0|' /etc/yum.repos.d/pb-test.repo
|
---|
| 59 | RUN rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
|
---|
| 60 | RUN yum install -y project-builder
|
---|
| 61 | RUN pb --version
|
---|
| 62 | EOF
|
---|
| 63 | #demoprint "Prepare test with the following Dockerfile" "cat /tmp/$$/Dockerfile"
|
---|
| 64 | #docker rmi pb:centos-7-x86_64-test
|
---|
| 65 | #demoprint "Build the test Docker image " "docker build -t pb:centos-7-x86_64-test ."
|
---|
| 66 | #demoprint "Test the installation of pb in Docker" "docker run pb:centos-7-x86_64-test /usr/bin/pbdistrocheck"
|
---|
| 67 |
|
---|
| 68 | ### OPENSUSE ###
|
---|
| 69 | #demoprint "Build pb for another distribution" "pb -p pb -m opensuse-42.3-x86_64 -T docker sbx2ve"
|
---|
| 70 | #demoprint "Look at what has been generated" "ls -altr /var/ftp/pub/pb/test/opensuse/42.3/x86_64/"
|
---|
| 71 |
|
---|
| 72 | cd /tmp/$$
|
---|
| 73 | cat > /tmp/$$/Dockerfile << EOF
|
---|
| 74 | FROM pb:opensuse-42.3-x86_64
|
---|
| 75 | RUN wget ftp://172.17.0.1/pub/pb/test/opensuse/42.3/x86_64/pb-test.repo -O /etc/yum.repos.d/pb-test.repo
|
---|
| 76 | RUN perl -pi -e 's|ftp.project-builder.org|172.17.0.1/pub/pb|; s|gpgcheck=1|gpgcheck=0|' /etc/yum.repos.d/pb-test.repo
|
---|
| 77 | RUN /usr/bin/zypper refresh
|
---|
| 78 | RUN /usr/bin/zypper --gpg-auto-import-keys -n install --auto-agree-with-licenses -y project-builder
|
---|
| 79 | RUN pb --version
|
---|
| 80 | EOF
|
---|
| 81 | #demoprint "Prepare test with the following Dockerfile" "cat /tmp/$$/Dockerfile"
|
---|
| 82 | docker rmi pb:opensuse-42.3-x86_64-test
|
---|
| 83 | #demoprint "Build the test Docker image " "docker build -t pb:opensuse-42.3-x86_64-test ."
|
---|
| 84 | #demoprint "Test the installation of pb in Docker" "docker run pb:opensuse-42.3-x86_64-test /usr/bin/pbdistrocheck"
|
---|
| 85 |
|
---|
| 86 | ### DEBIAN ###
|
---|
| 87 | demoprint "Build pb for a deb based distribution" "pb -p pb -m debian-9-x86_64 -T docker sbx2ve"
|
---|
| 88 | demoprint "Look at what has been generated" "ls -altrR /var/ftp/pub/pb/test/debian/9/"
|
---|
| 89 |
|
---|
| 90 | cat > /tmp/$$/Dockerfile << EOF
|
---|
| 91 | FROM pb:debian-9-x86_64
|
---|
| 92 | RUN wget ftp://172.17.0.1/pub/pb/test/debian/9/pb-test.sources.list -O /etc/apt/sources.list.d/pb-test.sources.list
|
---|
| 93 | RUN perl -pi -e 's|ftp.project-builder.org|172.17.0.1/pub/pb|' /etc/apt/sources.list.d/pb-test.sources.list
|
---|
| 94 | RUN apt-get install -y gnupg
|
---|
| 95 | RUN wget -qO - ftp://172.17.0.1/pub/pb/test/debian/9/pb.pubkey | apt-key add -
|
---|
| 96 | RUN apt-get update
|
---|
| 97 | RUN apt-get install -y project-builder
|
---|
| 98 | RUN pb --version
|
---|
| 99 | EOF
|
---|
| 100 | demoprint "Prepare test with the following Dockerfile" "cat /tmp/$$/Dockerfile"
|
---|
| 101 | docker rmi pb:debian-9-x86_64-test
|
---|
| 102 | demoprint "Build the test Docker image " "docker build -t pb:debian-9-x86_64-test ."
|
---|
| 103 | demoprint "Test the installation of pb in Docker" "docker run pb:debian-9-x86_64-test /usr/bin/pbdistrocheck"
|
---|