github.com/niedbalski/juju@v0.0.0-20190215020005-8ff100488e47/acceptancetests/repository/xenial/jenkins-slave/hooks/upgrade-charm (about)

     1  #!/bin/bash
     2  
     3  set -eux
     4  
     5  
     6  # Install the slave if it is not installed already.
     7  install_slave () {
     8      juju-log "Installing jenkins-slave..."
     9      if [[ ! -f /etc/init/jenkins-slave.conf ]]
    10      then
    11          if [[ $(apt-cache madison jenkins-slave) =~ .*jenkins-slave.* ]]
    12          then
    13              apt-get -y install -qq jenkins-slave wget
    14          else
    15              # This series doesn't provide a jenkins.
    16              # Install the same slave package as the precise Jenkins master.
    17              apt-get -y install -qq wget adduser default-jre-headless upstart-job
    18              dpkg -i files/jenkins-slave_*.deb
    19          fi
    20      else
    21          juju-log "Jenkins-slave is already installed"
    22      fi
    23  }
    24  
    25  
    26  # Install extra packages needed by the slave.
    27  install_tools () {
    28      juju-log "Installing tools..."
    29      apt-get -y install -qq $(config-get tools)
    30  }
    31  
    32  
    33  # Execute any hook overlay which may be provided
    34  # by forks of this charm.
    35  install_extra_hooks () {
    36      juju-log "Installing hooks..."
    37      if [[ -d hooks/install.d ]]
    38      then
    39          for i in $(ls -1 hooks/install.d/*)
    40          do
    41              if [[ -x $i ]]
    42              then
    43                  source ./$i
    44              fi
    45          done
    46      else
    47          juju-log "No extra hooks found."
    48      fi
    49  }
    50  
    51  
    52  install_slave
    53  install_tools
    54  install_extra_hooks
    55  exit 0