4
respostas

Arquivo de configuração do Tomcat

Boa noite, nessa etapa do curso de Vagrant fala para verificar os usuários criados no mysql, mas não consigo encontrar isso, me parece que o comando é select * from users, quando executo esse comando fala que a tabela não existe, e acho que tenho que acessar o mysql com o comando -u root musicjungle, não consigo entender a atividade. Outra coisa, o notify em:

file_line { "production":
    file => "/etc/default/tomcat7",
    line => "JAVA_OPTS=\"\$JAVA_OPTS -Dbr.com.caelum.vraptor.environment=production\"",
    require => Package["tomcat7"]
    #notify => Service["tomcat7"]

Não funciona de jeito nenhum, executei o puppet somente após comentar a linha. Alguém consegue me ajudar?

4 respostas

Oi, Leonardo, tudo bem?

Você poderia compartilhar seus arquivos do projeto pra testar? você viu que a plataforma lançou esse curso de Vagrant mais atual? https://cursos.alura.com.br/course/vagrant-gerenciando-maquinas-virtuais

Olá, Laís, eu achei que esse outro curso de Vagrant era uma continuação desse que estou fazendo. De toda forma vi que existiam erros de sintaxe e corrigi esses erros, mas ainda assim, o sql apresenta erro de tabela inexistente, o curso não aborda essa parte, nem explica sobre select e comandos dentro do mysql e eu não entendo nada de mysql. Os arquivos de vagrant e de puppet estão abaixo:

Vagrant.configure("2") do |config|
    config.vm.box = "hashicorp/precise32"
    config.vm.define :web do |web_config|
        #web_config.vm.network "forwarded_port", guest: 8080, host: 8081
        web_config.vm.network "private_network", ip: "192.168.56.10"
        web_config.vm.provision "shell", inline: "sudo apt-get update && sudo apt-get install -y puppet"
    end
end
exec { "apt-update":
  command => "/usr/bin/apt-get update"
}

package { ["openjdk-7-jre", "tomcat7", "mysql-server"]:
    ensure => installed,
    require => Exec["apt-update"]
}

service { "tomcat7":
    ensure => running,
    enable => true,
    hasstatus => true,
    hasrestart => true,
    require => Package["tomcat7"]    
}

file { "/var/lib/tomcat7/webapps/vraptor-musicjungle.war":
    source => "/vagrant/manifests/vraptor-musicjungle.war",
    owner => "tomcat7",
    group => "tomcat7",
    mode => 0644,
    require => Package["tomcat7"],
    notify => Service["tomcat7"]
}

service { "mysql":
    ensure => running,
    enable => true,
    hasstatus => true,
    hasrestart => true,
    require => Package["mysql-server"]    
}    

exec { "musicjungle":
  command => "mysqladmin -u root create musicjungle",
  unless => "mysql -u root musicjungle",
  path => "/usr/bin",
  require => Service["mysql"]
}

#exec { "mysql-password" :
  #  command => "mysql -uroot -e \"GRANT ALL PRIVILEGES ON * TO 'musicjungle'@'%' IDENTIFIED BY 'minha-senha';\" musicjungle",
   # unless  => "mysql -umusicjungle -pminha-senha musicjungle",
    #path => "/usr/bin",
    #require => Exec["musicjungle"]
#}

file_line { "production":
    file => "/etc/default/tomcat7",
    line => "JAVA_OPTS=\"\$JAVA_OPTS -Dbr.com.caelum.vraptor.environment=production\"",
    require => Package["tomcat7"],
    notify => Service["tomcat7"]
    }

define file_line($file, $line) {
    exec { "/bin/echo '$line' >> '$file'":
    unless => "/bin/grep -qfx '$(line)' '$(file)'"
        }
    }

Oi, Leonardo!

Posso te sugerir para fazer esse curso de Vagrant que linkei acima? Ele é mais direto no Vagrant, não mexe muito com mysql, tem a parte do puppet e é mais atual. Seria interessante você fazer esse, que tal?

Oi Laís, sim, aceito a sugestão, mas queria era terminar o curso que tinha começado, não quis prosseguir por não ter realizado a atividade como gostaria, mas acho que será melhor fazer o outro mesmo. Obrigado.