Um repositório modelo para aplicações Java, utilizando:
- Maven Release Plugin
- Travis, com release em Github
- Codecov
- Sonarqube
- JUnit 5
O artefato final deste projeto é um archetype maven, que pode ser utilizado na criação de novos projetos ou outras ferramentas similares.
O Archetype está disponível no repositório Central (via OSSRH), portanto, crie seu projeto normalmente utilizando o maven. Exemplo:
mvn archetype:generate \
-DarchetypeGroupId=br.com.miguelfontes \
-DarchetypeArtifactId=java-tooling-template-archetype \
-DgroupId=br.com.miguelfontes \
-DartifactId=meu-projeto \
-DgithubUser=Miguel-Fontes \
-Dversion=1.0-SNAPSHOT \
-DinteractiveMode=false
O projeto irá considerar que o repositório da aplicação é <githubUser>/<DartifactId>
(Ex: Miguel-Fontes/meu-projeto). Se o repositório possuir outro nome, ajuste o pom.xml
, na seção <scm>
. Feito isto, faça o commit inicial com o push para o Github.
Para que o Travis consiga fazer o deploy no Github releases, é necessário configurar uma variável de ambiente nomeada GITHUB_OAUTH_TOKEN, cujo valor será o TOKEN do Github com os acessos adequados para efetuar o deploy. Veja como criar um Token na documentação oficial, além de como efetuar esta configuração através do Travis CLI, se preferir.
Para projetos open source, o Sonar Cloud é gratuito Cada build executado no Travis irá encaminhar os novos dados para à plataforma.
Para configurar este comportamento, é necessário acessar o Sonar Cloud e configurá-lo para sua conta do Github, obtendo um novo token e nome de organização, veja mais no Get Started. Feito isto, é necessário configurar estes valores como variáveis de ambiente no Travis, por segurança. Acesse a configuração de variáveis de ambiente do travis e crie:
- SONARQUBE_TOKEN: com o valor do token;
- SONARQUBE_ORGANIZATION: com o nome da organização;
A configuração final no Travis, deverá ficar como:
No arquivo LICENSE procure pela String YOUR_NAME e altere por seu nome completo. DONE!
O ponto central das ferramentas é o Travis, que irá enviar dados sempre que um build for bem sucedido.
Irá interceptar toda mudança no repositório e efetuar o build.
<TBD informações sobre a configuração>
Acessível via Sonar Cloud, receberá dados após o build bem sucedido do travis.
Basta acessar o codecov e visualizar o seu repositório. O endereço é https://codecov.io/gh/<usuario-github>/<nome-repositorio>
.